
- •1 Дәріс. Мәліметтер қорлары технологиясының дамуы
- •1.1 Ақпараттық жүйелері
- •1.2 Файлдар және файлдық жүйелер
- •2 Дәріс. Мәліметтер қорларын қолданатын ақпараттық жүйелері
- •2.1 Файлдық жүйелерінің кемшіліктері
- •2.2 Мәліметтер қорларын қолданатын ақпараттық жүйелер
- •3 Дәріс Мәліметтер қорларын басқару жүйелерінің даму тарихы
- •3.1 Үлкен еэм-дегі мәліметтер қорлары
- •3.2 Дербес компьютерлер кезеңі
- •3.3 Таратылған мәліметтер қорлары
- •3.4 Мәліметтер қорларын басқару жүйелерінің даму перспективалары
- •4 Дәріс Тақырып аймақты жүйелік талқылау
- •4.1 Ақпараттық жүйенің тақырып аймағы
- •4.2 Тақырып аймақты бейнелеудің мысалы
- •5 Дәріс. Мәліметтер қорларын жобалаудың принциптері
- •5.1 Мәліметтер қорларының архитектурасы. Физикалық және логикалыө тәуелсіздік
- •5.2 Мәліметтердің концептуалды модельдері
- •6 Дәріс. Мәліметтерді концептуалды модельдеу
- •6.1 Мәліметтердің концептуалды модельдерінің негізгі анықтамалары
- •6.2 Концептуалды модельді графиқалық көрсету
- •7 Дәріс. Талқыланатын тақырып аймақтың er-диаграммасын өңдеу
- •7.2 Сурет – Баспа компанияның моделінің er–диаграммасы
- •8 Дәріс. Концептуалды модельдеудің мысалдары
- •9 Дәріс. Мәліметтерді модельдеудің әдістері
- •9.1 Мәліметтердің үш негізгі модельдері
- •10 Дәріс. Мәліметтердің реляциялық моделі
- •10.1 Реляциялық кестелер мен кілттер
- •10.2 Мәліметтердің бүтіндігін қамтамасыздандыратын шектеу шарттары
- •11 Дәріс. Концептуалды модельді реляциялық модельге түрлендіру
- •11.1 Объектілік жиынтықтар мен атрибуттарды түрлендіру
- •11.2 Қатынастарды түрлендіру
- •12 Дәріс. Мәліметтер қорларын нормалау
- •13 Дәріс. Функционалды тәуелділітер мен олармен байланысты нормалы формалар
- •13.1 Функционалды тәуелділіктер мен нормалы формалар
- •13.2 Мәліметтердің концептуалды және реляциялық модельдерін салыстыру
- •14 Дәріс. Өңделген реляциялық сұлбаны іске асыру
- •14.1 Құрылымдасқан сұраныстардың sql тілі
- •14.2 Мәліметтер қорының объекттері
- •15 Дәріс. Мәліметтерді4 таратылған өңдеkуі
- •15.1 Жалпы мағлұматтар
- •15.2 Мәліметтер қорларының технолгиясындағы «клиент—сервер» модельдері
- •15.3 Екі денгейлі модельдер
9 Дәріс. Мәліметтерді модельдеудің әдістері
Дәріс мазмұны:
- мәліметтерді модельдеудің әдістерінің тарихи дамуы.
Дәріс мақсаты:
- мәліметтерді құылымдастырудың концептуалды әдістерін оқу.
9.1 Мәліметтердің үш негізгі модельдері
Мәліметтер қорларының жүйесі объекттердің екі түрін: объекттерді және байланыстарды көрсетуге мүмкіндік беруі керек. Сонымен бірге олар арасында принципиалды айырмашылық жоқ: байланыс арнайы түрдегі объект болып табылады. Мәліметтерді модельдеудің үш амалы (иерархиялық желілік, реляциялық) пайдаланушыға байланыстарды көрсету мен өңдеуге мүмкіндік беретін әдістерімен айырылады.
9.1.1 Мәліметтердің иерархиялық моделі
Мәліметтер қорын қолданатын бірінші ақпараттық жүйе 60-шы жылдары (ХХ ғ.) пайда болған. Ол иерархиялық модельде негізделген болатын. Мәліметтер арасындағы қатынастардың құрылымы иерархия түрдегі болатын мәліметтер моделі иерархиялық модель болып табылады. Бұл модельдер ертерек пайда болған, қазіргі кезде осы заманғы реляциялық модельдерге қарағанда сирек қоланылады. Бірақ осы модельдер негізінде жұмыс жасайтын жүйелер әлі де бар және объектті бағытталған мәліметтер қорларының даму концепциясының бірі желілік модельді реляциялық модельмен біріктекстіруді болжайды. Нақты ортада көптеген байланыстар иерархияларға сәйкес болатыны иерархиялық модельдің пайда болуына себеп болды. Объекттер кластары арасындағы өзара байланыстарын көрсету үшін иерархия қарапайым және де орынды болады.
Иерархиялық модельде негізгі ақпараттық бірліктер мәліметтер қоры, сегмент және өріс болып табылады. Мәліметтер қорларын басқаратын жүйе көмегімен алынатын мәліметтердің минималды бөлінбейтін бірлігі мәліметтердің өрісі деп аталады. Мәліметтер қорларының мәселелерін қарастыратын DBTG (Data Base Task Group) американ ассоциациясының терминологиясы бойынша сегмент деп түсінетін бөлік жазба болып табылады. Сонымен бірге осы ассоциация терминдері бойынша екі түсініктеме: сегмент типі немесе жазба типі және де сегмент данасы немесе жазба данасы анықталады.
Мәліметтер элементтерінің аталған типтер жиыны сегмент типі деп аталады.
Мәліметтер элементтерінің немесе белгілі өрістерінің мәндерінен сегмент экземпляры құрастырылады. Иерархиялық модельде әр сегмент типі біртекті жазбалар жиынын құрастырады. Берілген жиында әртүрлі жазбаларды айыру үшін сегменттің әр типінің кілті немесе кілттік атрибуттар жиыны (өрістер, мәліметтер элементтері) болу керек. Сегмент данасын бір мағналы идентификациялайтын мәліметтер элементтерінің жиыны кілт деп аталады.
Иерархиялық модельде сегменттер бағытталған ағаш құрамды графқа бірлеседі. Графтың бағытталған қабырғалары сегменттер арасындағы иерархиялық байланыстарды көрсетеді деп есептеледі: иерархия бойынша жоғары тұрған және қарастырылып отырған сегмент типімен байланысқан сегменттің әр данасына қарастырылып отырған (бағынышты) сегмент типінің бірнеше (көп) даналары сәйкес келеді.
Иерархияның жоғарғы деңгейінде тұрған сегмент типі онымен бағытталған иерархиялық қабырғалармен байланысқан сегментке қарай логикалық бастапқы деп, ал соңғылары логикалық бағынышты деп аталады. Кейде бастапқы сегменттер аналық сегмент деп, ал бағыншыты сегменттер ұрпақтық сегменттер деп аталады.
Концептуалды деңгейде иерархиялық модель терминдерінде мәліметтер қорының сұлбасы түсініктемесі анықталады. Бөлек ағаштар жиындары иерархиялық мәліметтер қорының сүлбасы болып табылады, осы модельдегі әр ағаш физикалық мәліметтер қоры деп аталады. Әр физикалық мәліметтер қоры келесідей иерархиялық шектеулерді қанагаттандыруы керек:
- әрбір физикалық мәліметтер қорында түпті сегмент яғни логикалық бастапқы (аналық) сегменті жоқ;
- әрбір логикалық бастапқы сегмент логикалық бағынышты сегменттердің еркін санымен байланысады;
- әрбір логикалық бағынышты сегмент тек қана жалғыз аналық сегментпен байланысады.
Сегменттер даналары арасында да иерархиялық байланыстар бар болады. Аналық сегменттің бір типімен байланысқан бір типті ұрпақ даналар «егіздер» деп аталады.
Иерархиялық мәліметтер қорында файлдар бір бірімен физикалық көрсеткіштермен байланысады. Дискідегі жазбаны сақтау орынын көрсететін физикалық адрес көрсеткіш деп аталады.
9.1.2 Мәліметтердің желілік моделі
Барлық қатынастарды иерархия түрінде көрсету мүмкінсіздігі иерархиялық модельдің кемшілігі болып табылады. Егер де файлдағы әр жазба басқа бірнеше файлдардың жазбаларына бағынатын болса мәліметтер арасындағы қатынастар желілік деп аталады. Осындай қатынастарды өңдеу қажеттіліктері себептерінен 60-шы жылдардың (ХХ ғасыр) аяғында желілік мәліметтер қорларын басқару жүйелері пайда болды. Иерархиялық жүйелердегідей желілік мәліметтер қорларының жүйелерінде мәліметтерді байланыстыру үшін алдын ала анықталған физикалық көрсеткіштер қолданылды. Иерархияда әр ұрпақта (файлдағы бағынышты жазбада) тек қана жалғыз анасы (иерархияда бағындыратын жазба) болады. Желілік модельдер әртүрлі файлдардағы жазбалар арасында күрделі қатынастарды сүйемелдеді.
Модельдің негізгі объекттері келесі: мәліметтер элементі, мәліметтер агрегаты, жазба, мәліметтер жиыны.
Иерархиялық модельдегідей мәліметтер қорын басқаратын жүйе көмегімен пайдаланушыға қол жеткізуге болатын минималды ақпараттық бірлік мәліметтер элементі болып табылады.
Модельдегі жалпылаудың келесі денгейіне мәліметтер агрегаты сәйкес. Модельде агрегаттардың екі типі анықталған: вектор типті агрегат және қайталанатын топ типті агрегат. Мәліметтер агрегатының аты болады, жүйеде осы ат бойынша агрегатқа қатысу болады.
Нақты ортаның объекттерінің кейбір класын модельдейтін агрегаттар жиыны яғни мәліметтер элементі жазба деп аталады. Жазба түсініктемесі бұл жерде иерархиялық модельдегі «сегмент» түсініктемесіне сәйкес. Сегмент сияқты жазба үшін де жазба типі және жазба данасы түсініктемелері енгізіледі.
Желілік модельдің келесі негізгі түсініктемесі «жиын» болып табылады. Жазбаның екі типін «бір-көпке» қатынасымен байланыстыратын екі деңгейлі граф жиын деп аталады.
Жазбалардың екі типтері арасындағы иерархиялық байланысты жиын көрсетеді. Осы жиындағы жазбаның аналық типі жиын иесі, ал ұрпақтық жазба типі осы жиын мүшесі деп аталады. Жазбалардың кез келген екі типі үшін оларды байланыстыратын жиындардың кез келген саны берілуі мүмкін. Осындай мүмкіндіктің болғаны нақты ортаның екі объекттері арасындағы «көп-көпке» қатынасын модельдеуге мүмкіндік береді. Осы жағдай иерархиялық модельге қарағанда желілік модельдің артықшылығы. Жиын ішінде бір жиын иесімен байланысты жиын мүшелерінің даналарын тізбектеп қарап шығуға болады.
Жазбалардың екі типтері арасында жиындардың кез келген санын анықтауға, мысалы, екі өзара байланысқан жиындарды құрастыруға болады. Жазбаның бір типі бір кезде жиын иесі және жиын мүшесі бола алмайтыны жиынның маңызды шектеуі болып табылады.
9.1.3 Реляциялық модельге көшу
Реляциялық модель жиындар теориясы мен предикаттар логикасының математикалық принциптерінде негізделген. Мәліметтерді модельдеу саласында бұл принциптер ең бірінші доктор Е.Ф.Кодд қолданған (ол кезде IBM корпорациясының қызметкері). 1970 ж. доктор маңызы жағынан революциялық болып табылған мәліметтер қорлары туралы мақаланы басып шығарды. Мәліметтерді байланыстыруға физикалық көрсеткіштері емес, олардың ішкі логикалық өзара қатынастарын қолдану керек деген идея ұсынылды. Сонымен, егер де бастапқы мәліметтерде оларды қиыстыруға қажетті логикалық ақпарат болатын болса, пайдаланушылар әртүрлі көздегі мәліметтерді қиыстыра алады. Бұл идея ақпаратты басқару жүйелер үшін жаңа мүмкіншіліктерді берді, себебі мәліметтер қорларына қоятын сұраныстар енді физикалық көрсеткіштермен шектелмеген болады. Логикалық байланыстар негізінде мәліметтерді тауып шығаруды сүйемелдейтін мәліметтер қорларын қолданатын ақпараттық жүйелер көптеген сұрақтарға жауап алуға мүмкіндік береді.
Өзінің мақаласында Кодд мәліметтердің қарапайым моделін ұсынды. Осы модельге сәйкес барлық мәліметтер жатық және тік жолдардан тұратын кестелерде орнатылады. Осы кестелер реляциялық алгебрада реляциялар деп аталады, сондықтан модель реляциялық деген атқа ие болды.
Реляциялық модель мәліметтерді көрсету (мәліметтер құрылымын), мәліметтерді қорғау әдістерін (мәліметтер бүтіндігін) және мәліметтермен орындалатын операцияларды (мәліметтермен әрекеттесуді) анықтайды. Реляциялық модель кестелер арасындағы қатынастарды көрсететін болғандықтан оның аты пайда болды деген пікір дұрыс емес. Керісінше реляциялық модельдің аты оның негізінде болатын қатынастардан (теория бойынша реляциялардан) пайда болды. Реляциялық модельде мәліметтер концептуалды деіңгейінде қатынастар түрде көрсетіледі, бірақ физикалық деңгейде мәліметтердің іске асырылуы туралы ешқандай бұйрықтар жоқ.
Мәліметтерді физикалық емес, концептуалды көз қарас жағынан қарастырып Кодд тағы бір революциялық идеяны ұсынды. Мәліметтер қорларының реляциялық жүйелерінде мәліметтер файлдарын тұтас бір бұйрықпен өңдеуге болады, ал дәстүрлі жүйелерде бір бұйрықпен тек қана бір жазба өңделеді. Концептуалды және логикалық деңгейлерді айыру әдісі мәліметтер қорларын программалау саласына өзгерістерді әкелді. Коддтың амалы мәліметтер қорларын программалаудың тиімділігін көтерді. Бұрында мәліметтер қорларын программалау үшін әдетте мәліметтерді сақтауға негізделген құрылғыларды физикалық басқарудың программалық кодтарды жазылатын еді.
Мәліметтерге логикалық көз қарас компьютерлік технологиялар жағынан маман болмайтын пайдаланушыларға түсінікті болатын сұраныстардың тілдерін жасауға мүмкіндік берді. Әрине, компьютермен жұмыс істеу тәжірибелері әртүрлі болатын барлық адамдар қолданатын тілдерді өңдеу өте қиын. Бірақ бұрынғыға қарағанда сұраныстардың реляциялық тілдері көптеген пайдаланушыларға мәліметтер қорларына қол жеткізуге мүмкіндік берді.
Өткен ғасырдың 70-ші жылдардағы Коддтың жариялаулары ғалымдар мен мәліметтер қорларын басқаратын реляциялық жүйелерін жасайтын коммерциялық жүйелерді өңдеушілер арасында активтілікті көтерді. Осы жұмыстар нәтижесінде 70-ші жылдардың екінші бөлігінде келесідей (Structured Query Language - SQL, құрамдасқан сұраныстар тілдері), Query Language (Quel, сұраныстар тілі) және Query-by-Example (QBE, үлгі бойынша сұраныстар) тілдерді сүйемелдейтін реляциялық жүйелер пайда болды.
Кәзіргі кезде реляциялық мәліметтер қорлары мәліметтермен жұмыс істеуге негізделген осы заманғы коммерциялық жүйелердің стандарты ретінде қарастырылады.