ullman086 (2)

ullman086 (2)



178 3 RF.I ACYJNY MODEL DANYCH

nazwaStudia adresSrudia

Fox

Disney

Paramount


Holywood Buena Vista Hollywood

RYSUNEK 3.36 Relacja S t ud i oFi 1 jr.o we 2

W poprzednich przykładach wystarczało jedno dobrze przemyślane wykonanie dekompozycji, aby utworzyć zbiór relacji, zapisanych w postaci BCNF. Nie zawsze jednak da się to tak zrobić.

PRZYKLAJ) 3.38

Można uogólnić przykład 3.37 w ten sposób, aby otrzymać łańcuch zależności o długości większej niż dwa. Rozważmy następujący schemat relacji:

{tytuł, rok, nazwaStudia, prezes, adrosFrezesa}

Każda krotka zawiera dane dotyczące tytułu filmu, roku jego produkcji, nazwy studia, prezesa studia oraz adresu prezesa studia. A oto trzy zależności funkcyjne, które z założenia zachodzą w tej relacji:

tytuł rok —» nazwaStudia nazwaStudia —> prezes prezes -► adresPrezesa

Jedynym kluczem jest tutaj para {tytuł, rok}. A zatem dwie ostatnie zależności naruszają warunek BCNF. Dekompozycję możemy zacząć na przykład od zależności:

nazwaStudia —► prezes

Najpierw do prawej strony tej zależności funkcyjnej powinniśmy dołączyć wszystkie pozostałe atrybuty z domknięcia atrybutu nazwaStudia. Stosując regułę przechodniości do zależności nazwaStudia prezes oraz prezes —► adresPrezesa, otrzymujemy nowrą zależność:

nazwaStudia —» adresPrezesa

Łącząc dwie zależności z atrybutem nazwaStudia po lewfej stronie, otrzymujemy:

nazwaStudia —* prezes adresPrezesa

Ta zależność z kolei ma już maksymalnie rozwiniętą prawą stronę, a więc stosujemy dekompozycję i otrzymujemy w ten sposób dwa schematy:

{tytuł, rok, nazwaStudia)

{nazwaStudia, prezes, adresPrezesa}

Pierwsza z nich jest już w postaci BCNF. Jednakże w drugiej relacji atrybut nazwaStudia stanowi jedyny klucz, a obowiązuje zależność

prezes —► adresPrezesa

co stanowi naruszenie warunku BCNF. Trzeba zatem ponownie zastosować dekompozycję w sposób rozszerzający, dołączając do prawej strony atrybut prezes. W wyniku tego wszystkie trzy relacje są już w postaci BCNF:

{tytuł, rok, nazwaStudia}

{nazwaStudia, prezes}

{prezes, adresPrezesa}

W praktyce regułę dekompozycji stosuje się tak długo, jak długo wszystkie schematy relacji przyjmą postać BCNF. Możemy być pewni uzyskania pomyślnego wyniku w skończonej liczbie kroków, ponieważ zawsze przy zastosowaniu dekompozycji do relacji R oba schematy wynikowe mają mniej atrybutów' niż R. Gdy dojdziemy już do relacji z dwoma atry butami, jak już przekonaliśmy się w przykładzie 3.35, to relacja z pewnością będzie w postaci BCNF.

Aby odpowiedzieć na pytanie, dlaczego w wyniku dekompozycji powstają coraz mniejsze schematy, załóżmy, żc dana jest zależność A\A2... A„ —* B,B2...Bm, która narusza warunek BCNF. Możemy również przyjąć, że ta zależność jest już w postaci rozszerzonej i wobec tego zbiór atrybutów typu zawiera wszystkie atrybuty relacji zależne od atrybutów typu A, a także że wszystkie atrybuty powtarzające się występują tylko po prawej stronie relacji.

Pierwszy ze schematów', powstający w wyniku wykonania dekompozycji z użyciem danej zależności, zawiera te wszystkie atrybuty R, które nie są typu B. Ponieważ musi istnieć co najmniej jeden atrybut typu B, więc schemat ten nic zawiera wszystkich atrybutów R.

W drugim schemacie występują wszystkie atrybuty typu A i typu B. Nic zawiera on wszystkich atrybutów' R, ponieważ gdyby tak było, wów czas zbiór {Ai, A2,..., An} stanowiłby nadklucz w R (tzn. każdy atrybut R byłby zależny funkcyjnie od A). Ale przecież żadna zależność z nadkluczem po lewej stronie nic może naruszać warunku BCNF.

Zatem uzasadniliśmy, że oba schematy, powstałe w wyniku dekompozycji, są mniejsze od wejściowej relacji R. Stąd też zasadne jest twierdzenie, że powtarzając operacje dekompozycji, otrzymamy w końcu zbiór relacji. /. których każda jest w postaci BCNF.


Wyszukiwarka

Podobne podstrony:
ullman086 (2) 178 3 RF.I ACYJNY MODEL DANYCH nazwaStudia adresSrudia Fox Disney Paramount Holywood B
ullman066 (2) 138 3 RR1.ACYJNY MODEL DANYCH Kontrakty(nażwaGwiazdy, nazwaStudia, tytuł, rok, wynagro
ullman061 (2) 128 3. RHI.ACYJNY MODEL DANYCH PRZYKŁAD 3.9 Jeśli wprowadzimy jednoznaczne numery cert
66446 ullman061 (2) 128 3. RHI.ACYJNY MODEL DANYCH PRZYKŁAD 3.9 Jeśli wprowadzimy jednoznaczne numer
16212 ullman068 (2) 142 3. RELACYJNY MODEL DANYCH sy i broń, które pochodzą z pozostałych dwóch nadk
18968 ullman090 (2) 186 3. RELACYJNY MODEL DANYCH spełniają zadane zależności funkcyjne. Natomiast p
28640 ullman078 (2) 162 3. RELACYJNY MODEL DANYCH PRZYKŁAD 3.28 Rozważmy relację z atrybutami: A, B,
70840 ullman074 (2) 04 i. RELACYJNY MODEL DANYCH będzie oczywiste, co jest kluczem relacji bez wnika
74563 ullman069 (2) 3. RELACYJNY MODEL DANYCH ciu. jeśli chcemy odszukać określony obiekt, to tr/.cb
ullman058 (2) 122 3 RP.I-ACYJNYMODEL DANYCH nazwisko ulica miasto data Urodzenia Carrie Fischer 1
ullman059 (2) 124 .1 RELACYJNY MODEL DANYCH miały strukturę złożoną zbioru lub zbioru struktur. W pr
ullman060 (2) 126 3 RELACYJNY MODEL DANYCH szczególnych wartości. I tak jak w przypadku atrybutów o

więcej podobnych podstron