Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
18
Добавлен:
13.03.2015
Размер:
50.19 Кб
Скачать

Дәріс 10 Реляциялық деректер қорларды нормалау

Олардың арасындағы дәл мәлiметтердiң берiлуiнiң жасауы, байланыстар мәлiметтердiң логикалық үлгiнiң өңдеуiн түпкi мақсатты реляциялық ДҚБЖдағы деректер қоры жобалауда болып табылады және тиiстi шектеулер. Ең алдымен, ол үшiн қатынастардың қолайлы жиынын анықтау керек. Әдіс бұлай қолданылатын болса нармалдау (normalization)деп аталады. Нормалау атрибуттардың арасындағы байланыстардың анықтауынан бастайтын деректер қоры жобалауға өспелi жолдың варианты болады.

Нормалаудың мақсаттары

Нормалау - кейбiр ұйымдарға қойылған талаптарының негiзiнде тап қалған қасиеттерi бар қатынастардың жиынның жасалу әдiсі. Нормалау тап қалған нормалы форманың талаптарына оның (немесе сәйкессiздiк) сәйкестiгiнiң тексеруiн мақсаты бар қатынас үшiн тесттердiң тiзбегiнiң түрiнде кейбiр жиi орындалады.  Нормалауды процесс олардың (немесе жағдай Нфбк потенциалдық кiлттер) алғашқы кiлттерiнiң негiзiнде қатынасты белгiлеуге мүмкiндiк берген және олардың атрибут қазiргi болып функциялық тәуелдiлiгетiн үстiрт әдiс болып табылады. Деректер қоры жобалаушылар жаңартудың қалыпсыздықтарының болуы мүмкiн пайда болуы сақтап қалуға мүмкiндiк беретiн тап қалған нақты формаға дейiн реляциялық схеманың нормалауының мақсаты бар жеке қатынас қолданылатын тесттердiң жиындарының түрiнде нормалауды пайдалана алады. Реляциялық деректер қорының жобалауының түпкi мақсаты мәлiметтердiң артықшылығын минимизациялайтындай етiп және кестелердiң түр көрсетiлген қатынастардың физикалық сақтауы үшiн қажеттi жадтың көлемi қажеттi сайып келгенде қысқартылғандай етiп атрибуттарды топталуда және қатынаста болады. Функциялық тәуелдiлiктi Атрибуттардың арасындағы байланыс функциялық тәуелдiлiгу суреттейдi және нормалаудың негiзгi ұғымдарының бiрi болып табылады. Бөлiм бұл осы ұғымды анықтауды тура келедi, келесi - деректер қорының қатынастардың нормалауды процесстерi бар оның өзара байланысының сипаттамасы. Функциялық тәуелдiлiксiн - қатынас атрибуттардың арасындағы байланыс суреттейдi. Мысалы, егер қатынас болса. R, болатын атрибуттар және, атрибут не атрибуттан функционалдi тәуелдi болады сияқты белгi қояды), онда атрибутты әрбiр мән тек қана Втың атрибутын бiр мәнмен байланған. Атрибуттардың әрқайсылары және де және бiр немесе бiрнеше атрибуттардан тұра алады.

Қатынастың атрибуттарын (немесе семантикалық) мағыналы қасиет функциялық тәуелдiлiгу болып табылады. Қатынастың семантикасын қалай оның атрибуттары бiр-бiрiмен байлана алатынын көрсетедi, сонымен бiрге анықтайды кейбiр атрибут салған шектеулердi түрде атрибуттардың арасындағы функциялық тәуелдiлiктi. Атрибуттардың арасындағы тәуелдiлiк және диаграмманың суретте 5 тебетейiлген түрiнде көрсетуге схемалығуға болады. Детерминант-детерминантпен детерминант функциялық тәуелдiлiктi атрибуттарды атрибут немесе диаграммада нұсқағыш нышанның сол жағындағы функциялық тәуелдiлiгуге орналасқан топ деп аталады.

А

Атрибут В функционалы

А атрибутынана тәуелді

В

5-шi сурет - диаграмма функциялық тәуелдiлiктi

