140 likes | 258 Views
Testiranje reverzibilnosti dekompozicije relacijske sheme. Dr.sc. Vladimir Mateljan, red. prof. Pročelnik Odsjeka za informacijske znanosti Predstojnik katedre za društveno-humanističku informatiku Filozofski fakultet u Zagrebu Seminar: Varaždin 2009. Uvod.
E N D
Testiranje reverzibilnosti dekompozicije relacijske sheme Dr.sc. Vladimir Mateljan, red. prof. Pročelnik Odsjeka za informacijske znanostiPredstojnik katedre za društveno-humanističku informatiku Filozofski fakultet u Zagrebu Seminar: Varaždin 2009
Uvod • Normalizacija: je metoda oblikovanja baze podataka. Osnovni ciljevi: eliminaclja anomalija održavanja baze I svođenje redundancije u bazi na kontroliranu redundanciju. • Normalizacija sintezom: polazi od skupa funkcijskih zavisnosti zadanog na skupu atributa i direktno konstruiraskup relacijskih shema u trećoj normalnoj formi. • Konačan model baze podataka proizlazi Iz skupa funkcijskih zavisnost koji je zadan na skupu atributa. Ako u takvim modelima koji proizlaze iz skupa funkcijskih zavisnosti vrijede Rissanenovi uvijeti reverzibilnosti, onda je dekompozicija početne relacijske sheme reverzibilna, odnosno tokom dekompozicije nije došlo do gubitka informacija.
U radu ćemo pokazati da: Bernsteinovim algoritmom za normalizaciju sintezom, koji polazi od skupa funkcijskih zavisnosti, mogu nastupiti slučajevi reverzibilne dekompozicije, a da Rissanenov uvijet nije ispunjen. • Koristit ćemo: 1. Bernsteinov algoritam za normalizacijusinezom, 2. Tabelarni algoritam (Aho, Berl, Ullman, ) za provjeru reverzibilnosti dekompozicije relacijske sheme i 3. Rissanenove uvjete nezavisnosti relacijskih shema.
Bernsteinov algoritam za vertikalnu normalizaciju sintezom Algoritam za normalizaclju sintezom, definirao je Bernstein. i on glasi: • Ulaz : Skup funkcijskih zavisnosti F. • Izlaz : Komplet relacijskih shema u 3NF. Postupak: • Nađi atribut Z tako da vrijedi ZR. • Konstruiraj funkcijsku zavisnost RZ i dodaj je u F. • Nađi reducirani neredundantni prstenasti pokrivač G za prošireni F. • Za svaku SFZ (X1,X2,...,Xn)Y u G konstruiraj relacijsku shemu Ri(X1X2...XnY)s ključevima X1,X2,...,Xn. • Izbaci atribut Z iz relacijske sheme Ri. • Ispiši skup relacijskih shema u 3NF.
Tabelarni algoritam za provjeru reverzibilnosti (Aho,Beri,Ullman): Reverzibilnost dekompozicije relacijske sheme R može se provjeriti algoritmom Aho_Beri_Ullman. Taj algoritam glasi: • Neka je R(A1,A2,...,An) relacijska shema, a X i Y podskupovi atributa u R. Neka je F skup funkcijskih zavisnosti na R, i neka je skup relacijskih shema R1,R2,...,Rn dekompozicija od R. • Da bi provjerilije li dekompozicija relacijske sheme R bez gubitka informacija, konstruirati ćemo tabelu s n stupaca i k redova, tako da i-ti stupac tabele odgovara atributu Ai u relacijskoj shemi, a j-ti red tabele odgovara elementu dekompozicije Rj. U i-ti stupac j-tog reda upisati ćemo znak ai ako vrijedi AiRj, odnosno znak bij ako vrijedi AiRj.
Za svaku zavisnost XY u F modificirati ćemo sadržaj tabele. U okviru toga ćemo za svaki atribut Ai za koji je AiX, potražiti u tabeli redove u kojima je u stupcu Ai upisan znak ai. Ako nademo dva ili više takvih redova. izjednačiti ćemo u njima znakove upisane u stupcima Am za koje vrijedi AmY Pri tome, ako je u bar jednom od tih redova upisan znak am, upisati ćemo taj znak i u sve ostale takve redove. Ako su u svim takvim redovima tabele za atribut Am upisani znakovi bmj upisati ćemo bilo koji od tih znakova u sve ostale redove za atribut Am. Ako je nakon ove modifikacije sadržaja tabele jedan ili više redova u cjelosti popunjen a-ovima, dekompozicija relacije R je reverzibilna, odnosno bez gubitka informacija.
Rissanenov uvjet nezavisnosti komponenata Normalizacijom podataka, relacija se dekomponira na više projekcija. Pri tome ne smije doći do gubitka informacija, odnosno mora biti moguće operacijom prirodnog pridruživanja nad projekcijama uspostaviti polaznu relaciju. Za ovakvu dekompoziciju kažemo da je reverzibilna. Skup projekcija koje zadovoljavaju ovaj zahtjev Rissanen naziva nezavisnim komponentama relacije. • Prema Rissanenunezavisne komponente relacije moraju ispunjavati sljedeće kriterije: R=R1R2 (R1R2R1 )(R1R2R2)
Rječima ove kriterije možemo izraziti na slijedeći način: • Unija atributa u projekcijama relacije mora biti jednaka relacijskoj shemi. • Dekompozicija relacijske sheme R na relacijske sheme R1 i R2 je reverzibilna ako presjek R1 i R2 sadrži ključ bar jedne od njih. Zbog jednostavnosti i brzine primjene Rissanenovi kriteriji su u praksi zamijenili nešto kompliciraniji Aho_Beri_Ullmanov tabelarni algoritam.
Tvrdnja: Neka je F={X1Y1,X2Y2,,...,XnYn} skup funkcijskih zavisnosti nad skupom atributa R. Ako F sadrži FZXrYr i XsYs, rs za koje vrijedi: (a) (Xr Yr)Xi=, za svako ir (b) Xr(XrYs)=W, za bar jedan sr, onda se Bernsteinovim algoritmom za normalizaciju sintezom dobiva skup relacijskih shema koji sadrži relacijsku shemu Rr(XrYr) s ključem Xr, koja nije povezana niti s jednom od preostalih relacijskih shema dobivenih u postupku normalizacije. Dokaz tvrdnje Drugim rječima: Ako skup funkcijskih zavisnosti F nad skupom atributa R zadovoljava (a) i (b) onda se Bernsteinovim algoritmom za normalizaciju sintezom dobiva skup relacijskih shema koje ne zadovoljavaju Rissanenov test reverzibilnosti.
Primjer: • Na slijedećem primjeru pokazat ćemo da dekompozicija može biti reverzibilna i uslučaju da ne zadovoljava Rissanenove kriterije. Neka je F={CEDF, AFGBH,EICD,DC,CDEI}, skup funkcijskih zavisnosti, nad skupom atributa R={A,B,C,D,E,F,G,H,I}. • Unija lijeve i desne strane FZ AFGBH disjunktna je s lijevim stranama preostalih funkcijskih zavisnosti skupa F iz čega slijedi da su zadovoljeni uvijeti (a) prethodnog teorema. Kako je atribut F sadržan u lijevoj strani FZ AFGBH i u desnoj strani FZ CEDF slijedi da je zadovoljen i uvijet (b) prethodne tvrdnje. Prema tvrdnji zaključujemo da će se normalizacijom dobiti skup relacijskih shema, koji će sadržavati relacijsku shemu Rr(AFGBH) s ključem AFG i Rr neće biti povezana stranim ključem niti sa jednom od preostalih relacijskih shema koje će biti dobivene normalizacijom.
Normalizacijom relacijske sheme R, Bernsteinovim algoritmom, dobivamo skup relacijskih shema u trećoj normalnoj formi: Postupak R1(CDEFI) s ključevima CE, EI, D R2(ABFGH ) s ključem AFG R3(AEGI) s ključem AEGI • Međusobni presjeci relaciiskih shema su: 1. R1R2=F , ne sadrži ključ, niti iz R1, niti iz R2 2. R1R3=EI, sadrži ključ iz R1 3. R2R3=AG, ne sadrži ključ niti iz R2 niti iz R3 • Iz 1. i 3. zaključujemo da relacijska shema R2 nije povezana, niti s R1 niti s R3. Iz 2. zaključujemo da je relacijska snema R1 povezana s R3. Prema Rissanenovim uvijetima sljedi da dekompozicija početne relacijske sheme R, nije reverzibilna, odnosno da je u toku dekompozicije došlo do gubitka informacija.
Aho_Beri_Ullman Prema algoritmu Aho_Beri_Ullman dekompozicija je reverzibilna. Postupak • Dobili smo slijedeći rezultat: • Brema algoritmu Aho, Beri, Ullmana dekompozicija je reverzibilna. • Rissanenovo test reverzibilnosti dekompozicije nije zadovoljen (iako je dekompozicija reverzibilna). Dakle, Rissanenov test nije bio nužan u dokazu reverzibilnosti dekompozicije relacijske sheme R. • U navedenom primjeru Rissanenov test nije zadovoljen, jer zadani skup funkcijskih zavisnosti F zadovoljava pretpostavke (a) i (b), prethodno formulirane i dokazane tvrdnje.
Zaključak Algoritmom Aho_Beri_Ullman moguće je dokazati da je polazni skup informacija sačuvan. Pomoću Rissanenovog kriterija nezavisnosti komponenata moguće je dokazati to isto na daleko jednostavniji i brži način. U postupku normalizacije sintezom može se dobiti skup relacijskih shema koje su prema algoritmu Aho, Beri Ullmana reverzibilne, a ne zadovoljavaju Rissanenov test reverzibilnosti. Prema tome, može se zaključiti da Rissanenov test nije nužan za dokaz reverzibilnosti dekompozicije. Literatura