Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Návrh struktury - normalizace

Podobné prezentace


Prezentace na téma: "Návrh struktury - normalizace"— Transkript prezentace:

1 Návrh struktury - normalizace
Databázové systémy Návrh struktury - normalizace

2 Návrh struktury databáze
Proces návrhu databáze založený na teorii závislostí se nazývá normalizace. - dekompozice dat na jednotlivé tabulky a určení vztahů mezi nimi Problémy špatného návrhu databáze Opakující se informace (redundance) Nemožnost reprezentovat určitou informaci Ztráta informace Složitá kontrola integritních omezení

3 Funkční závislost X → Y Plná funkční závislost
Hodnota atributu relace určuje jednoznačně hodnotu jiného atributu stejné relace X → Y Klient(r_cislo,jmeno,prijmeni,ulice,mesto) Hodnota rodneho cisla jednoznacne určuje hodnoty dalších atributů r_cislo→(jmeno,prijmeni,ulice,mesto) jmeno→(prijmeni,ulice,mesto) Plná funkční závislost Atribut je funkčně závislý na celém složeném atributu a ne jen na některé jeho části.

4 Tranzitivní závislost
Atribut je funkčně závislý na jiném funkčně závislém atributu Ucet(c_uctu,r_cislo,stav,jmeno) Vícehodnotová závislost - multizávislost Hodnota atributu relace určuje jednoznačně množinu hodnot jiného atributu stejné relace nezávisle na hodnotách ostatních atributů. Ucet - r_cislo značí vlastníka účtu, klent ale může mít více adres

5 Normalizace Potřebné vlastnosti dekompozice
- postupná dekompozice dat – transformace tabulky do vhodnějšího tvaru Potřebné vlastnosti dekompozice bezztrátovost při zpětném spojení zachování závislostí odstranění opakování - redundance Bezztrátová dekompozice - spojení tabulek, které vzniknou dekompozicí musí dát přesně původní tabulku

6 Zachování závislostí - všechny původní závislosti musí být zachovány a snadno kontrolovatelné r_cislo c_uctu stav pobocka jmeni r_cislo c_uctu stav c_uctu pobocka jmeni

7 Odstranění opakování c_uctu stav pobocka jmeni
Zarámí T.Bati T.Bati ÚČET: POBOČKA: c_uctu stav pobocka nazev jmeni Zarámí T.Bati T.Bati Zarámí T.Bati 2132

8 Normální formy - definují požadavky na vlastnosti schématu tabulky z pohledu závislosti mezi atributy Hierarchie normálních forem 1.NF až 3.NF BCNF – (Boyce-Coddova) 4.NF a 5.NF PLATÍ: n-tá normální forma musí splňovat podmínky n-1 normální formy a ještě něco navíc.

9 1. normální forma – 1NF Tabulka je v první normální formě, právě když všechny její atributy jsou atomické, tj. dále již nedělitelné. Klient JMÉNO PŘÍJMENÍ BYDLIŠTĚ jan novák Ostravská 16, Praha16000 petr nový Svitavská 8, Brno61400 nováček Na bradlech 1147, Ostrava 79002 Správný návrh tabulky, který bude respektovat 1NF bude vypadat následovně: JMÉNO PŘÍJMENÍ ULICE ČÍSLO MĚSTO PSČ jan novák Ostravská 16 Praha 16000 petr nový Svitavská 8 Brno 61400 nováček Na bradlech 1147 Ostrava 79002

10 2. normální forma – 2NF Tabulka je ve druhé normální formě, právě když splňuje 1NF a navíc každý její neklíčový atribut, je plně funkčně závislý na každém kandidátním klíči. (Tzn. problém 2NF se týká jenom tabulek, kde volíme za primární klíč více položek než jednu.) Ucet1 c_uctu r_cislo stav pobocka jmeni Ucet Disponuje c_uctu stav pobocka jmeni r_cislo 42000 Zarámí 4463 826111/5267 75000 T.Bati 2132 580506/4891 25000 601012/1224

11 3. normální forma – 3NF Tabulka je ve třetí normální formě, jestliže je v 2NF a neexistuje žádný neklíčový atribut, který je tranzitivně závislý na některém kandidátním klíči. Ucet1 c_uctu r_cislo stav pobocka jmeni Ucet Disponuje c_uctu stav pobocka jmeni r_cislo Ucet Disponuje Pobočka c_uctu stav pobocka r_cislo jmeni c_uctu stav pobocka jmeni 42000 Zarámí 4463 T.Bati 2132 75000 25000

12 Boyce-Coddova normální forma
Tabulka je v BCNF, jestliže pro každou netriviální funkční závislost X → Y je X superklíčem. - může existovat několik kandidátních klíčů. - kandidátní klíče můžou být složené, - kandidátní klíče se můžou překrývat - 3NF připouší tranzitivní závislosti mezi klíč. atributy Disponuje(r_cislo,c_zakaznika,c_uctu)

13 4. normální forma – 4NF 5. normální forma – 5NF
Tabulka je ve čtvrté normální formě, jestliže pro každou netriviální vícehodnotovou závislost X Y je X superklíčem. Čtvrtá normální forma v podstatě říká, že vícehodnotové závislosti musíme vyčlenit do samostatné tabulky. 5. normální forma – 5NF Tabulka je v páté normální formě, jestliže pro každou netriviální netriviální závislost na spojení je každá množina atributů superklíčem.

14 Transformace ER diagramu na tabulky relační databáze
Hlavní problémy špatného návrhu: opakující se informace (redundance) nemožnost reprezentovat určitou informaci - složitá kontrola integritních omezení

15 Pravidla transformace
Odstranění složených a vícehodnotových atributů (převod do 1NF) Vícehodnotový atribut → slabá entitní množina nebo náhrada pevným počtem opakování

16 Pravidla transformace
Reprezentace silné entitní množiny Reprezentace slabé entitní množiny

17 Pravidla transformace
Reprezentace vztahů

18 Pravidla transformace
Reprezentace ternárních vztahů Generalizace tabulka pro nadtyp + pro podtypy s primárním klíčem nadtypu pouze tabulky pro podtypy i s atributy nadtypu - všechno v jedné tabulce (rozlišení podle prázdné hodnoty)

19 Př. Spořitelna


Stáhnout ppt "Návrh struktury - normalizace"

Podobné prezentace


Reklamy Google