Атрибуттарды атрибут немесе нұсқағыш оның диаграммасында нышанның сол жағындағы орналасқан топ функционалдық тәуелдiлiк болған жағдайда (determinant ) детерминантпен деп аталады. Мысалы, 6.1 атрибут сурет В Концепцияның атрибутын детерминант болып табылады функциялық тәуелдiлiктi нормалауды процесстiң орталық ұғымы болып табылады. Нормалауды процесс Нормалау - бұл функциялық тәуелдiлiгуге қазiргi олардың (немесе жағдай НФБК потенциалдық кiлттер) алғашқы кiлттерiнiң негiзiнде қатынастардың үстiрт саралау әдiсi. Ол жеке қатынастардың тексеруi үшiн мәлiметтердiң барлық базасысы нормалауды керектi дәрежеге дейiн бiрыңғайлай алу үшiн сайып келгенде қолданыла алатын ережелердiң қатары қосады. Егер кейбiр талап қанағаттанбаса, онда қатынас озонды бұзатын осы талап әрбiрi нормалаудың барлық талаптарына қанағаттандыратын қатынаста болуы керек.

Нормалау көбiнесе әрбiрi белгiлi қасиет ие болатын кейбiр нормалы формаға сәйкес келетiн бiрнеше дәйектi түрде орындайтын кезеңдерде iске асады. Қатынастарының қалыбы нормалау барысында жаңартудың қалыпсыздықтары қарағанда барлық қаталдау және кем осал жерi болып қалыптасады. Жұмыс iстегенде мәлiметтердiң реляциялық үлгiсiмен қолайлы сапаның қатынастарының жасауы үшiн (1 НФ) бiрiншi нормалы форманың талаптарының тек қана қанағаттандыруы мiндеттi түрде маңызды түсiну. Барлық өңге формалар жобалаушылар өз тiлегiмен қолданыла алады. Алайда, жаңартудың қалыпсыздықтары, нормалауды құтылуға үшiн ЗНФ-қа дейiн минимумды сияқты орындауға ұсынылады. Суретте 6 нормалауды процесстiң схемасы көрсетiлген және әртүрлi нормалы формалардың арасындағы өзара байланыс көрсеткен. Бiр 1 НФ-i көруге болатын - қатынас 2 НФ-та бола алады, басқа 2 НФ - қатынас – ЗНФ-қа және тағы басқалар.

(ННФ ) бiрыңғайламалған форма - мәлiметтердiң бiр немесе бiрнеше қайталанатын топ болатын кесте. (1 НФ) бiрiншi нормалы форма - әрбiр жол және әрбiр бағананың қиылысуында тек қана бiр мәнде болатын қатынас. Мысалы, нормалауды процесс жолдары бар кестенiң көздiң қалыбыдан мәндердi енгiзудi үйреншiктi форманың қалыбынан қалыпқа деректердi өзгертуден және бағаналармен бастайды. Кесте бастапқы кезеңде бiрыңғайламалған (ННФ ) формада болады және кестемен ненормализованый жиi деп аталады. Бастапқы кестедегi (1 НФ) бiрiншi нормалы формаға бiрыңғайламалған кестенiң өрнектеулерi үшiн және мәлiметтердiң барлық қайталанатын топтары шеттетуге табу керек. Қайталанатын топпен бiр және кестенiң атрибутын жалғыз Ключевое мәнi үшiн бiрнеше мәндердiң бар болуы болуы мүмкiн кестенiң атрибуттары көп тұратын топ деп аталады.

Бiрыңғайламалған кестелерден қайталанатын топтардың ерекшелiктiң екi жолы бар болады.

Қайталанатын топтардың бiрiншi жолында қайталанатын мәлiметтерi бар жолдардың бос бағаналарында тиiстi мәлiметтердiң енгiзулерi жолымен шеттейдi. Басқаша айтқанда, сонымен бiрге бос орындар қайталамайтын мәлiметтердiң дубликаттарымен толтырылады. Бұл жол "Flattening" "Теңестiрумен" жиi деп атайды кесте. Сондықтан қатынас ендi деп аталатын кестенiң бұл әсерлерi алған нәтижеде әрбiр бағанасы бар әрбiр жолдың қиылысуындағы (немесе жалғыз) атомдық мәндерi ұстайды бiрiншi нормалы формада болады. Алған қатынасқа жолы кiм нәтижеде та жүрiсте ары қарай нормалау шеттеткен мәлiметтердiң кейбiр артықшылығы енгiзiледi.

Атрибуттарды бiр атрибут немесе топ екiншi жолда кiлттермен белгiленедi, бiрыңғайлалмаған кесте емес, содан соң қайталанатын топтар жеке қатынастарда бастапқы кестенiң кiлтiнiң көшiрмелермен бiргелерiмен алып қойып жайғастырылғанында. Бұдан әрi жаңа қатынастарда алғашқы кілттерде бекiтiледi.

