1 / 36

RELACIJSKO OBLIKOVANJE NORMALIZACIJA

RELACIJSKO OBLIKOVANJE NORMALIZACIJA. Dobro oblikovana relacijska baza podataka je skup podataka koji: nije redudantan (nema zalihosti) posjeduje semantički integritet (ne pokazuje anomalije pri unosu, brisanju ili promjeni podataka) Redudancija

alec-travis
Télécharger la présentation

RELACIJSKO OBLIKOVANJE NORMALIZACIJA

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. RELACIJSKO OBLIKOVANJENORMALIZACIJA

  2. Dobro oblikovana relacijska baza podataka je skup podataka koji: nije redudantan (nema zalihosti) posjeduje semantički integritet (ne pokazuje anomalije pri unosu, brisanju ili promjeni podataka) Redudancija govori da se istovrsni podatak memorira na više mjesta (to se smatra nedostatkom jer se obrada redudantnih podataka mora istovremeno obaviti na više mjesta) posljedično se javljaju anomalije pri unosu, brisanju i promjeni podataka zbog moguće nekonzistentnosti istog podatka, koji se memorira više puta, mogu se pojaviti i neispravni odgovori na zadani upit

  3. Anomalija unosa - znači nemogućnost unosa podataka novog trgovca sve dok se istovremeno ne unesu podaci partnera s kojim se radi. Anomalija brisanja – vezana uz mogućnost potpunog gubljenja podataka. Anomalija promjene – znači otežanu promjenu podataka koja se mora istovremeno obaviti na više mjesta. Dobro oblikovana relacijska baza podataka treba biti u prikladnoj normalnoj formi koja definira ograničenja podataka u relacijama i time osigurava konzistentnost relacija i njihovo jednostavno korištenje, tj. izbjegava moguće anomalije.

  4. Metode normalizacije horizontalna normalizacija vertikalana normalizacija Horizontalna normalizacija koristi se operacijama selekcije i unije relacija se rastavlja na podskupove n-torki koji zadovoljavaju određene uvjete, a ti podskupovi n-torki zovu se fragmenti relacije Obično se koristi kod izrazito velikih relacija radi optimalnog smještaja podataka na vanjskim nositaljima

  5. Vertikalna normalizacija izvodi se transformacijom relacijske sheme kod ove normalizacije koriste se operacije prirodnog pridruživanja i operacije projekcije Razlikujemo dvije varijante ove tehnike: -normalizacija dekompozicijom -normalizacija sintezom. Normalizacija dekompozicijom – postupak počinje od nenormalizirane relacije i izvodi se u koracima od kojih svaki mora biti reverzibilan Normalizacija sintezom – polazi od skupa atributa i ovisnosti zadanih na tom skupu atributa te konstruira relacijske sheme u traženoj normalnoj formi direktno.

  6. Normalne forme Praktičnu važnost ima šest normalnih formi temeljenih na teoriji normalizacije. Normalne forme su od nižih (blažih) prema višim (strožim): Prva normalna forma (1NF) Druga normalna forma (2NF) Treća normalna forma (3NF) Boyce-Coddova normalna forma (BCNF) Četvrta normalna forma (4NF) Peta normalna forma (5NF)

  7. Normalizacija je postupak prevođenja jedne ili skupa relacija iz niže u višu normalnu formu, a služi se operacijama prirodnog spajanja i projekcije Teorija normalizacije definirala je ograničenja pomoću kojih se definiraju normalne forme, a za njihovo definiranje važne su: -funkcijska zavisnost -višeznačna zavisnost -spojna zavisnost.

  8. Funkcijska zavisnost najjednostavnije ograničenje ako su X i Y skupovi atributa relacije R, relacija R zadovoljava uvjet funkcijske zavisnosti X → Y ako u svakom trenutku za svaku X-vrijednost x postoji samo jedna Y-vrijdnost y Generalizira pojam ključa jer ključ relacije funkcijski određuje neključne atribute ako su u relacijskoj shemi definirana određena ograničenja, provjerom se može utvrditi da li ih relacija zadovoljava odnosno da li je relacija legalna.

  9. Primjer: Neka su u relacijskoj shemi PARTNER1 (PARTNER_SIFRA, PARTNER_NAZIV, PARTNER_ADRESA, MB) zadane funkcijske zavisnosti PARTNER_SIFRA → PARTNER_NAZIV PARTNER_SIFRA → PARTNER_ADRESA PARTNER_SIFRA → MB Vidimo na slici da ta relacija nije legalna jer ne zadovoljava funkcijske vrijednosti (poslovni partner s brojem 30 ima dva naziva)

  10. Postoji skup aksioma koji potpuno definira svojstva funkcijskih zavisnosti. Osnovni aksiomi su: F1. Refleksivnost: ako je Y podskup od X, tada X → Y F2. Proširenje: ako X → Y, tada XZ→Y F3. Pseudotranzitivnost: ako X → Y i YZ→ W, tada XUZ→W Ostali aksiomi, izvedeni od osnovnih: F4. Tranzitivnost: ako X→ Y i Y→ Z, tada X→ Z F5. Aditivnost: ako X→ Y i Y→ Z, tada X→ YZ F6. Dekompozicija: ako X→ YZ, tada X→Y.

  11. Dekompozicija Dekompozicija relacije R zamjena je relacije R s dvije relacije R1 i R2, koje mogu imati zajedničke atribute R1.X i R2.X. Ako: SPOJ(PROJEKCIJA(R,R1),PROJEKCIJA(R,R2),R1.X*R2.X)=R relacija R je dekomponirana bez gubitka informacija, tj. dekompozicija je pouzdana (reverzibilna) -postoje i nepouzdane (nereverzibilne) dekompozicije, u kojima postoji gubitak informacija

  12. Pogledajmo shemu: RADNIK (MB, ODJEL, SEKTOR) Značenja “radnik s matičnim brojem radi u odjelu i sektoru”. u relaciji vrijede funkcijske zavisnosti: MB→ ODJEL, SEKTOR što je drugi način pisanja za: MB→ ODJEL, MB→ SEKTOR i ODJEL→ SEKTOR

  13. Primjer dekompozicije -projekcije relacije RADNIK na relacije ODJEL i RADNIK1 ODJEL=PROJEKCIJA(RADNIK,ODJEL,SEKTOR) RADNIK1=PROJEKCIJA(RADNIK,MB,ODJEL) RADNIK 1 SPOJ(ODJEL,RADNIK1, ODJEL.ODJEL*RADNIK1.ODJEL) ODJEL Dekompozicija je pouzdana jer vrijedi SPOJ(ODJEL,RADNIK1,ODJEL.*RADNIK1.ODJEL)=RADNIKtj. prirodni spoj relacija ODJEL i RADNIK1 jednak je početnoj relaciji RADNIK.

  14. Dekompozicija relacije R na dvije relacije R1 i R2 pouzdana je ako vrijedi R1∩R2→ R1 ili R1∩R2→ R2, odnosno ako je presjek skupova atributa relacija R1 i R2 ključ u R1 ili R2. To se može reći i na drugi način: Ako u relaciji R vrijedi funkcijska zavisnost X→ Y, R se dekomponira na relacije R1 i R2 tako da R1=XUY i R2=R-Y. Dekompozicija može biti i irevirzibilna (nije pouzdana) ili se mogu izgubiti informacije o funkcijskoj zavisnosti.

  15. Drugi primjer dekompozicije čine projekcije relacije RADNIK na relacije ODJEL i RADNIK2 ODJEL=PROJEKCIJA(RADNIK,ODJEL,SEKTOR) RADNIK2=PROJEKCIJA(RADNIK,MB,SEKTOR) SPOJ(ODJEL,RADNIK2,ODJEL.SEKTOR*RADNIK2.SEKTOR) ODJEL RADNIK2

  16. Dekompozicija nije pouzdana jer vrijedi: SPOJ(ODJEL,RADNIK2,ODJEL.SEKTOR*RADINK2.SEKTOR)≠RADNIK (prirodni spoj relacija ODJEL i RADNIK2 nije jednak početnoj relaciji RADNIK) Treći primjer dekompozicije pokazuje da može doći do gubljenja informacija. RADNIK3 RADNIK4

  17. Normalne forme temeljene na funkcijskim zavisnostima Prva normalna forma Relacija se nalazi u prvoj normalnoj formi (1NF) ako je svaki njezin atribut atomiziran, što znači da sadrži samo jednu vrijednost, nikako više vrijednosti. Svi neključni atributi su funkcijski zavisni o ključu relacije. Po definiciji, svaka je relacija u 1NF, a nenormalizirana relacija koja nije u 1NF ne može sezvati relacijom, nego samo tablicom.

  18. TRGOVAC_PARTNER_0 – Nenormalizirana relacija (tablica)

  19. Relacija TRGOVAC_PARTNER_1 u 1NF -njezina redudancija je velika, pojavljuju se anomalije unosa, brisanja i promjene podataka

  20. Druga normalna forma rješava problem djelomične funkcijske zavisnosti Neka su X i Y skupovi atributa relacije. Relacija zadovoljava potpunu funkcijsku zavisnost X→ Y ako je Y funkcijski zavisan od X, ali ne i od bilo kojeg podskupa od X. Relacija se nalazi u drugoj normalnoj formi (2NF) ako su svi neključni atributi potpuno funkcijski zavisni o bilo kojem ključu relacije. Pretvorba relacije iz 1NF u 2NF obavlja se prema pravilima pouzdane dekompozicije. Izdvajaju se svi atributi koji djelomično zavise o ključu, zajedno s dijelom ključa po kojem zavise, u novu relaciju.

  21. Relacija TRGOVAC_PARTNER_1 nije u 2NF. Zbog toga se dekomponira na relacije TRGOVAC_2 i TRGOVAC_PARTNER_2, koje su u 2NF. TRGOVAC_2 TRGOVAC_PARTNER_2

  22. Treća normalna forma Rješava problem kada imamo nepotebnu (redudantnu) funkcijsku zavisnost relacija se nalazi u trećoj normalnoj formi ako ni jedan neključni atribut nije tranzitivno zavisan o bilo kojem ključu relacije svaki neključni atribut mora zavisiti o cijelom ključu i ni o čemu drugom pretvorba relacije iz 2NF u 3NF obavlja se prema pravilima pouzdane dekompozicije izdvajaju se svi neključni atributi između koji postoji fukcijska zavisnost u posebnu relaciju

  23. Ovdje imamo prikazane relacije TRGOVAC_3 i ODJEL koje su dobivene dekompozicijom relacije TRGOVAC_2 TRGOVAC_3 ODJEL

  24. Boyce-Coddova normalna forma Relacija je u Boyce-Coddovoj normalnoj formi (BCNF) ako sve funkcijske zavisnosti relacije proizlaze iz njezinog ključa. Relacija koja ne udovoljava BCNF

  25. U relaciji TRGOVAC_POSAO vrijede funkcijskezavisnosti:MB,POSAO_ŠIFRA→PARTNER_ŠIFRA i PARTNER_ŠIFRA→ MBjer “trgovac (MB) veže određeni posao(POSAO_ŠIFRA) uz jednog partnera(PARTNER_ŠIFRA)”,a “partner (PARTNER_ŠIFRA) je vezan samo zajednog trgovca (MB)”. U relaciji zapažamo da je partner broj 75 vezan uztrgovca s matičnim brojem 5 u dvije n-torke. Budući da vrijedi PARTNER_ŠIFRA → MB,informacija bi trebala biti zabilježena samo jednom. Dekompozicijom mogu napraviti dvije nove relacije: PARTNER_TRGOVAC(PARTNER_ŠIFRA,MB), u kojoj vrijediPARTNER_ŠIFRA→ MB i PARTNER_POSAO (PARTNER_POSAO)u kojoj vrijedi:PARTNER , POSAO→0. Ovim potupkom izgubili smo funkcijsku zavisnost MB,POSAO_ŠIFRA→PARTNER_ŠIFRA. Zbog toga je bolje zadržati relaciju:TRGOVAC_POSAO u 3NFnego imati dvije relacije uBCNF-u.

  26. Višeznačna zavisnost Ako su X i Y disjunktni skupovi atributne relacije R, a njihov komplement je Z=R-XY, relacija Rzadovoljava višeznačnu zavisnost X→→Y ako uzdvijepromatrane n-torke xy1z1 i sadrži n-torke xy1z2i xy2z1. Višeznačna zavisnost postoji u relacijama koje opisuju dvije nezavisne veze tipa M:M. Relacija OSOBA(MB,TELEFON,PROJEKT) opisuje “osoba (matični broj) koristi telefon i radi na projektu.”

  27. Značenje: Neka osoba koristi telefon i radi na višeprojekataistovremeno. Kakobrojevi telefona i projekta nisu ni u kakvommeđusobnom odnosu, relacijaOSOBA sadrži ovevišeznačnezavisnosti: MB višeznačno određuje TELEFON, tj.MB→→TELEFON,štoznači da jedna osoba nema telefon ili ima jedan ili više telefona, MB višeznačno određuje PROJEKT, tj.MB→→PROJEKT, što znači da osoba ne radi na projektu ili radi na jednom ili više projekata.

  28. Iz definicije se zaključuje da ne postoji nikakav odnos atributa TELEFON s ostalim atributima (PROJEKT) i obrnuto. U relaciji OSOBA ne vrijedi ni jedna funkcijska zavisnost, tj. Relacija je u BCNF. OSOBA Relacija OSOBA s višeznačnom zavisnošću može se pouzdano i bez gubitka informacija dekomponirati na dvije relacije

  29. Dekompozicija relacije OSOBA na relacije OSOBA1 i OSOBA2 OSOBA 1 OSOBA 2 OSOBA 3 je prirodni spoj relacija OSOBA 1 i OSOBA 2 koja je jednaka relaciji OSOBA, što dokazuje da je dekompozicija pouzdana OSOBA 3

  30. Četvrta normalna forma Relacija u kojoj je zadan skup funkcijskih i višeznačnih zavisnosti je u četvrtoj formi (4NF) ako je svaka višeznačna zavisnost X→→ Y trivijalna ili je X ključ relacije. Relacije OSOBA1 i OSOBA2 su u 4NF, jer u njima vrijede samo trivijalne višeznačne zavisnosti. OSOBA 1 OSOBA 2

  31. Spojna zavisnost Relacija R zadovoljava spojnu zavisnost *(R1,R2,...,Rn) ako se pouzdano (reverzibilno) dekomponira na {R1,R2,...,Rn}. Relacija R(X,Y,Z) s višeznačnom zavisnošću X→→Y/Z može dekomponirati na R1(X,Y) i R2(X,Z), a to znači da istovremeno vrijedi spojna zavisnost *(XY,XZ). Zaključujemo da je višeznačna zavisnost specijalan slučaj spojne zavisnosti. Spojna zavisnost je trivijalna ako je R=R1 ili R=R2.

  32. Peta normalna forma Relacija R u kojoj je zadan skup funkcijskih i spojnih zavisnosti je u petoj normalnoj formi (5NF) ako je svaka spojna zavisnost *(R1,R2,...,Rn) trivijalna ili je svaki Ri ključ u R. Relacija je u 5NF ako su iz nje izbačene sve spojne zavisnosti osim trivijalnih (ne može se više pouzdano dekomponirati). Relacije koje opisuju ternarnu vezu ne mogu se pouzdano dekomponirati (pretvoriti u više binarnih veza).

  33. Primjer KLASA_PREDAVANJA STUDENT_PREDMET STUDENT_NASTAVNIK PREDMET_NASTAVNiK KLASA_PREDAVANJA_1

  34. Primjer KLASA_PREDAVANJA(MB,P_NAZIV,IME), prikazan na tablicama (tablica KLASA_PREDAVANJA odgovara ternarnoj vezi) Ona znači: student (MB) sluša predmet (P_NAZIV) kod nastavnika (IME). Kad ju dekomponiramo, dobijemo: “student sluša predmet”, “student sluša nastavnika” i “predmet predaje nastavnik”. Operacijom prirodnog spajanja, one se spoje u KLASA_PREDAVANJA_1. To pokazuje da je relacija KLASA_PREDAVANJA u 5NF jer se više ne može pouzdano komponirati.

  35. Zaključak Normalne forme: • 1NF-otklanja višestruke vrijednosti atributa • 2NF-otklanja redudantne podatke • 3NF i BCNF-otklanjaju tranzitivno zavisne atribute • 4NF-odjeljuje nezavisne veze M:M • 5NF-odjeljuje semantički povezane n-arne veze

  36. Hvala na pažnji!!!

More Related