1 / 20

Adatbázis rendszerek I

Adatbázis rendszerek I. Kovács László. Normalizálási alapok. Normalizálási alapok. A szoftver az egyik legösszetettebb és legmegbízhatatlanabb ipari termék. Számítási hibák Mars Climate Orbiter (1999) Ariane 5 rakéta (1996) Védelmi hiányosságok ILOVEYOU (2000), $10 billió

meryl
Download Presentation

Adatbázis rendszerek I

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Adatbázis rendszerek I Kovács László Normalizálási alapok

  2. Normalizálási alapok A szoftver az egyik legösszetettebb és legmegbízhatatlanabb ipari termék Számítási hibák Mars Climate Orbiter (1999) Ariane 5 rakéta (1996) Védelmi hiányosságok ILOVEYOU (2000), $10 billió SQLslammer (2003) Adatkezelés Y2000 és Y2038 Kezelő felület hiányosságai …

  3. Normalizálási alapok A tervezéssel eltöltött idő sohasem elvesztegetett idő Adatbázisoknál a javítás költsége a tervezési hiányosságoknál egy nagyságrenddel nagyobb mint a többi hiba esetében • Mire kell ügyelni? • minden információelem meglegyen • beszédes elnevezések • érvényes adattípusok • érvényes kapcsolatok • érvényes integritási elemek • kezelés biztonsága • hatékonyság • védelem • … Failure is not an option. It is a key part of a software.

  4. Normalizálási alapok Az adatbázis tervezésnél, az egyik jól formalizálható elem a redundancia kezelése redundancia: információ ismétlődése hátrányai: - beszúrási anomália - módosítási anomália - törlési anomália - helyfoglalás előnyei: - elérési gyorsaság - hibatűrés cél: szabályozott, minimális redundancia dkod uticél dnév dcím befizetes 1 Eger Peter Miskolc 3 3 Eger Antal Baja 5 1 Ózd Peter Miskolc 2

  5. Normalizálási alapok redundancia oka: mezők közötti érték-függőség dkod uticél dnév dcím befizetes 1 Eger Peter Miskolc 3 3 Eger Antal Baja 5 1 Ózd Peter Miskolc 2 függőség jele: FD A B függőség értelmezése: minden A értékhez maximum egy B érték tartozik Az FD eltávolítása megszünteti a redundanciát

  6. Normalizálási alapok Normalizálás: redundancia megszüntetése az FD-k eliminálásával de nem mindegyik FD-t kell eldobni! dkod uticél dnév dcím befizetes 1 Eger Peter Miskolc 3 3 Eger Antal Baja 5 1 Ózd Peter Miskolc 2 Az ismétlődő értékű mezőkből kiinduló FD-ket kell elvetni A kulcsból kiinduló FD-k nem okoznak redundanciát

  7. Normalizálási alapok A nemkívánt FD megszüntetése a tartalmazó reláció felbontásával történik (dekompozíció) dkod uticél dnév dcím befizetes 1 Eger Peter Miskolc 3 dkod uticél befizetes dkod dnév dcím 1 Eger 3 1 Peter Miskolc A felbontásnak veszteségmentesnek kell lennie Az eredeti relációkat elő kell tudni állítani a részekből

  8. kép Csontváry Kosztka Tivadar (1853-1919): Öreg halász(1902)

  9. Normalizálási elemek Mező elnevezéshez kapcsolódó hibák szinonima homonima TILOS! nem beszédes elnevezés DOLGOZO(nev,c12,fonok,f_cim,fizetes,telephely) OSZTALY(nev,telephely,vezeto,v_cim,fizetes) PROJEKT(nev,d_nev,megrendelo,fizetes,mcim) nyilt logikai átfedés technikai homonima

  10. Normalizálási elemek FD fogalma: A  B az R(A,B,C) sémában, ha minden t1,t2 r(R)-beli rekordra, ha t1(A) = t2(A), akkor t1(B) = t2(B) is teljesül a definíció r(R) függő eseti függőség (néhány r-re)  érdemi függőség (minden r-re) egy adott r(R)-ből nem lehet következtetni az FD érdemiségére, de lehet következtetni az esetiségére minden R sémához tartozik egy érdemi FD halmaz dkod uticél dnév dcím befizetes

  11. Normalizálási elemek Cél: áttekinthetőség, egyszerűség dkod uticél dnév dcím befizetes felesleges FD-k jelennek meg az FD-k között is redundancia jelenhet meg Armstrong axiómák: ha B  A  A  B (triviális FD) A  B  AC  BC A  B, B  C  A  C következmények: A  B, C  D  AC  BD

  12. Normalizálási elemek Egy FD-halmaz kibővíthető a származtatott FD-kel Az X FD-halmaz lezártja: X+ X+ : {B | X  B} FD-halmazok ekvivalenciája: X  Y, ha X+ = Y+ Egy FD-halmaz egyszerűsíthető a redundáns FD-kel Az X FD-halmaz irreducibilis magja: X- X- jellemzői: - nem tartalmaz triviális FD-t - jobb oldal elemi Belátható, hogy X  X+ és X  X- és X-  X+ X+ X X-

  13. Normalizálási elemek dkod uticél dnév dcím befizetes irreducibilis mag meghatározása dkod uticél dnév dcím befizetes

  14. Normalizálási elemek Redundancia oka: ismétlődő értékű mezőből kiinduló FD Redundancia mentesítés: csak nem-ismétlődő értékű mezőkből induljon ki FD Normalizálás: nem kívánt FD-k megszüntetése Az FD-ket a mezők szétválasztásával, a reláció felbontásával (dekompozíció) szüntetjük meg

  15. Normalizálási elemek Alap normalizálási lépések: - FD-k feltárása - 1NF : létezzen kulcs, minden mező elemi - 2NF : 1NF + részkulcsból ne induljon ki FD - 3NF : 2NF + nem kulcsból ne induljon ki FD dkod uticél dnév dcím befizetes 1NF 3NF 2NF dnév dcím dkod uticél befizetes dkod dnév

  16. Normalizálási elemek A gyakorlat szinte mindig megtalálja az elmélet hiányosságait Miért nem jó a 3NF? ig.szám taj-szám név A felbontás nem hoz nyereséget Szükségtelen a felbontás A taj_szám jelölt kulcs, nem ismétlődik, nem okoz redundanciát BCNF: FD csak jelölt kulcsból induljon ki

  17. Normalizálási elemek Az elmélet a gyakorlat egy közelítése, modellje Az adatbázis tervezésnél a hatékonysági szempontokat is lényegesnek kell tekinteni (JOIN költségessége) re-decomposition: a szétbontott táblák egyesítése „A normalizálás nem tervezés hanem elemzés” „A valós adatbázisséma a 3NF és a teljes káosz között van”

  18. kép csontváry Kosztka Tivadar: Fohászkodó Üdvözítő (1903)

  19. Normalizálási alapok Egyedi elemek - levezethetőség és logikai következmény - igazságtétel bizonyítása - levezetési példák - szuperkulcs - FD halmaz lezárási tételek - teljességi tétel bizonyítása - lezárási tétel bizonyítása

  20. kép Csontváry Kosztka Tivadar: Római híd Mosztarban (1903)

More Related