- •1. Деректер қорын басқару жүйесінің архитектурасы 2
- •Тұрақты сақтау ортасы бойынша классификациясы
- •Құрамы бойынша классификациясы
- •Тарату деңгейі бойынша классификациясы Орталықтандырылған немесе бір компьютерде толық қолдау көрсетілетін нақты дқ (англ.Centralized database):
- •Дқ басқа түрлері
- •1.2 Ақпараттық қатынастар және деректердің өзара байланысы
- •1.3 Ақпаратты сақтау және сыртқы жадының құрылғысы
- •1.3.1. Деректер
- •1.3.2 Ақпарат
- •1.3.3 Сыртқы жады құрылғылары
- •1.3.4 Технология дәуірі және деректерді сақтаудың архитектурасы
- •1.4 Файл және файлдық жүйелер.
- •1.4.1. Файл құрылымы
- •1.4.2 Файлдық жүйелердің логикалық құрылымы және файлдардың атауы
- •1.4.3 Файлдарға енуді авторизациялау
- •1.4.4 Көпқолданушылық қатынасты синхрондау
- •1.4.5 Файлдарды разумно қолдану аймағы
- •1.5. Ақпараттық жүйелердің қажеттілігі
- •1.6 Үлкен эем-гі деректер қоры (Орталықтанған архитектура)
- •1.7. Дербес компьютерлер дәуірі. Желілік және файлдық сервер технолгиясы ("файл-сервер" архитектурасы)
- •Дәріс 2. Деректер қорын басқару жүйесінің негізгі түсінігі
- •2.1. Файлдық жүйелердің кемшіліктері
- •2.2 Деректер қоры және деректер қорының басқару жүйесі
- •2.3 Sql сұраныс тілі
- •2.4 Реляционды sql-бағытталған дқбж ішкі ұйымдастыру принципі
- •System r жалпы ұйымдастырылуы мен мақсаты, негізгі түсініктер
- •Дәріс 3. Дқбж архитектурасі
- •3.1 Дқбж архитектурасі.
- •3.2 Sql-бағытталған дқбж сіртқі сақтанішқа деректерлерді ұімдастру жалпі принциптер.
- •3.3 Деректер қорда сұраныстарді өңдеу.
- •4.2 Деректер қорын жобалаудың негізгі сатылары Сур. 4.3. Жобалаудың жалпы сұлбасы
- •4.3 Пәндік аймақтың сипаты. Мысал.
- •Дәріс 5. Деректердің семантикалық моделі
- •5.1 Деректерді модельдеудің негізгі жақындаулары. Чена моделі: «негіз-байланыс»
- •Питер Чен нотациялары
- •Басқа да нотациялар
- •Er-модельдерді құратын құралдар
- •5.2 Er-диаграмма түрінде пәндік аймақтың концептуалды моделін құру
- •Дәріс 6. Деректерді концептуалды жобалаудың негізгі түсініктері
- •6.1 Атрибуттар, мұрагерлік, қатынастар, қатынастар.
- •6.2 Негіздер классификациясы.
- •Дәріс 7. Концептуалды деректер жобалау мысалы
- •7.1 Құрылудың негізгі сатылары
- •7.2. Жергілікті көрсетілімдерді модельдеу
- •7.3 Жергілікті мдельдерді біріктіру
- •7.4. Концептуалды деректер моделінің құрылу мысалы
- •3. Деректер моделі Дәріс 8. Деректер қорының теориялық модельдері
- •8.1 Деректер моделінің классификациясы. Деректер қорын ұйымдастыру үшін жақындаулар.
- •8.2 Деректердің желілік моделі
- •8.3 Деректердің иерархиялық моделі
- •8.4 Деректердің көпөлшемді моделі
- •8.5 Концептуалды модельдің автоматтандырылған жобалау жүйесі
- •8.6 Деректер типі
- •8.7. Деректердегі негізгі операциялар
- •8.8 . Деректер моделін таңдау
- •Дәріс 9. Деректердің реляциялық моделі
- •9.1 Реляционды деректер қорының базалық түініктері
- •9.2 Қалыптасқан қатынас сипаты және қатынас сұлбасы
- •9.3 Дқбж негізгі терезесі және деректер қорымен жұмыс жасау үшін басқару элементтері
- •Дәріс 10 Деректер қорының біртұтастығы
- •10.1. Біртұтастық шектеулері
- •10.2. Реляционды модельдің бүртұтастық бөлігі. Қазіргі дқбж деректер біртұтастығының жүзеге асу шарттары.
- •Дәріс 11. Деректер қорына қатынау технологиялары.
- •11.1 Деректер қорына қатынау технологияларына шолу.
- •11.2 Odbc технологиясы (Open Database Connectivity).
- •11. 3 Ole db - Object Linking and Embedding Database технологиясы. Ole db негіздері.
- •ToleContainer объектісі.
- •Ole қосымша мысалы.
- •Деректер қорында ole объектіні сақтау.
- •11.4 Ado - ActiveX Data Objects технологиясы.
- •4. Нормализация әдіспен деректер қорын жобалау Дәріс 12. Деректер қорының нормализациясы
- •12.1 Минималды функционалды тәуелділіктер және екінші нормаль форма
- •12.1 Сурет. Қызметшілер_жобалар_тапсырмалар қатынасының
- •12.2 Сурет. Қызметшілер_жобалар_тапсырмалар қатынасының мүмкін болатын айнымалы мәні
- •12.2 Минимал емес функционалды тәуелділіктердің болуынан пайда болатын жаңару аномалиясы
- •12.3 Мүмкін болатын декомпозиция
- •12.3 Сурет. Қызм және қызм_жоба_тапс қатынастарының айнымалыларындағы
- •12.4 Сурет. Айнылы қатынас мәндері Дәріс 13. Қалыпты формалар
- •13.1Транзитивті емес функционалды тәуелділіктер және үшінші қалыпты форма
- •13.2 Мүмкін болатын жабу кілттері және Бойс-Коддқалыпты формасы
- •Дәріс 14. Нормализацияны қолдану арқылы реляционды деректер қорын жобалау
- •14.1 Көпмәнді тәуелділіктер және төртінші қалыпты форма
- •14.2 Жобалау/бірігу тәуелділіктері және бесінші қалыпты форма
- •5.Таратылған деректерді өңдеу Дәріс 15. Таратылған ақпараттық жүйелер және деректер қоры
- •15.1 Таратылған дерктер қоры
13.2 Мүмкін болатын жабу кілттері және Бойс-Коддқалыпты формасы
Осыған дейін қалыпты формалардың анықтамаларында декомпозицияланатын қатынастардың тек бір ғана мүмкін кілті болады деп жоспарлағанбыз. Тәжірибе жүзінде осылай болады. Бірақ, 2NF және 3NF талаптарын қанағаттандыратын, аномалия жаңаруын тудыратын ерекше бір жағдай бар. Бұл жағдайда бір қатынастың бірнеше мүмкін кілттері болғанда, сол кілттердің кейбірі «жабылады», яғни ортақ атрибуттардан тұрады.
Мүмкін болатын жабу кілттерімен байланыста жаңару аномалиялары
Мысалы, Например, 13.3 суретте көрсетілгендей ҚЫЗМ_ПРО_ТАПС1 {ҚЫЗМ_НОМ, ҚЫЗМ_АТЫ, ПРО_НОМ, ҚЫЗМ_ТАПС} қатынасының айнымалысының FD жиыны болсын делік.
Сутер 13.3. ҚЫЗМ_ПРО_ТАПС1 қатынасының FD диаграммасы
ҚЫЗМ_ПРО_ТАПС1 қатынасында қызметшілер төлқұжат номері бойынша да, аттары бойынша да идентификацияланады. Демек, ҚЫЗМ_НОМҚЫЗМ_АТЫ және ҚЫЗМ_АТЫҚЫЗМ_НОМ FD бар болады. Бірақ бір қызметші бірнеше жобаларға қатыса алады, сондықтан олардың мүмкін кілттері { ҚЫЗМ_НОМ, ПРО_НОМ} және { ҚЫЗМ_АТЫ, ПРО_НОМ}. 13.4 суретте ҚЫЗМ_ПРО_ТАПС1 қатынас айнымалысының мүмкін мәндері көрсетілген.
Сурет 13.4. ҚЫЗМ_ПРО_ТАПС1 қатынас айнымалысының мүмкін мәндері.
ҚЫЗМ_ПРО_ТАПС1 қатынасында барлық кілттік емес атрибуттарының FD мүмкін болатын минималды және транзитивті FD кілттері жоқ, бұл қатынас жаңару аномалиясына тән. Мысалы, қызметшінің аты өзгерген кезде ҚЫЗМ_ПРО_ТАПС1 қатынасының барлық кортеждерінде ҚЫЗМ_АТЫ атрбутын жаңарту керек. Әйтпесе, ҚЫЗМ_ НОМ ҚЫЗМ_ АТЫ бар FD бұзылады және деректер қоры үйлесімсіз жағдайда болады.
Бойс-Кодд қалыпты формасы
2NF және 3NF талаптарында басқа мүмкін кілттердің компоненттері болатын бастапқы кілт атрибуттарынан минималды функционалдық тәуелділік талап етілмеді,сол белгіленген аномалия себептері болды. Бұл мәселені Бойс-Кодд қалыпты формасы деп атауға тарихи шешім қабылданған және бірнеше мүмкін болатын жабу кілттері болғандағы 3NF анықтамасы болатын қалыпты форма шешеді.
Қатынас айнымалысы Бойс-Кодд (BCNF) қалыпты формасында орналасады, тек кез келген осы қатынас айнымалысы үшін орындалатын нетривиалды және минималды FD берілген қатынас үшін кейбір мүмкін кілті бар детерминант ретінде орындалса.
ҚЫЗМ_ПРО_ТАПС1 қатынасының айнымалысы BCNF-ке екі декомпозицияның біреуімен келуі мүмкін: ҚЫЗМ_НОМ_АТЫ {ҚЫЗМ_НОМ, ҚЫЗМ_АТЫ} және ҚЫЗМ_НОМ_ПРО_ТАПС {ҚЫЗМ_НОМ, ПРО_НОМ, ҚЫЗМ_ТАПС} FD жиынымен және 13.5 суреттегі мәндері бар, және ҚЫЗМ_НОМ_АТЫ { ҚЫЗМ_НОМ, ҚЫЗМ_АТЫ} және ҚЫЗМ_АТЫ_ПРО_ТАПС { ҚЫЗМ_АТЫ, ПРО_НОМ, ҚЫЗМ_ТАПС} (FD және нәтижелік айнымалы қатынастар мәні аналогты түрде болады).
Сурет 13.5. ҚЫЗМ_НОМ_АТЫ және ҚЫЗМ_НОМ_ПРО_ТАПС қатынастардың айнымалы мәндері және FD диаграммасы
Осы декомпозициялардың әрқайсысы ҚЫЗМ_ПРО_ТАПС1 қатынасының жаңаруымен байланысты.
BCNF-ке үнему талпыну керек пе?
Ұжымдағы барлық жобаларда түрлі тапсырмалар бар делік және әр қызметші бірнеше жобаға қатыса алады, бірақ, әр жобада бір тапсырманы орындай алмайды. Әр жобадағы бір тапсырманы бірнеше қызметші орындай алады. Сонда ҚЫЗМ_ПРО_ТАПС қатынасының айнымалысында 13.6 суретте көрсетілген FD жиыны болады және сол сурттегі мәндер де болуы мүмкін.
Бұл қатынастың екі мүмкін кілті бар: {ҚЫЗМ_НОМ, ПРО_НОМ} және {ҚЫЗМ_НОМ, ҚЫЗМ_ТАПС}. Қатынастар 3NF талаптарын қанағаттандырады: мүмкін
Сурет 13.6. ҚЫЗМ_ПРО_ТАПС қатынас айнымалысының жаңа нұсқасы
кілттерден кілтсіз атрибуттардың минималды емес FD болмайды және транзитивті FD болмайды. Бірақ, FD ҚЫЗМ_ТАПСПРО_НОМ болғандықтан бұл қатынас BCNF-те болмайды. Сондықтан Қ ЫЗМ_ПРО_ТАПС қатынасына қайтадан жаңару аномалиясының қасиеттері тән болады. Мысалы, (ҚЫЗМ_НОМ екі мүмкін кілттің компоненті болғандықтан), сол тапсырма туралы ақпаратты жоғалтпай бір қызметші туралы деректерді жоюға болмайды.
ҚЫЗМ_ПРО_ТАПС қатынасын BCNF-келтіруге болады, ол үшін ҚЫЗМ_НОМ_ТАПС {ҚЫЗМ_НОМ, ҚЫЗМ_ТАПС} және ПРО_НОМ_ТАПС {ҚЫЗМ_ТАПС, ПРО_НОМ} қатынасына оның декомпозициясын орындау керек және бұл декомпозиция белгіленген мәселелерді шешеді (енді бірде бір қызметшімен орындалмайтын жоба тапсырмасы туралы мәселені шешуге болады). 13.7 суретте ҚЫЗМ_НОМ_ТАПС және ПРО_НОМ_ТАПС қатынастарының айнымалы мәндері көрсетілген.
Бірақ жаңа қиындықтар пайда болады. Мысалы, ҚЫЗМ_НОМ_ТАПС қатынасына <2934, D> кортежін қосуға тыйым салу керек, себебі D тапсырмасы 1 жобаға қатысты, ал 2934 номерлі қызметші сол жобадағы тапсырманы орындап жатады. Бұлай болудың себебі бастапқы FD {ҚЫЗМ_НОМ, ПРО_НОМ}ҚЫЗМ_ТАПС FD ҚЫЗМ_ТАПСПРО_НОМ жобасы үшін шығарылмайды және сәйкес біртұтастық шектеулері деректер қорының шектеулері болып табылады.
ҚЫЗМ_НОМ_ТАПС және ПРО_НОМ_ТАПС тәуелсіз болмайды, ал ҚЫЗМ_ПРО_ТАПС қатынасы BCNF болса да атомарлы. Осыдан, реляционды деректер қорын жобалау кезінде қатынасты BCNF-ке келтіру өзіндік мақсатта болуы керек. Нормализацияның оң және теріс жақтарын дұрыс бағалау керек.
Енді екі мүмкін болатын жабу кілттерінің болуы қатынастың BCNF- болуына кедергі жасамайды. Ұйымдарда жоба құрамына сол бір тапсырмалар кіреді делік, әрбір қызметші бірнеше жобаға қатыса алады, бірақ әр жобада бір ғана тапсырманы орындайды.
Сурет 13.7. ҚЫЗМ_НОМ_ТАПС және ПРО_НОМ_ТАПС қатынас
айнымалысының мәндері
Сонда ҚЫЗМ_НОМ_ТАПС қатынасының айнымалысы 13.8 суретте көрсетілген FD жиынын құрады және ол сол суретте көрсетілген мәндерден тұра алады.
ҚЫЗМ_НОМ_ТАПС қатынасының үшінші нұсқасында мүмкін болатын жабу кілттері ({ҚЫЗМ_НОМ, ПРО_НОМ} және {ПРО_НОМ, ҚЫЗМ_ТАПС}) бар, бірақ бұл кілттер бір ғана детерминантты болғандықтан ол BCNF- орналасқан. ҚЫЗМ_НОМ_ТАПС қатынасының жаңару аномалиясы қасиетіне тән еместігін көру қиын емес.
Сурет 13.8. ҚЫЗМ_НОМ_ТАПС қатынасының үшінші нұсқасы
Қорытынды
Бұл дәрісте қатынастың үш қалыпты формаларын қарастырдық – екінші және үшінші қалыпты формаларды және Бойс-Кодд қалыпты формасы – олар екі жобаның шығыс қатынасына декомпозиция жолымен жүзеге асады, мұнда функционалды тәуелділік қасиеттерінің болуына байланысты бастапқы қатынастарда болған өзгеріс аномалиясы жоқ.
Тексері мен қосымша әрекеттер саны қысқарғандықтан деректер қоры сұлбасының нормализациясы деректер қоры операциясының жаңаруын деректер қорын басқару жүйесімен тиімді орындалуына себеп болады. Реляционды деректер қорын жобалау кезінде көп жағдайда деректер қорына кіретін барлық қатынастардың екінші қалыпты формада болуы талап етіледі. Жиі жаңартылатын деректер қорында үшінші қалыпты форманы қамтамасыз етуге тырысады. Бойс-Кодд қалыпты формасына аса көңіл бөлінбейді, себебі тәжірибеде қатынастың бірнеше құрамдас мүмкін болатын жабу кілттері жиі кездеспейді.
ҚЫЗМ_НОМ_ТАПС қатынасыныңбір ғана мүмкін кілті {ҚЫЗМ_НОМ, ҚЫЗМ_ТАПС}, бұл жағдайда да нетривиалды FD болмайды.