Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme1 Normalisierung II.

Ähnliche Präsentationen


Präsentation zum Thema: "Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme1 Normalisierung II."—  Präsentation transkript:

1 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme1 Normalisierung II

2 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme2 Ziele Verlustlosigkeit Abhängigkeitsbewahrung Algo: Dekomposition Algo: Basis Algo: Synthese

3 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme3 Grundlagen Warum? –Redundanzvermeidung (Speicherbedarf) –Performanz-Aspekte (z.B. bei der Suche) –Elegantes Datenmodell zur leichten Datenpflege

4 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme4 Verlustlosigkeit In R enthaltene Information muss durch den natürlichen Verbund (Join) der zerlegten Relationen R1 und R2 rekonstruierbar sein. Keine existierenden Tupel dürfen verloren gehen Keine neuen Tupel dürfen entstehen

5 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme5 Beispiel – Verlustlosigkeit? KneipeGastBier Relation: Biertrinker Zur runden EckeAlfonsPils Zur runden EckeHeinzHefeweizen BrauhausAlfonsHefeweizen KneipeGast Relation: Besucht Zur runden EckeAlfons Zur runden EckeHeinz BrauhausAlfons GastBier Relation: Trinkt AlfonsPils HeinzHefeweizen AlfonsHefeweizen Zerlegung :

6 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme6 Beispiel – Keine Verlustlosigkeit. KneipeGastBier Relation: Biertrinker Zur runden EckeAlfonsPils Zur runden EckeHeinzHefeweizen BrauhausAlfonsHefeweizen Funktionale Abhängigkeiten: FD1 = {Kneipe, Gast Bier} nicht: FD2 = {Gast Bier} FD2 = {Gast Kneipe} KneipeGast Relation: Besucht Zur runden EckeAlfons Zur runden EckeHeinz BrauhausAlfons GastBier Relation: Trinkt AlfonsPils HeinzHefeweizen AlfonsHefeweizen Kreuzprodukt : Zur runden EckeAlfonsHefeweizen BrauhausAlfonsPils

7 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme7 Abhängigkeitsbewahrung Relation 1: PLZverzeichnis (Strasse, Ort, BLand, PLZ) Funktionale Abhängigkeiten: FD1 = {PLZ Ort, BLand} FD2 = {Straße, Ort, BLand PLZ} Relation 1.1: Strassen (PLZ, Strasse) Relation 1.2: Orte (PLZ, Ort, BLand) Prüfen aller funktionalen Abhängigkeiten lokal, auf den entstehenden Relationen R1 bis Rn –Entstehende Relationen lokal konsistent –Parallele Einfügeoperationen in zerlegte Relationen können globale Konsistenzbedingen verletzen

8 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme8 Algorithmus: Dekomposition Input: Menge Z = {R} Output:Menge Z = {R 1... R n } Solange noch Relationenschema R i Z existiert, dass nicht in BCFN ist, folgendes..... es existiert also eine nicht-triviale FD ( ) einer R i mit: – = – R i Zerlege R i in R j = R k = R i – Entferne R i aus Z, füge R j und R k ein Z := (Z - {R i }) {R j, R k } Sukzessive, verlustlose Zerlegung des Relationenschema R in (BCFN) Teilrelationen

9 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme9 Dekomposition: Beispiel Relation 1: Lieferanten (Name, Artikel, Anzahl, Ort, Entfernung) FD1: Ort Entfernung FD2: Name Ort FD3: Name, Artikel Anzahl [Schritt 1 - FD1] R2: Ort (Ort, Entfernung) R3: Artikelmenge (Name, Artikel, Anzahl, Ort) [Schritt 2 - FD2] R4: Kennzeichung (Name, Ort) R5: Artikel (Name, Artikel, Anzahl) [Schritt 3 – FD3] (entfällt) Z = {R2, R3} Z = {Lieferanten} Ergebnis: Z = {R2, R4, R5}

