Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Bazy danych 7. Postaci normalne P. F. Góra semestr letni 2004/05.

Podobne prezentacje


Prezentacja na temat: "Bazy danych 7. Postaci normalne P. F. Góra semestr letni 2004/05."— Zapis prezentacji:

1 Bazy danych 7. Postaci normalne P. F. Góra semestr letni 2004/05

2 Bazy danych - wykład 72 Cel normalizacji – unikanie anomalii Rodzaje anomalii 1.Redundancja 2.Anomalie modyfikacji 3.Anomalie usuwania Te same dane niepotrzebnie powtarzaj ą si ę w kilku krotkach Warto ść tej samej danej zostanie zmodyfikowana w jednej krotce, w innej za ś nie. Która warto ść jest wówczas poprawna? Utrata cz ęś ci danych, gdy dla pewnego atrybutu zacznie obowi ą zywa ć warto ść pusta (null) Odwrotno ść : anomalie do łą czania

3 Bazy danych - wykład 73 Pierwsza postać normalna: Tabele zawieraj ą wy łą cznie dane atomowe. Ka ż da tabela ma klucz. Zakaz duplikowania wierszy. Tabela jest zbiorem wierszy.

4 Bazy danych - wykład 74 Problem: Jednemu numerowi zamówienia odpowiada zbiór identyfikatorów cz ęś ci

5 Bazy danych - wykład 75 Tabela w 1PN podzielone niektóre wiersze.

6 Bazy danych - wykład 76 Nie jest w 1PN Jest w 1PN podzielone niektóre kolumny

7 Bazy danych - wykład 77 Druga postać normalna: Tabela jest w 1PN. Ka ż dy atrybut niekluczowy zale ż y funkcyjnie od pe ł nego klucza. Od pe ł nego klucza, a nie tylko od podzbioru w ł a ś ciwego klucza. Ka ż da tabela, której wszystkie klucze s ą jednokolumnowe, jest w 2PN. Kontynuujemy konsumpcj ę p ł azów

8 Bazy danych - wykład 78 Nie jest w 2PN: nazwa dostawcy adres, id dostawcy; nazwa cz ęś ci id cz ęś ci Anomalie: 1.Redundancja: adres Seagate w czterech (sic!) krotkach. 2.Anomalia modyfikacji: Je ś li Seagate zmieni siedzib ę, czy na pewno poprawimy to we wszystkich miejscach? 3.Anomalia usuwania: Je ś li usuniemy zamówienie nr 002, stracimy informacj ę o siedzibie Toshiby. 4.Anomalia do łą czania: Nie da si ę do łą czy ć nowej firmy, dopóki nie z ł o ż ymy w niej zamówienia.

9 Bazy danych - wykład 79 Sprowadzenie do 2PN: podzia ł tabeli Czy to aby na pewno jest w 2PN?!

10 Bazy danych - wykład 710 Trzecia postać normalna: Tabela jest w 2PN. Je ś li A 1 A 2 …A n B, to albo {A 1,A 2,…,A n } jest nadkluczem, albo B jest elementem pewnego klucza. Dotyczy tylko zale ż no ś ci nietrywialnych!

11 Bazy danych - wykład 711 Trzecia posta ć normalna jest postaci ą najcz ęś ciej wyst ę puj ą c ą w praktyce. Istniej ą specjalne algorytmy i specjalne narz ę dzia CASE do przeprojektowywania bazy do 3PN. W specjalistycznych zastosowaniach (np. hurtownie danych) niekiedy korzystnie jest pozostawi ć baz ę w 2PN lub nawet 1PN.

12 Bazy danych - wykład 712 Cz ę sto mówi si ę, żę 3PN wyklucza zale ż no ś ci przechodnie (typu A B, B C, zatem A C). Je ś li jednak C jest elementem klucza (by ć mo ż e obejmuj ą cego jakie ś atrybuty A), to dalej jest 3PN. Przyk ł ad: Tabela z trzema atrybutami i zale ż no ś ciami kino miasto tytuł miasto kino Kluczem jest { tytuł, miasto }. Innym kluczem jest { kino, tytuł }. Tabela jest w 3PN: chocia ż samo kino nie jest nadkluczem, miasto jest elementem klucza. Zwanego kluczem kandyduj ą cym. Bo ka ż de kino jest w jakim ś mie ś cie. Bo dystrybutor ogranicza rozpowszechnianie do jednego kina w danym mie ś cie.