Кейде бiрыңғайламалған - киюлер бiр бола алады. Екiсi бұл жолдар бiр жағынан бiрдей түзуiп, алған қатынастар екiншi жолдың қолданылатын жанында 1 НФ және облаға минимумдарда сияқты болады мәлiметтердiң кiшiрек артықшылықтарын бергенiн атап өту керек. Тегiстелген 1 НФ бiрiншi жолының таңдауында - қатынас, торыеге жүрiсте ары қарай нормалауды декомпозируется қатынас сол бола алар ма едi екiншi жол көмегiмен алынған.  Екiншi (2 НФ) нормалы форма Екiншi (2 НФ) нормалы форма ұғымда толық негiзделген төменде суреттелген функциялық тәуелдiлiктi. Егер атрибут атрибутты толық мәннен функционалдi тәуелдi болса және тәуелдiлiктiң А. Функциональнаяның атрибутын толық мәннiң iшкi жиыны неткен еш тәуелдi болмаса толығы функциялық тәуелдiлiксiн - атрибут кейбiр жағдайларда функционалдi атрибутқа тәуелдi толық деп аталады. Егер атрибут алып тастау қандай болмасын бұл тәуелдiлiктiң жоғалтуына алып келсе толық болып табылады функциялық тәуелдiлiктi. Жартылай функциялық тәуелдiлiктi мұндай тәуелдiлiк деп аталады. Екiншi (2 НФ) нормалы форма - қай бiрiншi нормалы формасында және әрбiр атрибутында болады алғашқы кiлттiң құрам кiрмейтiн толық бейнеленедi бұдан алғашқы кiлттер функциялық тәуелдiлiгетiн қатынас. 1 НФ нормалау - 2 НФ-тiң бiлiмi бар қатынастары - қатынастар жартылай тәуелдiлiктердiң нениясына устра қосады. Егер жартылай тәуелдiлiк ществуеттiң суды атрибуттарының арасындағы қатынас болса, онда функционалдi - тәуелдi атрибуттар олардың iшiнен бошалайды және олардың детерминантының көшiрмемен бiргесiмен жаңа қатынастарға жайғастырылады. (ЗНФ ) үшiншi нормалы форма 2 НФ бiр жағынан - кiшiрек дәрежедегi қатынас 1 НФ-ке қарағанда мәлiметтердiң артықшылығымен ие болады - қатынас, олар жаңартудың қалыпсыздықтарынан әлi де азап шеге алады.  Транзитивтiлiк тәуелдiлiк - атрибуттар үшiн егер, және қатынас кейбiр түрдiң тәуелдiлiктерi бар болады. Онда атрибут ( атрибут не шарт кезiнде функционалдi атрибуттан да тәуелдi болмайды, атрибуттан да) атрибуттан атрибут арқылы транзитивтiлiк тәуелдi болатынын айтады. Транзитивтiлiк тәуелдiлiк функционалдық атрибуттардың арасындағы болған жағдайда келесi функционалды тәуелдi стейлер пайда болатын висимостиға мұндай түрдiң сипаттамасы және болып табылады: Транзитивтiлiк тәуелдiлiк А, В, С. АВ және ВС. В осы жағдай Егер атрибут С-тың атрибуттарынан функционалдi тәуелдi болмаса және әдiл тек қана сол жағдайдағы В бұл бекiту атрибут арқылы iске асады.  (ЗНФ) үшiншi нормалы форма - бiрiншi және екiншi нормалы формаларда болатын және алғашқы кiлт кiрмейтiн транзитивтiлiк болар едi бұдан алғашқы кiлт функциялық тәуелдiлiгетiн атрибуттар алмайтын қатынас. 2 НФ нормалау - Знфтың бiлiмi бар қатынастары - қатынастар транзитивтiлiк тәуелдiлiктердiң жоюы қосады. Егер қатынаста атрибуттардың арасындағы транзитивтiлiк тәуелдiлiк бар болса, атрибуттар транзитивнозависимые такомалардың жағдайында олардың iшiнен бошалайды және олардың детерминантының көшiрмемен бiргесiмен жаңа қатынастарға жайғастырылады.

