Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Grundlagen des Relationenmodells

Ähnliche Präsentationen


Präsentation zum Thema: "Grundlagen des Relationenmodells"—  Präsentation transkript:

1 Grundlagen des Relationenmodells
Kapitel 4

2 Übersicht vom ER-Modell zum Relationenmodell Operatoren Optimierung
Entities, Attribute, Beziehungen Generalisierung Operatoren Optimierung

3 Vom ER-Modell zum Relationenmodell
Entities => Tabellen Attribute => Spalten der Tabelle Primärschlüssel bleibt gleich Relationships 1:1 => Fremdschlüssel als Spalte in einer der beiden Tabellen 1:n => Fremdschlüssel als Spalte in der zweiten Tabelle n:m => eigene Tabelle mit Fremdschlüsseln auf beide Relationen

4 Vom ER-Modell zum Relationenmodell
CNR n Ober Chef Dorfbewohner Name 1 Unter Dorfbewohner = (CNR, Name, Chef)

5 Generalisierung Hausklassenmodell vertikale Partitionierung
Jede Instanz ist genau einmal und vollständig in ihrer Hausklasse gespeichert vertikale Partitionierung Jede Instanz wird entsprechend der Klassenattribute in der Is_a-Hierarchie zerlegt und in Teilen in den zugehörigen Klassen gespeichert nur das ID-Attribut wird dupliziert.

6 Generalisierung Volle Redundanz Hierarchie-Relation
Eine Instanz wird wiederholt in jeder Klasse, zu der sie gehört, gespeichert. Werte der Attribute, die sie geerbt hat + Werte der Attribute der Klasse Hierarchie-Relation Generalisierungshierarchie in einer einzigen Relation Attribut zur Typidentifikation (TT - type tag) Nullwerte für Attribute, die in der zugeh. Klasse nicht vorhanden sind

7 Selektion CNR Name Beruf Chef 001 Asterix Krieger 006 002 Obelix
Hinkelsteinlieferant 003 Idefix Hund 004 Miraculix Druide 005 Troubadix Barde Majestix Häuptling Finde den Chef des Dorfes!

8 DUPLIKATE WERDEN ELIMINIERT!
Projektion CNR Name Beruf Chef 001 Asterix Krieger 006 002 Obelix Hinkelsteinlieferant 003 Idefix Hund 004 Miraculix Druide 005 Troubadix Barde Majestix Häuptling DUPLIKATE WERDEN ELIMINIERT! Welche Berufe haben die Dorfbewohner?

9 Vereinigung, Differenz & Durchschnitt
genau wie in der Mengenlehre

10 Division CNR Leibspeise 001 Wildschwein 002 003
Gammelfisch von Verleihnix 004 005 006 Welche Leibspeise haben alle Dorfbewohner gemeinsam? Leibspeise Wildschwein

11 Kreuzprodukt braucht man für unser Beispiel nicht und passt eh mal nicht auf die Folie A B C a1 b1 c2 c3 a2 b4 b5 A B a1 b1 a2 b4 b5 C c2 c3

12 Natural Join Ordne jedem Dorfbewohner seine Leibspeisen zu. CNR Name
Beruf Chef Leibspeise 001 Asterix Krieger 006 Wildschwein 002 Obelix Hinkelsteinlieferant 003 Idefix Hund Gammelfisch von Verleihnix 004 Miraculix Druide 005 Troubadix Barde Majestix Häuptling

13 (Left/Right) Outer Join
A verlustfrei. Notfalls Null-Werte. B verlustfrei. Beide Relationen verlustfrei.

14 Umbenennen von Relationen
Wofür brauchen wir das? wenn wie eine Relation mit sich selbst joinen wollen A.CNR A.Name A.Beruf A.Chef B.CNR B.Name B.Beruf b.Chef 001 Asterix Krieger 006 Majestix Häuptling 002 Obelix Hinkelsteinlieferant 003 Idefix Hund 004 Miraculix Druide 005 Troubadix Barde

15 Algebraische Optimierung
Führe Selektion so früh wie möglich aus! Führe Projektion (ohne Duplikateliminierung) frühzeitig aus! Verknüpfe Folgen von unären Operationen wie Selektion und Projektion! Fasse einfache Selektionen auf einer Relation zusammen!

16 Algebraische Optimierung
Verknüpfe bestimmte Selektionen mit einem vorausgehenden Kartesischen Produkt zu einem Verbund! Berechne gemeinsame Teilbäume nur einmal! Bestimme Verbundreihenfolge so, dass die Anzahl und Größe der Zwischenobjekte minimiert wird! Verknüpfe bei Mengenoperationen immer zuerst die kleinsten Relationen!

17 …dann ein paar Beispiele an der Tafel…
Fragen? …dann ein paar Beispiele an der Tafel…

18 Beispiel Welche Mitarbeiter arbeiten in ihrem Wohnort an einem Projekt? ABT ( ANR, BUDGET, A-ORT ) PERS ( PNR, NAME, BERUF, GEHALT, ALTER,W-ORT, ANR) PM ( PNR,JNR, DAUER, ANTEIL) PROJ ( JNR, BEZEICHNUNG, SUMME, P-ORT) Welche Mitarbeiter (PNR, Name) haben in allen Projekten gearbeitet? Welche Mitarbeiternamen gibt es mehrfach?

19 Algebraische Optimierung
Annahmen Anzahl der Tupel in ABT:N/5 PERS:N PM:5*N (>M) PROJ:M Anzahl der Attributwerte von A-ORT:10 P-ORT:100 Verlustfreie Verbunde über PS/FS ABT ( ANR, BUDGET, A-ORT ) PERS ( PNR, NAME, BERUF, GEHALT, ALTER, ANR) PM ( PNR,JNR, DAUER, ANTEIL) PROJ ( JNR, BEZEICHNUNG, SUMME, P-ORT) ABT |X| PERS = N |X| = 5N |X| PROJ = 5N sigma1 *= 1/100 sigma2 *= 1/10 π Name und Beruf von Angestellten, deren Abteilung in KL ist und die in KL Projekte durchführen


Herunterladen ppt "Grundlagen des Relationenmodells"

Ähnliche Präsentationen


Google-Anzeigen