13 Bazy danych - wykład 713 Procedura post ę powania: 1.Dany jest zbiór atrybutów, które chcemy reprezentowa ć, i zbiór zale ż no ś ci funkcyjnych pomi ę dzy atrybutami. 2.Znajdujemy baz ę minimaln ą (bazy minimalne) zbioru zale ż no ś ci funkcyjnych. Eliminujemy symetryczne zale ż no ś ci funkcyjne. 3.Dla (pewnej) bazy minimalnej sumujemy zale ż no ś ci funkcyjne o takich samych lewych stronach i dla ka ż dej wysumowanej zale ż no ś ci tworzymy tabel ę z odpowiedni ą lew ą stron ą zale ż no ś ci jako kluczem.

14 Bazy danych - wykład 714 Procedura szukania bazy minimalnej: 1.Ka ż dy atrybut musi wyst ę powa ć z lewej lub z prawej strony jednej zale ż no ś ci funkcyjnej w zbiorze. 2.Je ś li jaka ś zale ż no ść funkcyjna jest w łą czona do zbioru, nie wszystkie zale ż no ś ci funkcyjne potrzebne do jej wyprowadzenia mog ą wyst ę powa ć w tym zbiorze. 3.Je ś li jaka ś zale ż no ść funkcyjna zostaje wy łą czona ze bioru, zale ż no ś ci funkcyjne potrzebne do jej wyprowadzenia musz ą zosta ć do ń do łą czone.

15 Bazy danych - wykład 715 Je ś li mamy wiele atrybutów i wiele zale ż no ś ci, normalizacji r ę cznie przeprowadzi ć si ę nie da. Powy ż sza procedura jest dostosowana do projektowania od zera. Je ś li mamy wst ę pny projekt w ODL lub w postaci diagramu E/R, projektowanie jest znacznie prostsze.

16 Bazy danych - wykład 716 Przyk ł ad Firma transportowa posiada baz ę danych, w której zachodz ą nast ę puj ą ce zale ż no ś ci funkcyjne: NrRejestracyjny Data Kierowca NrRejestracyjny Data Odbiorca Odbiorca Odległość Kierowca Stawka Odległość Stawka Koszt Odbiorca Kierowca Koszt NrRejestracyjny Data Koszt

17 Bazy danych - wykład 717 Tabele: (NrRejestracyjny, Data, Kierowca, Odbiorca) (Kierowca, Stawka) (Odbiorca, Odległość) (Odległość, Stawka, Koszt)

18 Bazy danych - wykład 718 Postać normalna Boycea-Coda (BCNF, PNBC) Tabela jest w BCNF wtedy i tylko wtedy, gdy dla ka ż dej zale ż no ś ci nietrywialnej A 1 A 2 …A n B, zbiór {A 1,A 2,…,A n } jest nadkluczem

19 Bazy danych - wykład 719 Zale ż no ś ci wielowarto ś ciowe Zale ż no ść wielowarto ś ciowa A 1 A 2 …A n B 1 …B m zachodzi wówczas, gdy wybieraj ą c z tabeli te krotki, które maj ą ustalone warto ś ci typu A, zbiór warto ś ci atrybutów typu B nie zale ż y od ż adnych innych atrybutów, których nie ma ani w A, ani w B. Inaczej: Dla ka ż dej pary krotek (t,u), które maj ą takie same warto ś ci atrybutów typu A, mo ż na znale źć tak ą krotk ę v, której sk ł adowe maj ą warto ś ci równe: Warto ś ciom atrybutów typu A w ktorkach t, u; Warto ś ciom atrybutów typu B krotki t; Warto ś ciom tych sk ł adowych krotki u, które nie s ą ani typu A, ani typu B. Zale ż no ś ci wielowarto ś ciowa nie jest sum ą zale ż no ś ci funkcyjnych o takich samych lewych stronach!

20 Bazy danych - wykład 720 Czwarta postać normalna: Je ś li A 1 A 2 …A n B 1 B 2 …B m jest nietrywialn ą zale ż no ś ci ą wielowarto ś ciow ą, to {A 1,A 2,…,A n } jest nadkluczem. Istotne zw ł aszcza dla tabel pomostowych, opisuj ą cych zwi ą zki wieloargumentowe


Pobierz ppt "Bazy danych 7. Postaci normalne P. F. Góra semestr letni 2004/05."

Podobne prezentacje


Reklamy Google