(НФБК) Бойса-Кодда нормалы форма Бұл тәуелдiлiктер жаңартудың қалыпсыздықтарының пайда болуына алып келетiндiгiнен, деректер қоры қатынастарды оның көзiнше жартылай немесе транзитивтiлiк тәуелдiлiктердi шығару үшiн сайып келгенде жобаланады. Осыған дейiн бiз екiншi және алуы үшiн алғашқы кiлттенгi жартылай және транзитивтiлiк тәуелдiлiктерiн табып шығаруға керек болатын үшiншi нормалы формалар анықтауды пайдаландық. Егер осындай болса анықтаулар дегенмен бұл қатынастың потенциалдық кiлттерiненгi сондай болып тәуелдiлiктерiн қаралмайды. (НФБК) Бойса-Кодда нормалы форманы есепке алады оның алғашқы кiлтiне ғана емес қатынастың барлық потенциалдық Ключиларына қатысатын функциялық тәуелдiлiктi. Оның ЗНФ-ы және НФБК жалғыз потенциалдық кiлтпен қатынастары үшiн баламалы болып табылады. (НФБК) Бойса-Кодда нормалы форма - қатынас НФБК әрбiр оның детерминанты потенциалдық кiлт болып табылғандасы сонда ғана болады.  НФБК қатынастың тиiстiлiгiнiң тексерулерi үшiн оның барлық детерминанттыңдарын табып және олар потенциалдық кiлттермен болып табылған көз жеткiзуге керек. Детерминант басқа атрибутқа толық функционалдi тәуелдi болатын атрибуттарды бiр атрибут немесе топ болып табылғанын ескертемiз. ЗНФ және НФБК-тiң аралығында айырмашылық функциялық тәуелдiлiгі. Егер атрибут алғашқы кiлт болып табылса, ЗНФ-қа рұқсат етiледi.

- қатынас, атрибут потенциалдық кiлт мiндеттi түрде болып табылады.