10 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme10 Algorithmus: Basis I Input: Menge F = {FD 1.. FD n } Output:Eine Basis F c von F F c F, d.h. F c + = F + (Hüllen identisch) F c besitzt keine FDs ( ), bei denen oder überflüssige Attribute besitzen A : (F c – ( ) (( - A) )) F c B : (F c – ( ) ( ( - B)) F c Jede linke Seite einer FD in F c ist einzigartig.. erzielt mit ( ) und ( ) wird zu (, ) Interesse: kleinstmögliche noch äquivalente Menge von FDs

11 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme11 Input: Menge F = {FD 1.. FD n } Output:Eine Basis F c von F Linksreduktion für jede FD ( ) F –Prüfe A, ob A überflüssig ist, d.h. HÜLLE (F, - A) –Entferne A, d.h. (( - A) ) Rechtsreduktion für jede FD ( ) F –Prüfe B, ob B überflüssig ist, d.h. B HÜLLE (F – ( ) ( ( - B)), ) –Entferne B, d.h. ( ( – B)) Entferne ( ) Zusammenfassen ( ) und ( ) zu (, ) Algorithmus: Basis II Interesse: kleinstmögliche noch äquivalente Menge von FDs

12 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme12 Basis: Beispiel Relation 1: (A, B, C) FD1: A B FD2: B C FD3: A, B C [Schritt 1 - Linksreduktion] FD3 (old): A, B C FD3 (new):A C // Grund: FD1, FD2 [Schritt 2 - Rechtsreduktion] FD3 (old):A C FD3 (new):A // Grund: FD1, FD2 [Schritt 3 – Entfernen] FD3 : A // Grund: überflüssig Ergebnis: F c = {A B, B C}

13 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme13 Algorithmus: Synthese Input: Menge Z = {R} Output:Menge Z = {R 1... R n } Bestimme die Basis F c zu F Für jede funktionelle Abhängigkeit ( ) F c –Kreiere Relationenschema R a = –Ordne R a die FDs FD a := { F c | R a } Wenn R bezgl. F c einen Kandidatenschlüssel enthält – fertig, sonst Kandidatenschlüssel k R bestimmen –Neues Relationenschema R k := k –FD k := Eliminiere Relationenschemata, die in anderen enthalten sind, d.h. R a R a Verlustlose, abhängigkeitsbewahrende Zerlegung des Relationenschema R in (3.NF) Teilrelationen

14 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme14 Synthese : Beispiel Relation 1: Universität (Ort, BLand, Landesregierung, EW, Vorwahl,PLZ, Strasse) FD1: Strasse, Ort, BLand PLZFD2: PLZ Ort, BLand FD3: Ort, BLand Vorwahl, EW FD4: BLand Landesregierung [Schritt 1 - Erzeugung] R2: PLZverzeichnis1 (Strasse, Ort, BLand, PLZ) R3: PLZverzeichnis2 (Ort, BLand, PLZ) R4: Städteverzeichnis (Ort, BLand, Vorwahl, EW) R5: Regierungen (BLand, Landesregierung) [Schritt 3 – Kandidaten entfällt] (entfällt) [Schritt 2 - Eliminieren] R3: PLZverzeichnis2 (Ort, BLand, PLZ) Ergebnis: Z = {R2, R4, R5}

15 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme15 Beispiele 9 R (A, B, C, D, E) FD = {A,B,C D,E; B,C,D A,E; D E} R (A, B, C, D, E, F) FD = {A,B C,D,E,F; E F} R (A, B, C, D, E) FD = {A,B,C D,E; B,C,D A,E} R (A, B, C, D, E) FD = {A,B,C D,E; D C; D E}

16 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme16 Beispiele 10 R (A, B, C, D, E, F) FD = {A,B C,D,E,F; A D; E F} R (A, B, C, D, E, F) FD = {A,B C,D,E,F; A D; E F; D B} R (A, B, C, D, E) FD = {A,B,C D,E; B,C,D A,E} R (A, B, C, D, E) FD = {A,B,C D,E; B,C,D A,E; C D}

17 Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme17 Ziele Verlustlosigkeit Abhängigkeitsbewahrung Algo: Dekomposition Algo: Basis Algo: Synthese


Herunterladen ppt "Einführung DBS I-Praktikum Lehr- und Forschungseinheit Datenbanken und Informationssysteme1 Normalisierung II."

Ähnliche Präsentationen


Google-Anzeigen