Adatbázis rendszerek I - PowerPoint PPT Presentation

slide1 n.
Download
Skip this Video
Loading SlideShow in 5 Seconds..
Adatbázis rendszerek I PowerPoint Presentation
Download Presentation
Adatbázis rendszerek I

play fullscreen
1 / 20
Adatbázis rendszerek I
93 Views
Download Presentation
meryl
Download Presentation

Adatbázis rendszerek I

- - - - - - - - - - - - - - - - - - - - - - - - - - - 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)