Az ötödik normál forma (5NF), más néven projekt-csatlakozás normál forma (PJ / NF) az adatbázis normalizálásának az a szintje, amelynek célja a redundancia csökkentése a sokértékű tényeket rögzítő relációs adatbázisokban, szemantikailag összefüggő több kapcsolat elkülönítésével. Azt mondják, hogy egy tábla az 5NF-ben akkor és csak akkor található, ha a táblában szereplő minden nem triviális csatlakozási függőséget a jelölt kulcsok rögzítenek.
Az R csatlakozási függőségét * {A, B,... Z} az R jelölt kulcsa akkor és csak akkor rögzíti, ha A, B,..., Z mindegyike R szuperkulcs .Analysis of normal forms for anchor-tables
Az ötödik normál formát először Ronald Fagin írta le 1979-ben Normál formák és relációs adatbázis-kezelők tanulmányában.
Példa Tekintsük a következő példát: +Utazó értékesítők termékei márka szerint Utazó eladó márka terméktípus Jack Schneider Acme porszívó Jack Schneider Acme kenyértartó Mary Jones Robusto metszőolló Mary Jones Robusto porszívó Mary Jones Robusto kenyértartó Mary Jones Robusto esernyőtartó Louis Ferguson Robusto porszívó Louis Ferguson Robusto távcső Louis Ferguson Acme porszívó Louis Ferguson Acme lávalámpa Louis Ferguson Nimbus nyakkendőállvány A tábla predikátuma: Terméktípus által megjelölt termékek, amelyeket a Márka oszlopban jelzett márka készítette, elérhetők az utazó értékesítőnél.
Az elsődleges kulcs mindhárom oszlop összetétele. Vegye figyelembe azt is, hogy a táblázat 4NF-ben található, mivel a táblázatban nincsenek többértékű függőségek (2 részes csatlakozási függőségek): egyetlen oszlop sem (amely önmagában nem jelölt vagy szuper kulcs) meghatározó a másik két oszlop szempontjából.
Az utazó értékesítő, a márka és a terméktípus érvényes lehetséges kombinációit korlátozó szabályok hiányában a fenti három attribútum szükséges a helyzet megfelelő modellezéséhez.
Tegyük fel azonban, hogy a következő szabály érvényes: Egy utazó értékesítőnek bizonyos márkák és bizonyos terméktípusok vannak a repertoárjában. Ha a B1 és a B2 márka szerepel a repertoárjukban, és a P terméktípus szerepel a repertoárjukban, akkor (feltéve, hogy a B1 és a B2 márka egyaránt P terméktípust gyárt), az utazó eladónak a P1 termék típusát kell kínálnia, amelyet a B1 márka gyárt és azokat, amelyeket a B2 márka készített.
Ebben az esetben a táblázat három részre osztható: +Terméktípusok utazó értékesítők által Utazó eladó Terméktípus Jack Schneider Porszívó Jack Schneider Breadbox Mary Jones Metszőolló Mary Jones Porszívó Mary Jones Breadbox Mary Jones Esernyőtartó Louis Ferguson Távcső Louis Ferguson Porszívó Louis Ferguson Láva lámpa Louis Ferguson Nyakkendő állvány +Márkák értékesítők szerint Utazó eladó Márka Jack Schneider Acme Mary Jones Robusto Louis Ferguson Robusto Louis Ferguson Acme Louis Ferguson Nimbus +Terméktípusok márka szerint Márka Terméktípus Acme Porszívó Acme Breadbox Acme Láva lámpa Robusto Metszőolló Robusto Porszívó Robusto Breadbox Robusto Esernyőtartó Robusto Távcső Nimbus Nyakkendő állvány Ebben az esetben lehetetlen, hogy Louis Ferguson megtagadja az ACME által gyártott porszívók kínálatát (feltéve, hogy az ACME porszívókat gyárt), ha bármi mást értékesít, amelyet Acme gyártott (Láva lámpa), és bármely más márka (Robusto) által gyártott porszívókat is értékesít).
Vegye figyelembe, hogy ez a beállítás hogyan segíti a redundancia megszüntetésében. Tegyük fel, hogy Jack Schneider elkezdi árusítani a Robusto termékeit: Kenyérdobozok és porszívók. Az előző beállításban két új bejegyzést kellett hozzáadnunk minden egyes terméktípushoz (<Jack Schneider, Robusto, Breadboxes>, <Jack Schneider, Robusto, Porszívók>). Az új beállítással csak egyetlen bejegyzést kell hozzáadnunk (<Jack Schneider, Robusto>) a Márka-utazó értékesítők-ben.
Használat Csak ritka esetekben nem felel meg egy 4NF tábla az 5NF-nek. Például, ha a lebontott táblák ciklikusak. Ezek olyan helyzetek, amikor a 4NF táblázatban az attribútumértékek érvényes kombinációit szabályozó komplex valós kényszer nincs implicit módon a táblázat felépítésében. Ha egy ilyen táblázatot nem normalizálnak 5NF-re, akkor a táblában lévő adatok logikai konzisztenciájának fenntartása részben a beillesztésekért, törlésekért és azok frissítéséért felelős alkalmazásnak kell tekinteni; és fokozott annak a kockázata, hogy a táblázat adatai következetlenné válnak. Ezzel szemben az 5NF kialakítása kizárja az ilyen ellentmondások lehetőségét.
A T tábla ötödik normál formában (5NF) vagy Project-Join Normal Form (PJNF) formában van, ha nem lehet veszteségmentesen bontani akárhány kisebb táblára. Kizárt az az eset, amikor a bontás után az összes kisebb táblának ugyanaz a kulcsa van, mint a T táblának.
Lásd még Attribútum-érték rendszer
Jegyzetek
Kategória:Adatbázis-normalizálás