Normalisierung II Lehr- und Forschungseinheit Datenbanken und Informationssysteme.

Slides:



Advertisements
Ähnliche Präsentationen
Definition Überlappung und Überdeckung
Advertisements

Kapitel 6 Relationale Entwurfstheorie
Organisatorisches Kapitel 6 Relationale Entwurfstheorie Funktionale Abhängigkeiten Normalformen Normalisierung durch Dekomposition.
Polynomial Root Isolation
Abschluss Gegeben Menge F von funktionalen Abhängigkeiten.
1.4.5 Zur Berechnung von F+ (1|7)
Prof. Dr. T. Kudraß1 Logischer DB-Entwurf. Prof. Dr. T. Kudraß2 Entwurf eines relationalen DB-Schemas Ziel: –Regeln für die Umsetzung eines ER-Modells.
Relationaler Datenbankentwurf (II)
spezielle Nutzersichten formale Ebene (deskriptive Regeln)
[01] - ERM Modellierung I Basiselemente von E-R-Diagrammen kennen
Normalisierung nach Edgar. F. CODD (1970)
Kapitel 6 Relationale Entwurfstheorie
Kapitel 3: Das Relationenmodell
Relationale Entwurfstheorie
Grundlagen Datenbanken
Speicherung globaler Relationen: Fragementierung und Allokation
Parser für CH3-Sprachen
Datenbankdesign und Normalisierung
Daten bank St. Wiedemann.
Problemstellung Berechne die Summe der Quadrate aller natürlichen Zahlen bis zu einer vorgegebenen Zahl (bspw. 100)! Oder mathematisch: Berechne.
Normalformen Normalisieren Schlüssel
6 Normalformen Normalisieren Schlüssel
Programmiermethodik Übung 6 Methoden verstehen und entwerfen.
ERM – Modellierung Teil 2
Willkommen zum DBS I – Praktikum!
Relationenmodell (RM)
Kapitel 11: Relationale Entwurfstheorie
Kapitel 11: Relationale Entwurfstheorie
Relationentheorie AIFB SS Algorithmen zur Bildung von 3NF-Relationsschemata Algorithmen zur Bildung von 3NF-Relationsschemata (2|8) (2)Synthese.
Grundsätzliche Resultate Theorem: Für jeden Relationstyp R(A 1,...,A n ) und jede Menge von FDs über {A 1,...,A n } gibt es: –eine verlustlose (aber nicht.
Relationentheorie AIFB SS a c d b e Beispiel 1-13: s:(U | F) U = {a, b, c, d, e}; F = {ab c, c d, b e} Dritte Normalform (3NF) Dritte.
Abbildungsverfahren (1)
1.4.3 Die abgeschlossene Hülle F+ (1|5)
Algorithmus zur Zerlegung in 3NF (1)
Anomalien Nichtreflexive MVDs (und somit speziell auch nichtreflexive FDs) sind unerwünscht, da sie bei Schreibzugriffen sogenannte Anomalien verursachen.
Zerlegung und Konstruktion Frage 2: Welche Zerlegungen sind korrekt? Zerlegung ersetzt Relationstyp R(A 1,...,A n ) und Menge von assoziierten Abhängigkeiten.
Brückenschaltung 1.
Maschinelles Lernen und automatische Textklassifikation
Die Grundterminologie
Effiziente Algorithmen
SS 2013 – IBB4B Datenmanagement Fr 17:00 – 18:30 R Vorlesung #5 Relationale Entwurfstheorie.
Effiziente Algorithmen
Effiziente Algorithmen Hartmut Klauck Universität Frankfurt SS
Effiziente Algorithmen
Hartmut Klauck Universität Frankfurt SS
1 J4 Hash-Join R und S werden mittels der gleichen Hashfunktion h – angewendet auf R.A und S.B – auf (dieselben) Hash- Buckets abgebildet Hash-Buckets.
Kapitel 6 Relationale Entwurfstheorie
SS 2011 – IBB4C Datenmanagement Fr 15:15 – 16:45 R Vorlesung #5 Relationale Entwurfstheorie.
Das relationale Modell
verstehen planen bearbeiten
Normalisierungsprozess
Voll funktionale Abhängigkeiten (4)
Dritte Normalform Relationstyp R(A1,...,An) und Menge  von FDs und MVDs für R sei im Folgenden fest vorgegeben. R ist in dritter Normalform (3NF), wenn.
Schlüssel Einordnung des Schlüsselbegriffs in Abhängigkeitstheorie:
Institut für Kartographie und Geoinformation Prof. Dr. Lutz Plümer Geoinformation II 6. Sem. Vorlesung Mai 2000 Konstruktion des Voronoi-Diagramms.
Einfügeoperationen (1) n Sei V Sichtrelation und t ein Tupel. n Dann ist insert(V,t) informationserhaltend auf Einfügeoperationen in den Basisrelationen.
9. Differentialrententheorie
Inhalt Einordnung und Funktion der lexikalische Analyse Grundlagen
Relationentheorie  AIFB SS Zerlegung Zerlegung (1|6) 1.Die funktionalen Abhängigkeiten müssen erhalten bleiben („fA-erhaltend“). 2.Die.
Informationserhaltende Zerlegungen (1) T R sei Relationstyp mit Attributmenge A R und Ausprägung R Zerlegung in Relationstypen T R 1,...,T R k mit Attributmengen.
Matthias Gläfke Data Mining - Seminar im Sommersemester Vortrag Pincer-Search 5. Juni 2007.
SS 2015 – IBB4C Datenmanagement Fr 17:00 – 18:30 R Vorlesung #5 Relationale Entwurfstheorie.
Datenbanken Normalisierung
IS: Datenbanken, © Till Hänisch 2000 Entwurfstheorie Normalisierung oder "Wie man sich Ärger erspart"
Datenbanken Relationale Entwurfstheorie Ralf Möller Universität zu Lübeck Institut für Informationssysteme.
IS: Datenbanken, © Till Hänisch 2000 Company: Entity types DEPARTMENT Name, Number, {Location},Manager, Mgr-Start- Date PROJECT Name, Number, Location,
Kapitel 6 Relationale Entwurfstheorie Funktionale Abhängigkeiten Normalformen Normalisierung durch Dekomposition.
Ziele der relationalen Entwurfstheorie  Bewertung der Qualität eines Relationenschemas  Redundanz  Einhaltung von Konsistenzbedingungen  Funktionaler.
Kapitel 6 Relationale Entwurfstheorie
 Präsentation transkript:

Normalisierung II Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Ziele Verlustlosigkeit Abhängigkeitsbewahrung Algo: Dekomposition Algo: Basis Algo: Synthese Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Grundlagen Warum? Redundanzvermeidung (Speicherbedarf) Performanz-Aspekte (z.B. bei der Suche) Elegantes Datenmodell zur leichten Datenpflege Lehr- und Forschungseinheit Datenbanken und Informationssysteme

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 Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Beispiel – Verlustlosigkeit? Relation: Biertrinker Kneipe Gast Bier Zur runden Ecke Alfons Pils Zur runden Ecke Heinz Hefeweizen Brauhaus Alfons Hefeweizen Zerlegung: Relation: Besucht Relation: Trinkt Kneipe Gast Gast Bier Zur runden Ecke Alfons Alfons Pils Zur runden Ecke Heinz Heinz Hefeweizen Brauhaus Alfons Alfons Hefeweizen Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Beispiel – Keine Verlustlosigkeit. Relation: Biertrinker Funktionale Abhängigkeiten: FD1 = {Kneipe, Gast  Bier} nicht: FD2 = {Gast  Bier} FD2 = {Gast  Kneipe} Kneipe Gast Bier Zur runden Ecke Alfons Pils Zur runden Ecke Heinz Hefeweizen Brauhaus Alfons Hefeweizen Zur runden Ecke Alfons Hefeweizen Brauhaus Alfons Pils Kreuzprodukt: Relation: Besucht Relation: Trinkt Kneipe Gast Gast Bier Zur runden Ecke Alfons Alfons Pils Zur runden Ecke Heinz Heinz Hefeweizen Brauhaus Alfons Alfons Hefeweizen Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Abhängigkeitsbewahrung 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 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) Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Algorithmus: Dekomposition Sukzessive, verlustlose Zerlegung des Relationenschema R in (BCFN) Teilrelationen Input: Menge Z = {R} Output: Menge Z = {R1 ... Rn} Solange noch Relationenschema Ri  Z existiert, dass nicht in BCFN ist, folgendes .. ... es existiert also eine nicht-triviale FD (  ) einer Ri mit:    =    Ri Zerlege Ri in Rj =    Rk= Ri –  Entferne Ri aus Z, füge Rj und Rk ein Z := (Z - {Ri})  {Rj, Rk} Lehr- und Forschungseinheit Datenbanken und Informationssysteme

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 = {Lieferanten} Z = {R2, R3} Ergebnis: Z = {R2, R4, R5} Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Algorithmus: Basis I Interesse: kleinstmögliche noch äquivalente Menge von FDs Input: Menge F = {FD1 .. FDn} Output: Eine Basis Fc von F Fc  F, d.h. Fc+ = F+ (Hüllen identisch) Fc besitzt keine FDs (  ), bei denen  oder  überflüssige Attribute besitzen  A   : (Fc – (  )  (( - A)  ))  Fc  B   : (Fc – (  )  (  ( - B))  Fc Jede linke Seite einer FD in Fc ist einzigartig .. erzielt mit (  ) und (  ) wird zu (  , ) Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Algorithmus: Basis II Interesse: kleinstmögliche noch äquivalente Menge von FDs Input: Menge F = {FD1 .. FDn} Output: Eine Basis Fc 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 (  , ) Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Basis: Beispiel Relation 1: (A, B, C) Ergebnis: Fc = {A  B, 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: Fc = {A  B, B  C} Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Algorithmus: Synthese Verlustlose, abhängigkeitsbewahrende Zerlegung des Relationenschema R in (3.NF) Teilrelationen Input: Menge Z = {R} Output: Menge Z = {R1 ... Rn} Bestimme die Basis Fc zu F Für jede funktionelle Abhängigkeit (  )  Fc Kreiere Relationenschema Ra =    Ordne Ra die FDs FDa := {’  ‘  Fc | ’  ’  Ra} Wenn R bezgl. Fc einen Kandidatenschlüssel enthält – fertig, sonst Kandidatenschlüssel k  R bestimmen Neues Relationenschema Rk := k FDk :=  Eliminiere Relationenschemata, die in anderen enthalten sind, d.h. Ra  Ra’ Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Synthese : Beispiel Relation 1: Universität (Ort, BLand, Landesregierung, EW, Vorwahl,PLZ, Strasse) FD1: Strasse, Ort, BLand  PLZ FD2: 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] Ergebnis: Z = {R2, R4, R5} Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Beispiele 9 R (A, B, C, D, E) FD = {A,B,C  D,E; B,C,D  A,E; D  E} FD = {A,B  C,D,E,F; E  F} FD = {A,B,C  D,E; B,C,D  A,E} FD = {A,B,C  D,E; D  C; D  E} Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Beispiele 10 R (A, B, C, D, E, F) FD = {A,B  C,D,E,F; A  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} FD = {A,B,C  D,E; B,C,D  A,E; C  D} Lehr- und Forschungseinheit Datenbanken und Informationssysteme

Ziele Verlustlosigkeit Abhängigkeitsbewahrung Algo: Dekomposition Algo: Basis Algo: Synthese Lehr- und Forschungseinheit Datenbanken und Informationssysteme