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 Normalizálási alapok Kovács László.

Hasonló előadás


Az előadások a következő témára: "Adatbázis rendszerek I Normalizálási alapok Kovács László."— Előadás másolata:

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

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 Failure is not an option. It is a key part of a software. 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 - …

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 dkoduticéldcímbefizetesdnév Eger ÓzdPeter Antal PeterMiskolc Baja Miskolc2 5 3 előnyei: - elérési gyorsaság - hibatűrés cél: szabályozott, minimális redundancia

5 Normalizálási alapok redundancia oka: mezők közötti érték-függőség dkoduticéldcímbefizetesdnév Eger ÓzdPeter Antal PeterMiskolc Baja Miskolc2 5 3 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! dkoduticéldcímbefizetesdnév Eger ÓzdPeter Antal PeterMiskolc Baja Miskolc2 5 3 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ó) dkoduticéldcímbefizetesdnév 1EgerPeterMiskolc3 dkoduticélbefizetes 1Eger3 dkoddcímdnév 1PeterMiskolc 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 DOLGOZO(nev,c12,fonok,f_cim,fizetes,telephely) OSZTALY(nev,telephely,vezeto,v_cim,fizetes) PROJEKT(nev,d_nev,megrendelo,fizetes,mcim) szinonima TILOS! technikai homonima nyilt logikai átfedés homonima nem beszédes elnevezés

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 dkoduticéldcímbefizetesdnév

11 Normalizálási elemek dkoduticéldcímbefizetesdnév Cél: áttekinthetőség, egyszerűség 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 X+X+ 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} 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 FD-halmazok ekvivalenciája: X  Y, ha X + = Y + Belátható, hogy X  X + és X  X - és X -  X + X X-X-

13 Normalizálási elemek dkoduticéldcímbefizetesdnév dkoduticéldcímbefizetesdnév irreducibilis mag meghatározása

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 dkoduticéldcímbefizetesdnév dkoduticélbefizetes dkoddnév dcímdnév 2NF 3NF 1NF

16 Normalizálási elemek BCNF: FD csak jelölt kulcsból induljon ki A gyakorlat szinte mindig megtalálja az elmélet hiányosságait Miért nem jó a 3NF? ig.számtaj-számné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

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 csontváry Kosztka Tivadar: Fohászkodó Üdvözítő (1903) kép

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 Csontváry Kosztka Tivadar: Római híd Mosztarban (1903) kép


Letölteni ppt "Adatbázis rendszerek I Normalizálási alapok Kovács László."

Hasonló előadás


Google Hirdetések