Нфбкке сонда бұл тәуелдiлiк қатынас атрибут тек қана осындайда рұқсат етiледi потенциалдық кiлт болып табылады. Әрбiр НФБК ЗНФ болып табылатындығы - қатынас, бiрақ әр түрлi емес ЗНФ НФБК болып табылады - қатынастан, Бойса-Кодда нормалы форма демек ЗНФ-тың формасының қатты болжамының Сяоларын келедi. Бұл тек қана осындайда болып шыға алатындығы:нан, Нфбктiң талаптардың бұзылуларында сирек өте болады, (немесе көп) екi құрама потенциалдық кiлттерде болады; бұл потенциалдық Ключиларды қайта жабады, яғни оған Сяоларды игерiседi, кем дегенде, бiр ортақ атрибут. (4НФ) төртiншi нормалы форма Айтылғандай жоғары, НФБК функциялық тәуелдiлiгуге шақырылған кез келген қалыпсыздықтар шеттетуге мүмкiндiк бередi. Дегенмен тәуелдiлiктiң тағы бiр түрi зерттеулер барысында айқындалған - сонымен бiрге қатынастардың жобалауында мәселе шақыра алатын (multi-valued dependency - MVD) көп мәндi тәуелдiлiк мәлiметтердiң артықшылығы бар. Көп мәндi тәуелдiлiктердiң қатынасындағы болуды мүмкiндiк үшiн бiр жол және бiр бағананың қиылысуындағы мәндердiң жиыны бар болу кейбiр рұқсат етiлмейтiн 1 НФК-е бастапқы кестелердiң келтiруi салдарынан пайда болады. Мысалы, жолдардың қайшылық емес күйiнiң табыстары үшiн екi көп мәндi атрибуттарды қатынаста болған жағдайда әрбiр мәннiң оларындағы атрибуттардың бiрлерiнiң басқа атрибутты әрбiр мәнi бар тiркесiнде қайта айтуға керек. Шектеудi сол сияқты түр көп мәндi тәуелдiлiктi тудырады және мәлiметтердiң артықшылығына алып келедi.  Көп мәндi тәуелдiлiк - атрибут қазiргi көп мәндi тәуелдiлiкке жағдайында және қатынас кейбiр, әрбiр мән үшiн атрибуттың мәндерiнiң жиынында болады және атрибуттардың жиындар бұл кiретiн мәндерi С.дегенмен атрибутының мәндерiнiң жиыны және бiр-бiрiмен тәуелдi болмайды. Атрибуттардың арасындағы көп мәндi тәуелдiлiк, және қатынас кейбiр бәрiнен алыс төмендегiше белгi қояды. Көп мәндi тәуелдiлiк Найдың тривиальсi қосымша сияқты анықтала алады немесе қарапайым емес. Мысалы, егер атрибут атрибутты iшкi жиын болып табылса немесе және = R болса Rның киюiнен кейбiр көп мәндi тәуелдiлiк белгiлi сияқты анықталады. Егер еш бiр болса, керiсiнше, көп мәндi тәуелдiлiк қарапайым емес сияқты анықталады, басқа шарт та орындалмайды. Белгiлi көп мәндi тәуелдiлiк, осы қатынасқа ешқандай да шектеулерi үстiне қоймағанында емес, қарапайым емес - үстiне қойғанында. (4 НФ) төртiншi нормалы форма - қарапайым емес көп мәндi тәуелдiлiктерде болмайтын Бойса-Кодданы нормалы формадағы қатынас. 4 НФКЕ болғандықтан - қатынастар қарапайым емес көп мәндi тәуелдiлiктер жоқ, мәлiметтер сондықтан артықшылық да жоқтан, (4 НФ) төртiншi нормалы форма Бойса-Кодданың нормалы формасының бiр түрi қаталдау болып табылады. НФБК нормалау - 4 НФ-тiң алуы бар қатынасы - қатынастар бiр немесе бiрнеше детерминанттардың бiр немесе бiрнеше қатысушы көшiрмемен бiргенi атрибуттарды көп мәндi тәуелдiлiктердегi НФБК - ерекшелеу арқылы қатынастан жаңа қатынасқа көп мәндi тәуелдiлiктiң жоюында болады. (5НФ) бесiншi нормалы форма Екi басқа қатынастарының алған киюлерiнен қатынастар кез келген декомпозициясының жанында Қосу қасиетiмен шығынсыз ие болады. Бұл демек киюден бастапқы түрдегi бұрынғы қатынас жаңадан қосып алуға болуға алған. Дегенмен қатынас керек болады екi қатынас бетер көп жағдайлар болады. Қажеттiлiк (5 НФ) бесiншi нормалы форма көмегiмен шеттейтiн жағдайларында Қосу тәуелдiлiгi есепке алуға пайда болады.  Қосу тәуелдiлiгi - операция арқылы табиғи Қосудың қатынастары жалған жолдардың генерациясын декомпозированных керi Қосуда шақыратын декомпозицияның қасиетi. Тура декомпозицияның проекциясы операциясы арқылы қолданылатын әдiсi қатынастардың бөлiктеуiнде мүлде анықталады. Бастапқы қатынас алған қатынастардың керi Қосуында қалпына келтiруге болатындай етiп туралы жеке алғанда қамына кiрiсу керек. Мұндай декомпозиция Қосуы бар декомпозициямен бойынша бастапқы қатынастың барлық мәлiметтерi оның орындауында сақталынатын (немесе ұтылыссыз немесе қосу ) шығынсыз сонымен бiрге қосымша жалған жолдардың жасауын шығарылады деп аталады. Дегенмен шығынсыз бiлiммен декомпозицияны орындауға керек болады екi қатынастар бетер көп жағдайлар болады. Қосу тәуелдiлiгi және (5 НФ) бесiншi нормалы форманың бұл жағдайда қолданылатын ұғымдары тап. (5 НФ) бесiншi нормалы форманың анықтауы (5 НФ) бесiншi нормалы форма - қатынас қосу тәуелдiлiктерiсiз. Сонымен бiрге жобалық - жалғағыш нормалы формамен деп аталған (5 Нф) бесiншi нормалы форма немесе (project-join normal form - PJNF) ПСНФ мұндай формадағы қатынас Қосу тәуелдiлiктерiн алмайтынын бiлдiредi.

Негiзгi әдебиет: [222-256 ] Бақылау сұрақтары: 1. Өзiн несi қатынастардың нормалауын ұсынады және ол үшiн не арналған? 2. Түсiнiк берiлiңiз функциялық тәуелдiлiктiк, детерминант. 3. Неге нормалауды процессте болады ма? 4. Неге қатынас бiрыңғайламалған формада болатында нормалауды 1 форма болады ма? 5. Екiншi нормалы форма түсiнiк берiлiңiз, толық функциялық тәуелдiлiктiк. 6. үшiншi нормалы форма, транзитивтiлiк тәуелдiлiк түсiнiк берiлiңiз. 7. Қатынас қашан Бойса-Кодда нормалы формада болады? 8. Төртiншi нормалы форма, көп мәндi тәуелдiлiк түсiнiк берiлiңiз. 9 бесiншi нормалы форма және Қосу тәуелдiлiгi түсiнiк берiлiңiз

Соседние файлы в папке Лекция