Többértékű függőségek, egyed kapcsolat modell

Többértékű függőségek

A többértékű függőség: az reláció fölött teljesül, ha bármely két sorra, amelyek megegyeznek az minden attribútumán, az attribútumaihoz tartozó értékek felcserélhetők, azaz a keletkező két új sor -beli lesz.

Más szavakkal: minden értéke esetén az -hoz tartozó értékek függetlenek az értékeitől.

Többértékű függőség szabályok

  • Minden funkcionális függőség egyben többértékű függőség is.

    • Ha és két sor megegyezik -en, -on is megegyezik, emiatt ha ezeket felcseréljük, az eredeti sorokat kapjuk vissza, azaz:
  • Komplementálás: Ha és jelöli az összes többi attrubútum halmazát, akkor

  • Ugyanúgy, mint az FF-ek esetében, a baloldalakat nem "bánthatjuk" általában.

  • Az FF-ek esetében a jobboldalakat felbonthattuk, míg ebben az esetben ez sem tehető meg.

Negyedik normálforma

  • A TÉF-ek okozta redundanciát a BCNF nem szünteti meg.
  • Megoldás: a negyedik normálforma
  • A negyedik normálformánál amikor dekomponálunk, a TÉF-eket úgy kezeljük, mint az FF-eket, a kulcsok megtalálásánál azonban nem számítanak.

Triviális TÉFek

Legyen egy reláció, és részhalmazai attribútumainak, jelölés:

  • TÉF automatikusan fennáll, ha
  • TÉF automatikusan fennáll, ha

4NF definíció

Egy reláció 4NF-ben van, ha minden nemtriviális TÉF esetén szuperkulcs

  • Nemtriviális TÉF:
    1. nem részhalmaza -nek
    2. és együtt nem adják ki az összes attribútumot.
  • A szuperkulcs definíciója ugyanaz marad, azaz csak az FF-ektől függ.

BCNF vs 4NF

  • Kiderült, hogy minden FF TÉF is.
  • Így ha 4NF-ben van, akkor BCNF-ben is.
  • De lehet úgy BCNF-ben, hogy közben nincs 4NF-ben.

Dekompozíció és 4NF

Ha megsérti a 4NF-t, akkor -t hasonlóan dekomponáljuk, mint a BCNF esetén.

  1. az egyik dekomponált reláció
  2. Az -be nem tartozó attribútumok a másik.

TÉF és FFek együttes következtetése

  • Probléma: relációsémához adott a TÉF-ek és FF-ek egy halmaza, kérdés: egy adott FF vagy TÉF következik-e ezekből fölött?
  • Megoldás: használjunk egy táblázatot (tablót), hogy a függőségek hatásait feltárjuk. (A chase mögötti ötletet terjesztjük ki.)

Miért foglalkozunk ilyesmivel?

  1. 4NF azon múlik, hogy van-e olyan TÉF, ami sérti a feltételt.
  • Előfordulhat, hogy a megadott FF-ek és TÉF-ek nem sértik a feltételt, de egy belőlük következő függőség igen.
  1. Amikor dekomponálunk az FF-eket és TÉF-eket is vetítenünk kell.

Következtetés

FF használata

FF alkalmazásánál keressük meg azon sorpárokat, amelyek megegyeznek attribútumain. Az attribútumain is tegyük őket egyenlővé.

  • Egy változót egy másikra cseréljünk.
  • Ha a lecserélt változó a célsorban is megjelenik, ott is cseréljünk.
TÉF használata

Egy TÉF használatánál keressünk két sort, amelyek megegyeznek X attribútumain.

  • Adjuk hozzá a tablóhoz azokat a sorokat, amelyeket az attribútumaihoz tartozó értékek felcserélésével kapunk.
Célok
  • Az ellenőrzésekor akkor nyertünk, ha a megfelelő változók -hez tartozó minden oszlopban egyenlőek.

  • akkor győztünk, ha sikerül egy olyan sort kigenerálni, ami az eredeti két sorból keletkezik értékeinek felcserélésével.

Végjáték
  • Használjuk az összes FF-et és TÉF-et, amíg bármiféle változtatás történhet.
  • Ha nyertünk, nyertünk.
  • Ha nem, egy ellenpéldát kaptunk.
    • A kapott előfordulás az összes előre megadott függőséget teljesíti.
    • Az eredeti két sor megsérti a kikövetkeztetendő függőséget.

TÉFek vetítése

  • Le kell tudnunk vetíteni megadott függőségeket 2 reláció sémára
  • Legrosszabb eset: ki kell próbálnunk minden lehetséges FF-et és TÉF-et a felbontott relációkra
  • Chase teszt alkalmazása; Cél egy TÉF ellenőrzésénél: olyan sor előállítása a tablóban, amely indexeletlen betűket tartalmaz a felbontott reláció oszlopaira

Egyed kapcsolat modell

  • Egyed kapcsolat modellekkel adatbázissémát vázolhatunk fel.
  • A főbb részek felvázolásával hatékonyabb lehet egy működő adatbázist.

Egyedhalmazok

  • Egyed (entity)
  • Egyedhalmaz
    • Az objektum-orientált nyelvek osztály fogalmához hasonló
  • Attribútum
    • Atomi értékűek, nem rekordok, tömbök

Diagrammok

  • Az egyed kapcsolat diagramban:
    • egyedhalmaz: téglalap
      • alosztályok: háromszög (nincs töbszörös öröklés)
    • attribútum: ovális
      • kulcs(ok): aláhúzás
    • sok-sok, sok-egy, egy-egy kapcsolat (rombusz)
    • kapcsolathalmaz
    • ezek össze vannak kötve

Források