Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Adatbázis rendszerek I

Hasonló előadás


Az előadások a következő témára: "Adatbázis rendszerek I"— Előadás másolata:

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 tacoma 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 ( ): Ö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)


Letölteni ppt "Adatbázis rendszerek I"

Hasonló előadás


Google Hirdetések