Pátá normální forma - Fifth normal form

Pátá normální forma (5NF), také známý jako normální forma projektu (PJ / NF), je úroveň normalizace databáze navržen tak, aby snížil nadbytečnost v relačních databázích zaznamenávajících vícehodnotová fakta izolací sémanticky související více vztahů. A stůl se říká, že je v 5NF kdyby a jen kdyby každý netriviální připojit závislost v této tabulce vyplývá z kandidátské klíče.

Závislost spojení * {A, B, ... Z} na R je naznačena kandidátskými klíči R kdyby a jen kdyby každé z A, B, ..., Z je a superklíč pro R.[1]

Pátou normální formu poprvé popsal Ronald Fagin ve svém příspěvku z roku 1979 Normální formy a operátoři relačních databází.[2]

Příklad

Zvažte následující příklad:

Dostupnost produktu Traveling Salesman podle značky
Cestovní prodavačZnačkaTyp produktu
Jack SchneiderVrcholVysavač
Jack SchneiderVrcholChléb
Mary JonesRobustoZahradnické nůžky
Mary JonesRobustoVysavač
Mary JonesRobustoChléb
Mary JonesRobustoStojan na deštník
Louis FergusonRobustoVysavač
Louis FergusonRobustoDalekohled
Louis FergusonVrcholVysavač
Louis FergusonVrcholLávová lampa
Louis FergusonNimbusTie Rack

Predikát tabulky je: Výrobky typu, který označuje Typ produktu, vyrobené značkou označenou Značka, jsou k dispozici u obchodního cestujícího určeného společností Cestovní prodavač.

Primární klíč je složený ze všech tří sloupců. Všimněte si také, že tabulka je ve 4NF, protože tam nejsou žádné vícehodnotové závislosti (Závislosti dvoudílného spojení ) v tabulce: žádný sloupec (který sám o sobě není kandidátským klíčem nebo superklíčem) není určující pro další dva sloupce.

Pokud neexistují žádná pravidla omezující platné možné kombinace Traveling Salesman, Brand a Product Type, je pro správný model situace nezbytná výše uvedená tabulka se třemi atributy.

Předpokládejme však, že platí následující pravidlo: Cestovní prodejce má ve svém repertoáru určité značky a určité typy produktů. Pokud jsou v jejich repertoáru značka B1 a značka B2 a v jejich repertoáru je produkt typu P, pak (za předpokladu, že značka B1 i značka B2 vyrábějí produkt typu P), musí obchodní cestující nabídnout produkty typu P, které vyrobila značka B1 a ty od značky B2.

V takovém případě je možné tabulku rozdělit na tři:

Druhy produktů od obchodního cestujícího
Cestovní prodavačTyp produktu
Jack SchneiderVysavač
Jack SchneiderChléb
Mary JonesZahradnické nůžky
Mary JonesVysavač
Mary JonesChléb
Mary JonesStojan na deštník
Louis FergusonDalekohled
Louis FergusonVysavač
Louis FergusonLávová lampa
Louis FergusonVěšák na kravaty
Značky od obchodního cestujícího
Cestovní prodavačZnačka
Jack SchneiderVrchol
Mary JonesRobusto
Louis FergusonRobusto
Louis FergusonVrchol
Louis FergusonNimbus
Druhy produktů podle značek
ZnačkaTyp produktu
VrcholVysavač
VrcholChléb
VrcholLávová lampa
RobustoZahradnické nůžky
RobustoVysavač
RobustoChléb
RobustoStojan na deštník
RobustoDalekohled
NimbusTie Rack

V tomto případě je nemožné, aby Louis Ferguson odmítl nabízet vysavače od ACME (za předpokladu, že ACME vyrábí vysavače), pokud prodává cokoli jiného od Acme (Lava Lamp) a také prodává vysavače od jakékoli jiné značky (Robusto ).

Všimněte si, jak toto nastavení pomáhá odstranit nadbytečnost. Předpokládejme, že Jack Schneider začne prodávat výrobky Robusto, bochníky a vysavače. V předchozím nastavení bychom museli přidat dvě nové položky, jednu pro každý typ produktu (, ). S novým nastavením musíme do Brands By Traveling Salesman přidat pouze jeden záznam ().

Používání

Pouze ve výjimečných situacích a 4NF tabulka neodpovídá 5NF. Jedná se o situace, ve kterých komplexní omezení reálného světa, které řídí platné kombinace hodnot atributů v tabulce 4NF, není ve struktuře této tabulky implicitní. Pokud taková tabulka není normalizována na 5NF, břemeno zachování logické konzistence dat v tabulce musí být částečně neseno aplikací odpovědnou za vkládání, mazání a aktualizace; a existuje zvýšené riziko, že data v tabulce budou nekonzistentní. Naproti tomu konstrukce 5NF vylučuje možnost takových nesrovnalostí.

Tabulka T je v páté normální formě (5NF) nebo v normální formě Project-Join (PJNF), pokud nemůže mít bezztrátový rozklad na libovolný počet menších tabulek. Případ, kdy všechny menší tabulky po rozkladu mají stejný klíč kandidáta jako tabulka T, je vyloučen.

Viz také

Reference

  1. ^ Analýza normálních forem kotevních tabulek
  2. ^ S. Krishna (1991). Úvod do databází a systémů znalostí. ISBN  9810206208. Pátou normální formu představil Fagin

Další čtení