Тақырып 5. ДЕРЕКТЕР ҚОРЛАРЫНЫҢ ЖҮЙЕЛЕРІ
Жоспар:
1. Деректер қорлары жүйелерінің негіздері: ұғымы, сипаттамасы, архитектурасы.
2. Деректер модельдері. Қалыпқа келтіру. Деректердің тұтастығын шектеу.
3. Сұраныстарды тиімділеу және оларды өңдеу.
4. SQL негіздері. Деректерді параллель өңдеу және оларды қалпына келтіру.
5. Деректер қорын жобалау және құру.
6. ORM бағдарламалау технологиясы.
7. Үлестірілген, параллельді және гетерогенді деректер базасы.
Деректер базасы жүйелерінің негіздері: тұжырымдамасы, сипаттамасы, архитектурасы Дерекқорлар және деректер базасының технологиясы деректерге үлкен әсер етеді.
Мәліметтер базасы компьютерлер қолданылатын барлық дерлік салаларда, соның ішінде бизнес, электронды коммерция, инженерия, медицина, заң, білім және кітапхана ісі саласында маңызды рөл атқарады деп айту орынды.
Мәліметтер базасы - бұл өзара байланысты деректер жиынтығы. Деректер деп біз жазылуға болатын және жасырын мағынаға ие белгілі фактілерді айтамыз. Мысалы, сіз білетін адамдардың аты-жөнін, телефон нөмірлерін және мекенжайларын қарастырыңыз. Бұл жасырын мағынасы бар байланысты деректер жинағы, демек, дерекқор.
Мәліметтер қорының келесі жасырын қасиеттері бар:
· дерекқор нақты әлемнің кейбір аспектілерін білдіреді, кейде шағын әлем немесе дискурс әлемі (DoD) деп аталады. Шағын әлемге енгізілген өзгерістер дерекқорда көрсетіледі;
· Мәліметтер қоры – қандай да бір өзіне тән мағынасы бар мәліметтердің логикалық үйлесімді жиынтығы. Деректердің кездейсоқ ассортиментін дерекқор деп дұрыс атауға болмайды;
· мәліметтер базасы белгілі бір мақсат үшін жобаланады, құрастырылады және деректермен толтырылады. Онда пайдаланушылардың мақсатты тобы және осы пайдаланушыларды қызықтыратын кейбір алдын ала ойластырылған қолданбалар бар.
Мәліметтер қоры кез келген көлемде және әртүрлі күрделілікте болуы мүмкін.
Деректер базасы қолмен жасалуы және жүргізілуі мүмкін немесе ол компьютерлендірілген болуы мүмкін. Компьютерлендірілген деректер базасы осы тапсырма үшін арнайы жазылған қолданбалы бағдарламалар тобымен немесе дерекқорды басқару жүйесімен құрылуы және жүргізілуі мүмкін.
Мәліметтер қорын басқару жүйесі (ДҚБЖ) – пайдаланушыларға мәліметтер қорын құруға және жүргізуге мүмкіндік беретін бағдарламалар жиынтығы. Демек, ДҚБЖ әртүрлі пайдаланушылар мен қолданбалар арасында дерекқорларды анықтау, құру, өңдеу және ортақ пайдалану процестерін жеңілдететін жалпы мақсаттағы бағдарламалық жүйе болып табылады. Дерекқорды анықтау деректер түрлерін, құрылымдарын және дерекқорда сақталатын деректерге арналған шектеулерді көрсетуді қамтиды. Мәліметтер қорын құру - бұл ДҚБЖ басқаратын кейбір сақтау құралдарында деректердің өзін сақтау процесі. Дерекқорды өңдеу нақты деректерді алу үшін дерекқорды сұрау, шағын әлемдегі өзгерістерді көрсету үшін дерекқорды жаңарту және деректерден есептерді жасау сияқты функцияларды қамтиды. Дерекқорды ортақ пайдалану бірнеше пайдаланушылар мен бағдарламаларға дерекқорға бір уақытта қол жеткізуге мүмкіндік береді.
ДҚБЖ қамтамасыз ететін басқа маңызды функцияларға деректер қорын қорғау және оны ұзақ уақыт бойы қолдау кіреді. Қорғау аппараттық құралдың немесе бағдарламалық құралдың ақаулығынан (немесе бұзылуларынан) жүйені қорғауды және рұқсатсыз немесе зиянды қол жеткізуден қауіпсіздікті қорғауды қамтиды. Әдеттегі үлкен деректер қорының өмірлік циклі көп жылдар болуы мүмкін, сондықтан ДҚБЖ мүмкіндігі болуы керек
Бастапқы анықтамаларымызды аяқтау үшін біз дерекқор мен ДҚБЖ бағдарламалық құралын бірге дерекқор жүйесі деп атаймыз.
Мәліметтер қоры тәсілінің негізгі сипаттамасы мәліметтер қорының жүйесінде тек дерекқордың өзі ғана емес, сонымен қатар мәліметтер қоры құрылымы мен шектеулерінің толық анықтамасы немесе сипаттамасы бар. Бұл анықтама әрбір файлдың құрылымы, әрбір деректер элементінің түрі мен сақтау пішімі және деректерге әртүрлі шектеулер сияқты ақпаратты қамтитын ДҚБЖ каталогында сақталады. Каталогта сақталатын ақпарат метадеректер деп аталады және ол бастапқы мәліметтер қорының құрылымын сипаттайды.
ДҚБЖ пакеттерінің архитектурасы барлық ДҚБЖ бағдарламалық пакеті бір тығыз біріктірілген жүйе болатын ертедегі монолитті жүйелерден клиент/сервер жүйесінің архитектурасы бар модульдік дизайндағы заманауи ДҚБЖ пакеттеріне дейін дамыды.
Негізгі клиент/сервер ДҚБЖ архитектурасында жүйенің функционалдығы модульдердің екі түрі арасында таратылады. Клиенттік модуль әдетте пайдаланушының жұмыс станциясында немесе дербес компьютерде жұмыс істейтіндей етіп жасалған. Әдетте, дерекқорға қатынасатын қолданбалы бағдарламалар мен пайдаланушы интерфейстері клиенттік модульде жұмыс істейді. Клиенттік модуль пайдаланушының өзара әрекеттесуін өңдейді және пішіндер немесе мәзір негізіндегі GUI (Графикалық пайдаланушы интерфейстері) сияқты пайдаланушыға ыңғайлы интерфейстерді қамтамасыз етеді. Сервер модулі деп аталатын модульдің басқа түрі әдетте деректерді сақтауды, қол жеткізуді, іздеуді және басқа функцияларды өңдейді.
Үш схемалық архитектураның мақсаты пайдаланушы қолданбалары мен физикалық деректер қорын бөлу болып табылады. Бұл архитектурада схемаларды келесі үш деңгейде анықтауға болады.
1. Ішкі деңгейде мәліметтер қорының физикалық сақтау құрылымын сипаттайтын ішкі схемасы бар. Ішкі схема деректердің физикалық үлгісін пайдаланады және деректерді сақтау және дерекқорға кіру жолдарының толық мәліметтерін сипаттайды.
2. Тұжырымдама деңгейінде пайдаланушылар қауымдастығы үшін бүкіл деректер қорының құрылымын сипаттайтын концептуалды схемасы бар. Концептуалды схема физикалық сақтау құрылымдарының мәліметтерін жасырады және нысандарды, деректер түрлерін, қатынастарды, пайдаланушы әрекеттерін және шектеулерді сипаттауға шоғырланады. Әдетте дерекқор жүйесі енгізілген кезде концептуалды схеманы сипаттау үшін репрезентативті деректер моделі пайдаланылады. Бұл іске асыру тұжырымдамалық схемасы көбінесе жоғары деңгейлі деректер үлгісіндегі тұжырымдамалық схемаға негізделеді.
3. Сыртқы немесе көрініс деңгейі бірқатар сыртқы схемаларды немесе пайдаланушы көріністерін қамтиды. Әрбір сыртқы схема белгілі бір пайдаланушы тобын қызықтыратын дерекқор бөлігін сипаттайды және сол пайдаланушы тобынан дерекқордың қалған бөлігін жасырады.
Үш схемалы архитектура – пайдаланушы дерекқор жүйесіндегі схема деңгейлерін визуализациялай алатын ыңғайлы құрал.
Уақыт өте келе талаптардың өзгеруіне қарай жүйенің дамуына мүмкіндік беру арқылы деректер қоры жүйесін қолдау
Деректер үлгілері
Деректер моделі - бұл дерекқордың құрылымын сипаттау үшін қолданылатын ұғымдар жиынтығы - бұл абстракцияға жету үшін қажетті құралдарды қамтамасыз етеді.
Мәліметтер қорының құрылымы деп біз деректер үшін сақталуы тиіс деректер түрлерін, қатынастарды және шектеулерді түсінеміз. Деректер үлгілерінің көпшілігі дерекқордағы іздеулер мен жаңартуларды көрсетуге арналған негізгі әрекеттер жинағын да қамтиды.
Мәліметтер қорының жалпы логикалық деректер үлгілеріне мыналар жатады:
· мәліметтер қорының иерархиялық моделі;
· желілік модель;
· қатынас моделі;
· реляциядан кейінгі мәліметтер базасының модельдері; өлшемді модель; объектілік модель.
Иерархиялық модель. Бұл модельдер 1960, 1970 жылдары танымал болды, бірақ қазіргі уақытта оларды ең алдымен ескі жүйеде табуға болады. Иерархиялық үлгіде деректер әрбір жазба үшін жалғыз ата-ананы білдіретін ағаш тәрізді құрылымға ұйымдастырылады. Сұрыптау өрісі атаулы жазбаларды белгілі бір ретпен сақтайды. Иерархиялық құрылымдар IBM фирмасының Ақпаратты басқару жүйесі (IMS) сияқты алғашқы негізгі фреймдік дерекқорды басқару жүйелерінде кеңінен қолданылды және қазір XML құжаттарының құрылымын сипаттайды. Бұл құрылым деректердің екі түрі арасындағы бір-бірден көп қатынасқа мүмкіндік береді. Бұл құрылым нақты әлемдегі көптеген қатынастарды сипаттау үшін өте тиімді.
Желі режимі иерархиялық құрылымды кеңейтіп, бірнеше ата-анаға мүмкіндік беретін ағаш тәрізді құрылымда көптен көпке қатынасқа мүмкіндік береді. Ол реляциялық модельмен ауыстырылғанға дейін ең танымал болды.
Желі моделі жазбалар мен жиындар деп аталатын екі іргелі ұғымды пайдаланып деректерді ұйымдастырады. Жазбаларда өрістер бар. Жиындар жазбалар арасындағы "бірден көпке" қатынасты анықтайды: бір ие, көп мүше. Жазба жиынтықтардың кез келген санының иесі және жиындардың кез келген санының мүшесі болуы мүмкін.
Жиын дөңгелек байланыстырылған тізімдерден тұрады, онда бір жазба түрі, жиын иесі немесе ата-анасы әр шеңберде бір рет пайда болады, ал екінші жазба түрі, бағынушы немесе еншілес әр шеңберде бірнеше рет пайда болуы мүмкін. Осылайша, барлық жиынтықтар жалпы бағытталған графикті (меншік бағытын анықтайды) немесе желі құрылымын қамтиды. Жазбаларға қол жеткізу дәйекті (әдетте әрбір жазба түрінде) немесе айналмалы байланыстырылған тізімдерде шарлау арқылы.
Желілік модель иерархиялық үлгіге қарағанда деректердегі артықшылықты тиімдірек көрсете алады және аталық түйіннен ұрпаққа бір жолдан көп болуы мүмкін. Желі моделінің әрекеттері стильде шарлау болып табылады: бағдарлама ағымдағы орынды сақтайды және жазба қатысатын қатынастарды орындау арқылы бір жазбадан екіншісіне жылжиды. Жазбаларды негізгі мәндерді беру арқылы да табуға болады.
Реляциялық модельді 1970 жылы Э.Ф.Кодд енгізді. Бұл предикаттық логика және жиындар теориясы тұрғысынан анықталған математикалық модель және оны жүзеге асыратын жүйелер негізгі, орта және микрокомпьютерлік жүйелерде қолданылған.
Реляциялық дерекқор үлгілерінде үш негізгі термин кеңінен қолданылады: қатынастар, атрибуттар және домендер. Қатынас – бағандары мен жолдары бар кесте. Қатынастың аталған бағандары атрибуттар деп аталады, ал домен атрибуттар қабылдауға рұқсат етілген мәндер жиыны болып табылады.
Реляциялық модельдің негізгі деректер құрылымы кесте болып табылады, мұнда белгілі бір нысан туралы ақпарат жолдар мен бағандарда көрсетіледі. Сонымен, «реляциялық деректер базасындағы» «қатысы» деректер қорындағы әртүрлі кестелерге қатысты; қатынас – кортеждер жиыны. Бағандар нысанның әртүрлі атрибуттарын санайды, ал жол қатынас арқылы көрсетілген нысанның нақты данасы болып табылады. Нәтижесінде қызметкерлер кестесінің әрбір кортежі бір қызметкердің әртүрлі атрибуттарын көрсетеді.
Реляциялық дерекқордағы барлық қатынастар (және, осылайша, кестелер) қатынастар ретінде квалификациялау үшін кейбір негізгі ережелерді сақтауы керек. Біріншіден, кестеде бағандардың реті маңызды емес. Екіншіден, кестеде бірдей кортеждер немесе жолдар болуы мүмкін емес. Үшіншіден, әрбір кортежде оның әрбір атрибуттары үшін бір мән болады.
Реляциялық дерекқорда әрқайсысы «жалпақ» дерекқор үлгісіндегіге ұқсас бірнеше кестелер бар. Реляциялық модельдің күшті жақтарының бірі, негізінен, екі түрлі жазбада (бір кестеге немесе әртүрлі кестелерге жататын) кездесетін кез келген мән осы екі жазба арасындағы қатынасты білдіреді. Дегенмен, нақты тұтастық шектеулерін енгізу үшін жазбалар арасындағы қатынастар
Кестелер сонымен қатар негізгілік (1:1, (0)1:М, М:М) тағайындаумен сипатталатын атаана мен бала қарым-қатынасын анықтау немесе анықтау арқылы анық анықталуы мүмкін. Кестелерде сондай-ақ кестедегі әрбір кортежді бірегей анықтау үшін пайдалануға болатын «кілт» ретінде әрекет ете алатын тағайындалған жалғыз атрибут немесе атрибуттар жиыны болуы мүмкін.
Кестедегі жолды бірегей анықтау үшін пайдалануға болатын кілт негізгі кілт деп аталады. Кілттер әдетте екі немесе одан да көп кестелердегі деректерді біріктіру немесе біріктіру үшін қолданылады.
Өлшемдік модель деректер қоймаларындағы деректерді онлайн аналитикалық өңдеу немесе OLAP сұраулары арқылы оңай қорытындылауға болатындай етіп көрсету үшін пайдаланылатын реляциялық модельдің мамандандырылған бейімделуі болып табылады. Өлшемдік үлгіде дерекқор схемасы өлшемдер мен өлшемдерді қолдану арқылы сипатталған фактілердің жалғыз үлкен кестесінен тұрады. Өлшем фактінің мәтінмәнін қамтамасыз етеді (мысалы, кім қатысты, оның қашан және қайда болғаны және оның түрі) және қатысты фактілерді біріктіру үшін сұрауларда пайдаланылады. Өлшемдер дискретті және жиі иерархиялық болады; мысалы, орын ғимаратты, штатты және елді қамтуы мүмкін. Өлшем – фактіні сипаттайтын шама, мысалы, кіріс. Өлшемдерді мағыналы түрде біріктіру маңызды, мысалы, әртүрлі орындардан түскен кірісті бірге қосуға болады.
Деректер қоймасында өлшем кестелерін ортақ пайдалануға мүмкіндік беретін бірнеше өлшемді схемалар болуы мүмкін. Өлшемдердің стандартты жиынтығын ойлап табу өлшемді модельдеудің маңызды бөлігі болып табылады.
Реляциялық үлгіге қарағанда жалпы деректер үлгісін ұсынатын өнімдер кейде байланыстан кейінгі болып жіктеледі. Реляциялық үлгіге осы кеңейтімдердің кейбіреулері реляциялық модельге дейінгі технологиялардың тұжырымдамаларын біріктіреді. Кейбір постреляциялық өнімдер реляциялық емес ерекшеліктері бар реляциялық жүйелерді кеңейтеді. Басқалары реляцияға дейінгі жүйелерге реляциялық мүмкіндіктерді қосу арқылы бірдей жерге келді.
1990 жылдары дерекқор технологиясына объектілі-бағытталған бағдарламалау парадигмасы қолданылып, объектінің дерекқорлары деп аталатын жаңа дерекқор үлгісін жасады. Бұл объектілік реляциялық кедергінің сәйкессіздігін болдырмауға бағытталған - оның дерекқордағы көрінісі (мысалы, кестелердегі жолдар ретінде) және қолданбалы бағдарламадағы (әдетте нысандар ретінде) көрсетілімі арасындағы ақпаратты түрлендіруге арналған қосымша шығындар.
Схеманы жобалаудың бір мақсаты - негізгі қатынастар (және сәйкес файлдар) пайдаланатын сақтау кеңістігін азайту. Атрибуттарды қатынас схемаларына топтау сақтау кеңістігіне айтарлықтай әсер етеді.
Аномалиялардың үш түрі бар: кірістіру аномалиялары, жою аномалиялары және модификация аномалиялары.
Реляциялық схемаларды жобалау теориясындағы ең маңызды жалғыз тұжырымдама функционалдық тәуелділік болып табылады. Функционалдық тәуелділік - бұл дерекқордағы атрибуттардың екі жиыны арасындағы шектеу.
Әрбір қатынас үшін функционалдық тәуелділіктердің жиынтығы берілген және әрбір қатынаста тағайындалған бастапқы кілт бар деп есептейміз; бұл ақпарат қалыпты пішіндерге арналған сынақтармен (шарттармен) біріктірілген реляциялық схеманы жобалау үшін қалыпқа келтіру процесін басқарады.
Нормалау процесі, бірінші рет Кодд (1972) ұсынғандай, белгілі бір қалыпты пішінді қанағаттандыратынын «сертификаттау» үшін бірқатар сынақтар арқылы қатынас схемасын алады. Әрбір қатынасты қалыпты формалар критерийлеріне сәйкес бағалау және қажет болған жағдайда қатынастарды ыдырату арқылы жоғарыдан төмен қарай жүретін процесті талдау арқылы қатынасты жобалау ретінде қарастыруға болады. Бастапқыда Кодд үш қалыпты форманы ұсынды, ол оны бірінші, екінші және үшінші қалыпты форма деп атады. Бойс-Кодд қалыпты формасы (BCNF) деп аталатын 3NF-нің күштірек анықтамасын кейінірек Бойс пен Кодд ұсынған. Бұл қалыпты формалардың барлығы қатынастың атрибуттары арасындағы функционалдық тәуелділіктерге негізделген. Кейінірек көп мәнді тәуелділіктер және біріктіру тәуелділіктері тұжырымдамаларына негізделген төртінші қалыпты пішін (4NF) және бесінші қалыпты пішін (5NF) ұсынылды.
Деректерді қалыпқа келтіруді артықшылықты азайту және кірістіру, жою және жаңарту ауытқуларын азайтудың қалаған қасиеттеріне қол жеткізу үшін олардың FD және бастапқы кілттері негізінде берілген қатынас схемаларын талдау процесі ретінде қарастыруға болады. Деректерді параллельді өңдеу және оларды қалпына келтіру
Транзакция - бұл «тұтас» ретінде қарастырғыңыз келетін жұмыс бірлігі. Ол не толық болуы керек, не мүлде болмауы керек.
Классикалық мысал - ақшаны бір банктік шоттан екіншісіне аудару. Ол үшін алдымен бастапқы шоттан соманы алу керек, содан кейін оны тағайындалған шотқа салу керек. Операция толығымен сәтті өтуі керек. Жарты жолда тоқтасаңыз, ақша жоғалады, бұл өте жаман. Транзакциядағы барлық SQL мәлімдемелерінің әсерлері не барлығы орындалды (деректер базасына қолданылады) немесе барлығы кері қайтарылады (қайтарылған дерекқор).
SQL негіздері
Реляциялық модельде қолданылатын ең көп таралған сұрау тілі құрылымдық сұраныс тілі (SQL) болып табылады. SQL барлық негізгі платформаларда реляциялық дерекқорларды жасау және өңдеу үшін қолданылатын әдістерді анықтайды.
SQL пәрмендерін екі негізгі ішкі тілге бөлуге болады. Деректерді анықтау тілі (DDL) дерекқорлар мен дерекқор нысандарын жасау және жою үшін пайдаланылатын пәрмендерді қамтиды. Дерекқор құрылымы DDL көмегімен анықталғаннан кейін дерекқор әкімшілері мен пайдаланушылары оның ішіндегі деректерді кірістіру, шығарып алу және өзгерту үшін Деректерді өңдеу тілін пайдалана алады.
Деректерді анықтау тілі (DDL) дерекқорлар мен дерекқор нысандарын жасау және жою үшін қолданылады.
Транзакциялар әдетте ACID деп аталатын төрт қасиетке ие:
· Атомдық (егер өзгеріс жасалса, ол бір соққымен болады; сіз ешқашан «жарты өзгерісті» көре алмайсыз);
· Консистенциялы (өзгеріс жүйенің жаңа күйі жарамды болған жағдайда ғана болады; жарамсыз өзгертуге кез келген әрекет сәтсіз аяқталып, жүйе бұрынғы жарамды күйінде қалады);
· Оқшауланған (мәміле жасалғанға дейін басқа ешкім оны көрмейді);
· Төзімді (өзгеріс болғаннан кейін – жүйе транзакция жасалғанын айтса, клиент өзгерісті «жабыстыру» үшін жүйені «шаю» туралы алаңдамауы керек).
Деректер моделі - бұл дерекқордың құрылымын сипаттау үшін қолданылатын ұғымдар жиынтығы - бұл абстракцияға жету үшін қажетті құралдарды қамтамасыз етеді.
Мәліметтер қорының құрылымы деп біз деректер үшін сақталуы тиіс деректер түрлерін, қатынастарды және шектеулерді түсінеміз. Деректер үлгілерінің көпшілігі дерекқордағы іздеулер мен жаңартуларды көрсетуге арналған негізгі әрекеттер жинағын да қамтиды.
Мәліметтер қорының жалпы логикалық деректер үлгілеріне мыналар жатады:
· мәліметтер қорының иерархиялық моделі;
· желілік модель;
· қатынас моделі;
· реляциядан кейінгі мәліметтер базасының модельдері; өлшемді модель; объектілік модель.
Иерархиялық модель. Бұл модельдер 1960, 1970 жылдары танымал болды, бірақ қазіргі уақытта оларды ең алдымен ескі жүйеде табуға болады. Иерархиялық үлгіде деректер әрбір жазба үшін жалғыз ата-ананы білдіретін ағаш тәрізді құрылымға ұйымдастырылады. Сұрыптау өрісі атаулы жазбаларды белгілі бір ретпен сақтайды. Иерархиялық құрылымдар IBM фирмасының Ақпаратты басқару жүйесі (IMS) сияқты алғашқы негізгі фреймдік дерекқорды басқару жүйелерінде кеңінен қолданылды және қазір XML құжаттарының құрылымын сипаттайды. Бұл құрылым деректердің екі түрі арасындағы бір-бірден көп қатынасқа мүмкіндік береді. Бұл құрылым нақты әлемдегі көптеген қатынастарды сипаттау үшін өте тиімді.
Желі режимі иерархиялық құрылымды кеңейтіп, бірнеше ата-анаға мүмкіндік беретін ағаш тәрізді құрылымда көптен көпке қатынасқа мүмкіндік береді. Ол реляциялық модельмен ауыстырылғанға дейін ең танымал болды.
Желі моделі жазбалар мен жиындар деп аталатын екі іргелі ұғымды пайдаланып деректерді ұйымдастырады. Жазбаларда өрістер бар. Жиындар жазбалар арасындағы "бірден көпке" қатынасты анықтайды: бір ие, көп мүше. Жазба жиынтықтардың кез келген санының иесі және жиындардың кез келген санының мүшесі болуы мүмкін.
Реляциялық модельді 1970 жылы Э.Ф.Кодд енгізді. Бұл предикаттық логика және жиындар теориясы тұрғысынан анықталған математикалық модель және оны жүзеге асыратын жүйелер негізгі, орта және микрокомпьютерлік жүйелерде қолданылған.
Реляциялық дерекқор үлгілерінде үш негізгі термин кеңінен қолданылады: қатынастар, атрибуттар және домендер. Қатынас – бағандары мен жолдары бар кесте. Қатынастың аталған бағандары атрибуттар деп аталады, ал домен атрибуттар қабылдауға рұқсат етілген мәндер жиыны болып табылады.
Бақылау сұрақтары:
1. Дерекқор (Мәліметтер базасы) және Дерекқорды басқару жүйесі (ДҚБЖ) ұғымдарына анықтама беріңіз.
2. Дерекқор жүйесіндегі "метадеректер" деген не және ол қайда сақталады?
3. ДҚБЖ-ның үш схемалық архитектурасының деңгейлерін (ішкі, концептуалды, сыртқы) сипаттаңыз. (p. 24)
4. Дерекқордың негізгі логикалық модельдерін атаңыз және реляциялық модельдің ерекшелігін түсіндіріңіз. (pp. 24-25)
5. Реляциялық дерекқордағы "негізгі кілт" (primary key) ұғымы не үшін қолданылады? (p. 25) 6. Деректерді қалыпқа келтіру (нормализация) процесінің мақсаты не және оның қандай қалыпты пішіндері бар? (p. 26)
7. Транзакция деген не және оның ACID (атомдық, консистенциялық, оқшауланған, төзімді) қасиеттерін түсіндіріңіз. (pp. 26-27)
Тақырып 6. ДЕРЕКТЕРДІ ТАЛДАУ. ДЕРЕКТЕРДІ БАСҚАРУ.
Жоспар:
1. Деректерді талдау негіздері. Жинау, жіктеу және болжау әдістері.
2. Шешімдер ағаштары. Үлкен көлемді деректерді өңдеу.
3. Data Mining әдістері мен кезеңдері. Data Mining міндеттері. 4. Деректерді визуализациялау.
Дәстүрлі деректерден айырмашылығы, Үлкен деректер термині гетерогенді пішімдерді қамтитын үлкен өсіп келе жатқан деректер жиынын білдіреді: құрылымдық, құрылымдалмаған және жартылай құрылымдық деректер. Үлкен деректер қуатты технологиялар мен озық алгоритмдерді қажет ететін күрделі сипатқа ие.
Көптеген деректер ғалымдары мен сарапшылары үлкен деректерді келесі үш негізгі сипаттамамен анықтайды (3Vs деп аталады):
- Көлемі: миллиондаған құрылғылар мен қолданбалардан (АКТ, смартфондар, өнімдер кодтары, әлеуметтік желілер, сенсорлар, журналдар және т.б.) үлкен көлемдегі сандық деректер үздіксіз жасалады;
- Жылдамдық: Деректер жылдам жолмен жасалады және пайдалы ақпарат пен сәйкес түсініктерді алу үшін жылдам өңделуі керек;
- Әртүрлілік: Үлкен деректер таратылған әртүрлі көздерден және бірнеше пішімдерде жасалады (мысалы, бейнелер, құжаттар, түсініктемелер, журналдар). Үлкен деректер жиыны құрылымдалған және құрылымдалмаған, жалпыға ортақ немесе жеке, жергілікті немесе алыс, ортақ немесе құпия, толық немесе толық емес және т.б.
Деректерді талдау (DA) - бұл ақпарат туралы қорытынды жасау мақсатында бастапқы деректерді зерттейтін ғылым. Деректерді талдау көптеген салаларда компаниялар мен ұйымдарға жақсырақ бизнес шешімдер қабылдауға және ғылымда бар модельдерді немесе теорияларды тексеру немесе жоққа шығаруға мүмкіндік беру үшін қолданылады. Деректерді талдау деректер өндіруден талдаудың көлемі, мақсаты және бағыты бойынша ерекшеленеді. Деректер кеншілері ашылмаған үлгілерді анықтау және жасырын қарым-қатынастарды орнату үшін күрделі бағдарламалық жасақтаманы пайдаланып үлкен деректер жиынын сұрыптайды. Деректерді талдау қорытындыға, зерттеуші бұрыннан белгілі болған нәрсеге негізделген қорытынды шығару процесіне баса назар аударады.
Ғылым әдетте деректердегі жаңа мүмкіндіктер ашылатын барлау деректерін талдауға (EDA) және бар гипотезалар дұрыс немесе жалған дәлелденетін растаушы деректерді талдауға (CDA) бөлінеді. Сапалы деректерді талдау (QDA) әлеуметтік ғылымдарда сөздер, фотосуреттер немесе бейне сияқты сандық емес деректерден қорытынды жасау үшін қолданылады [7].
«Аналитика» терминін көптеген іскерлік интеллект (BI) бағдарламалық қамтамасыз ету жеткізушілері мүлдем басқа функцияларды сипаттау үшін танымал сөз ретінде қолданылған. Деректер аналитикасы онлайн аналитикалық өңдеуден (OLAP) бастап байланыс орталықтарындағы CRM аналитикасына дейін барлығын сипаттау үшін қолданылады.
Мұнда ақпарат индустриясында қол жетімді деректердің үлкен көлемі бар. Бұл деректер пайдалы ақпаратқа түрленбейінше еш пайдасыз. Осы үлкен көлемді деректерді талдап, одан пайдалы ақпаратты алу керек.
Data Mining үлкен деректер жиынтығынан ақпаратты алу ретінде анықталады. Басқаша айтқанда, біз деректерді өндіру процедурасы деп айта аламыз мәліметтерден алынған білім. Алынған ақпарат немесе білім келесі қолданбалардың кез
келгені үшін пайдаланылуы мүмкін:
- нарықты талдау;
- Алаяқтықты анықтау;
- Тұтынушыны ұстап тұру; - өндірістік бақылау; - Ғылымды зерттеу.
Деректерді іздеу оңай жұмыс емес, өйткені қолданылатын алгоритмдер өте күрделі болуы мүмкін және деректер әрқашан бір жерде қол жетімді бола бермейді. Оны әртүрлі гетерогенді деректер көздерінен біріктіру қажет.
Деректерді іздеу жүйесі деректерді өңдеу жүйесі үшін өте маңызды. Ол келесі функцияларды орындайтын функционалдық модульдер жиынтығынан тұрады:
- мінездеме;
- Ассоциация және корреляциялық талдау;
- лассификациясы;
- Болжау;
- кластерлік талдау; - Шектеулі талдау; - Эволюциялық талдау.
Білім қоры
Бұл домендік білім. Бұл білім іздеуді бағыттау немесе алынған үлгілердің қызықтылығын бағалау үшін қолданылады.
Білімді ашу
Кейбір адамдар деректерді өндіруді білімнің ашылуымен бірдей қарастырады, ал басқалары деректерді іздеуді білімді ашу үдерісіндегі маңызды қадам ретінде қарастырады. Міне, білімді ашу процесіне қатысатын қадамдардың тізімі:
- Деректерді тазалау;
- Деректерді біріктіру;
- Деректерді таңдау;
- Деректерді түрлендіру;
- Мәліметтерді өндіру;
- Үлгіні бағалау; - Білімді таныстыру.
Пайдаланушы интерфейсі
Пайдаланушы интерфейсі – пайдаланушылар мен деректерді өңдеу жүйесі арасындағы байланысқа көмектесетін деректерді іздеу жүйесінің модулі. Пайдаланушы интерфейсі келесі функцияларға мүмкіндік береді:
- деректерді іздеу сұрау тапсырмасын көрсету арқылы жүйемен әрекеттесу;
- іздеуді шоғырландыруға көмектесетін ақпарат беру;
- аралық деректерді өндіру нәтижелеріне негізделген тау-кен өндіру;
- мәліметтер базасы мен деректер қоймасының схемаларын немесе деректер құрылымдарын шолу;
- қазылған үлгілерді бағалау;
- өрнектерді әртүрлі формада елестету.
Деректер интеграциясы
Деректерді біріктіру – бірнеше гетерогенді деректер көздерінен алынған деректерді когерентті деректер қоймасына біріктіретін деректерді алдын ала өңдеу әдісі. Деректерді біріктіру сәйкес келмейтін деректерді қамтуы мүмкін, сондықтан деректерді тазалау қажет.
Деректерді тазалау
Деректерді тазалау - шулы деректерді жою және деректердегі сәйкессіздіктерді түзету үшін қолданылатын әдіс. Деректерді тазалау қате деректерді түзету үшін түрлендірулерді қамтиды. Деректерді тазалау деректер қоймасы үшін деректерді дайындау кезінде деректерді алдын ала өңдеу қадамы ретінде орындалады.
Деректерді таңдау
Деректерді таңдау – талдау тапсырмасына қатысты деректер дерекқордан алынатын процесс. Кейде деректерді түрлендіру және біріктіру деректерді таңдау процесінің алдында орындалады.
Кластерлер
Кластер ұқсас нысандар тобын білдіреді. Кластерлік талдау бір-біріне өте ұқсас, бірақ басқа кластерлердегі нысандардан айтарлықтай ерекшеленетін нысандар тобын құруды білдіреді.
Деректерді түрлендіру
Бұл қадамда деректер жинақтау немесе біріктіру операцияларын орындау арқылы өндіруге сәйкес пішіндерге түрлендіріледі немесе біріктіріледі.
Жинау, жіктеу және болжау әдістері
Кейбір адамдар деректерді іздеуді білімді ашудан ажыратпайды, ал басқалары деректерді іздеуді білімді ашу үдерісіндегі маңызды қадам ретінде қарастырады.
Маңызды сыныптарды сипаттайтын үлгілерді шығару немесе болашақ деректер үрдістерін болжау үшін пайдаланылуы мүмкін деректерді талдаудың екі түрі бар. Бұл екі пішін келесідей: классификациясы; Болжау.
Жіктеу үлгілері категориялық класс белгілерін болжайды; және болжау үлгілері үздіксіз мәнді функцияларды болжайды. Мысалы, банктік несиелік өтінімдерді қауіпсіз немесе қауіпті деп жіктеу үшін жіктеу үлгісін немесе әлеуетті клиенттердің кірісі мен кәсібін ескере отырып, компьютерлік жабдыққа жұмсалатын шығындарын болжау үшін болжау үлгісін құра аламыз.
Төменде деректерді талдау тапсырмасы Жіктеу болып табылатын жағдайлардың мысалдары берілген:
-банктің несие маманы қай клиенттің (несие берушінің) тәуекелді немесе қайсысы қауіпсіз екенін білу үшін деректерді талдағысы келеді;
-компанияның маркетинг менеджері жаңа компьютер сатып алатын берілген профилі бар тұтынушыны талдауы керек.
Жоғарыда келтірілген мысалдардың екеуінде де категориялық белгілерді болжау үшін үлгі немесе классификатор құрастырылған. Бұл белгілер несиелік өтінім деректері үшін қауіпті немесе қауіпсіз, ал маркетинг деректері үшін иә немесе жоқ.
Деректерді жіктеу процесі екі кезеңнен тұрады:
-классификаторды немесе модельді құру;
-Классификация үшін классификаторды пайдалану.
1) классификаторды немесе модель құру
Бұл қадам оқу қадамы немесе оқу кезеңі болып табылады.
Бұл қадамда жіктеу алгоритмдері классификаторды құрастырады.
Жіктеуіш дерекқор кортеждерінен және олармен байланысты сынып белгілерінен тұратын оқу жинағынан құрастырылған.
Жаттығу жиынын құрайтын әрбір кортеж санат немесе сынып деп аталады. Бұл кортеждерді үлгі, нысан немесе деректер нүктелері деп те атауға болады.
2) Классификациялау үшін классификаторды пайдалану
Бұл қадамда жіктеу үшін классификатор қолданылады. Мұнда сынақ деректері классификация ережелерінің дәлдігін бағалау үшін пайдаланылады. Егер дәлдік қолайлы деп есептелсе, жіктеу ережелерін жаңа деректер кортеждеріне қолдануға болады.
Негізгі мәселе - деректерді жіктеу және болжау үшін дайындау.
Деректерді дайындау келесі әрекеттерді қамтиды [7]:
· Жіктеу және болжау әдістерін салыстыру
· Жіктеу және болжау әдістерін салыстыру критерийлері:
· білдіреді;
Мәліметтерді өңдеу әдістері мен кезеңдері
Кең ауқымды ақпараттық технологиялар бөлек транзакциялық және аналитикалық жүйелерді дамытып жатқанымен, деректерді өңдеу екеуінің арасындағы байланысты қамтамасыз етеді. Деректерді өңдеу бағдарламалық құралы ашық пайдаланушы сұраулары негізінде сақталған транзакция деректеріндегі қарымқатынастар мен үлгілерді талдайды. Аналитикалық бағдарламалық қамтамасыз етудің бірнеше түрі бар: статистикалық, машиналық оқыту және нейрондық желілер. Әдетте, қарым-қатынастың төрт түрінің кез келгені ізделеді:
· Сыра жөргегінің мысалы ассоциативті тау-кен өндірудің мысалы болып табылады;
Әр түрлі талдау деңгейлері бар:
· Жасанды нейрондық желілер: оқыту арқылы үйренетін және құрылымы бойынша биологиялық нейрондық желілерге ұқсайтын сызықты емес болжамдық модельдер;
·
Генетикалық алгоритмдер:
табиғи эволюция тұжырымдамаларына негізделген дизайнда генетикалық комбинация,
мутация және табиғи сұрыптау сияқты процестерді қолданатын оңтайландыру
әдістері;
· Шешім ағаштары: шешімдер жиынтығын білдіретін ағаш тәрізді құрылымдар. Бұл шешімдер деректер жиынын жіктеу ережелерін жасайды. Арнайы шешімдер ағашының әдістеріне жіктеу және регрессия ағаштары (CART) және Чи квадратының өзара әрекеттесуін автоматты түрде анықтау (CHAID);
· Ең жақын көрші әдісі: Деректер жиынындағы әрбір жазбаны тарихи деректер жиынындағы оған ең ұқсас k жазба(лар) кластарының комбинациясы негізінде жіктейтін әдіс (мұндағы k 1). Кейде k-ең жақын көршілес техника деп аталады;
· Ережені индукциялау: Статистикалық маңыздылыққа негізделген мәліметтерден пайдалы болса-онда ережелерін шығару;
·
Деректерді
визуализациялау: көп өлшемді деректердегі күрделі қатынастарды визуалды
интерпретациялау. Графикалық құралдар деректер қатынасын көрсету үшін
пайдаланылады.
Шешім ағаштары
Шешім ағашы – жалпы сұраққа жауапты анықтау үшін пайдаланылатын иерархиялық қатынас диаграммасы. Ол мұны сол сұраққа қатысты ішкі сұрақтар тізбегін қою арқылы жасайды.
Шешім ағашы - түбір түйінін, бұтақтарды және жапырақ түйіндерін қамтитын құрылым. Әрбір ішкі түйін атрибуттағы сынақты білдіреді, әрбір тармақ сынақтың нәтижесін білдіреді және әрбір жапырақ түйіні сынып белгісін ұстайды. Ағаштың ең жоғарғы түйіні – түбір түйіні.
Келесі шешім ағашы сатып алу_компьютер концепциясына арналған, ол компаниядағы тұтынушының компьютерді сатып алуы немесе сатып алмау мүмкіндігін көрсетеді. Әрбір ішкі түйін атрибуттағы сынақты білдіреді. Әрбір жапырақ түйіні сыныпты білдіреді. Шешім ағашы ағаш құрылымы түрінде жіктеу немесе регрессия үлгілерін құрастырады. Ол деректер жиынын кішірек және кішірек ішкі жиындарға бөледі, сонымен бірге байланысты шешім ағашы біртіндеп дамытады. Соңғы нәтиже - шешім түйіндері мен жапырақ түйіндері бар ағаш. Деректерді визуализациялау
Деректерді визуализациялаудың мәні - пайдаланушыға не болып жатқанын түсінуге мүмкіндік беру. Деректерді өндіру әдетте дерекқордан «жасырын» ақпаратты алуды қамтитындықтан, бұл түсіну процесі біршама күрделі болуы мүмкін. Көптеген стандартты дерекқор операцияларында пайдаланушы көретіннің барлығы дерлік дерекқорда бұрыннан бар екенін білетін нәрсе.
Деректерді өндіру, екінші жағынан, пайдаланушы бұрын білмейтін мәліметтер базасынан ақпаратты шығарады. Интуитивті емес айнымалылар арасындағы пайдалы байланыстар деректерді іздеуде табуға үміттенетін зергерлік бұйымдар болып табылады. Пайдаланушы деректерді іздеу процесі нені ашқанын алдын ала білмейтіндіктен, жүйенің нәтижесін алу және оны бизнес мәселесінің әрекеттік шешіміне аудару әлдеқайда үлкен секіріс. Модельді графикалық түрде көрсетудің әдетте көптеген жолдары болғандықтан, пайдаланылатын визуализациялар қараушы үшін мәнді барынша арттыру үшін таңдалуы керек.
Visual Data Mining үлкен деректер жиынынан жасырын білімді ашу үшін деректерді және/немесе білімді визуализациялау әдістерін пайдаланады.
Визуалды деректерді өндіру келесілермен тығыз байланысты:
· Компьютерлік графика;
· Мультимедиялық жүйелер;
· Адамның компьютермен әрекеттесуі;
· Үлгілерді тану;
· Жоғары өнімді есептеулер.
Data Mining қандай мәселелерді қарастырады. Көптеген беделді білім көздері келесілерді тізбектейді: жіктелу, кластеризация, болжау, ассоциация, визуализация, талдау және ауытқуларды анықтау, бағалау, қарым-қатынас талдауы, қорытындылау. Деректер визуализациясы - суреттер, графиктер, диаграммалар, кестелер мен диаграммалар арқылы ақпарат беру болып табылады.
Визуализацияның мәнділігі деректер қамтылған ақпаратты нақты анықтау және көрсету мүмкіндігін беретіндігінде. Жобалауды визуализациялауда қаншалықты айқын деректердің көрнекі әдістерін дамыту кезінде IT мамандар мен дизайнерлер тең дәрежеде қатысады. Ең түрлі мәселелерді шешу деректер визуализациясы көмегімен орындалады.
Біріншіден, бұл талдау бастапқы кезеңдерінде маңызды құрал болып табылады. Графика ең қарапайым деректермен жұмысында деректер үлгілерін басшылыққа алады, трендтерді немесе ауытқуларды табуға мүмкіндік береді. Сол сияқты, журналист, бастауыш деректерді көру кезінде диаграммаларды пайдаланып, одан әрі басқа материалға тарихын әкелуі мүмкін.
Екіншіден, визуализация жиі талдау қорытынды нәтижелері туралы ұсыныста маңызды рөл атқарады. Бұл тенденцияларды көрсетуге статикалық графиктер болуы мүмкін; интерактивті визуализация, пайдаланушылар деректерді зерттеуге мүмкіндік беретін және инфографика (статикалық және интерактивті), айқын кескін деректер тарихына негізделген. Визуализация тапсырмасының маңыздысы бір суретте физикалық (әдетте екі өлшемді) өлшеудің шектелген саны дисплейлік өлшеудің берілгендерінен және осы өлшемдегі олардың арасындағы байланыс тұрады
Бақылау сұрақтары:
1. "Үлкен деректер" (Big Data) ұғымы дәстүрлі деректерден қалай ерекшеленеді және оның 3Vs сипаттамасы қандай?
2. Деректерді талдау (Data Analytics) мен Деректерді интеллектуалды талдаудың (Data Mining) айырмашылығы неде?
3. Білімді ашу (Knowledge Discovery) процесіне қатысатын негізгі қадамдарды ретімен атаңыз.
4. Деректерді жіктеу (Classification) және болжау (Prediction) әдістерінің айырмашылығы қандай?
5. Шешім ағашы (Decision Tree) деген не және оның құрылымы қандай элементтерден тұрады?