Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Relationentheorie AIFB SS2001 1 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata (2|8) (2)Synthese.

Ähnliche Präsentationen


Präsentation zum Thema: "Relationentheorie AIFB SS2001 1 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata (2|8) (2)Synthese."—  Präsentation transkript:

1 Relationentheorie AIFB SS2001 1 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata (2|8) (2)Synthese Ausgangspunkt: Menge U von Attributen Menge F von fAs Prinzipielle Vorgehensweise: Schrittweises Zusammenfassen von Attributen und fAs zu Relationsschemata unter Berücksichtigung der 3NF-Eigenschaft.

2 Relationentheorie AIFB SS2001 2 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata (3|8) Dieser erzeugt 3NF-Relationen (sogar BCNF). Bei großem F aufwendig, da redundante fAs entfernt werden müssen: Membership-Problem Geg.: G ( F + ), g G Frage:g (G \ {g}) + ? Hierzu mehrfach Berechnung von F + bzw. anderer Mengen von fAs notwendig. Zur Synthese gibt es einen Algorithmus Synthese-Algorithmus nachBernstein 1976, Biskup, Dayal, Bernstein 1979

3 Relationentheorie AIFB SS2001 3 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata (4|8) Synthesealgorithmus (grob) Gegeben: U, F (U); Relation r:(U | F); K (bel.) Schlüssel [A]Wandle F um zu H mit H ~ F und H möglichst einfach: H: L 1 R 1 ; L 2 R 2 ;...; L k R k o.B.d.A.: i j L i L j ; L i R i = Ø (i, j = 1,..., k) [B]Mache aus jedem L i R i eine Relation r i :(L i R i | L i R i ) (i = 1,..., k) Ist (r 1, r 2,..., r k ) eine Zerlegung von r? (vgl. 1.6.2, Def. S.2/7) (Z1) Attribute: Es gilt i (L i R i ) = U U, aber ist möglich! (1) (Z2) fAs: i {L i R i } = H ~ F und somit F +, sogar H + = F +. (2)(1)(2) [C]falls i: L i U F + : (r 1, r 2,..., r k ) (3) falls nein: (r 0, r 1, r 2,..., r k ) mit r 0 :(K | Ø) (4) ist verlustfreie fA-erhaltende Zerlegung von r in BCNF-Relationen(3)(4)

4 Relationentheorie AIFB SS2001 4 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata (5|8) (1)Sei S:= U \ U; dann gilt: a S: a ist Attribut jedes Schlüssels in r! (2)Falls Zerlegung (s. (Z1)), dann fA-erhaltend! (3)In diesem Fall kann es keine isolierten Attribute a geben – d.h. S = Ø! – somit Zerlegung. (4)In diesem Fall sind alle isolierten Attribute in K – d.h. S K! (wg. (1)) – somit wieder Zerlegung. (3&4) In beiden Fällen: Zerlegung enthält Schlüssel, somit verlustfrei! Anmerkungen zu Synthesealgorithmus (grob): zurück

5 Relationentheorie AIFB SS2001 5 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata (6|8) [A] Wandle F um zu H mit H ~ F und H möglichst einfach : 1. Schritt: Mache alle f F einfach Ergebnis: F; F ~ F 2. Schritt:Entferne überflüssige Attribute der linken Seiten der fAs Ergebnis: G; G ~ F; alle f G sind elementar 3. Schritt:Finde nicht redundante Überdeckung in G, Ergebnis: H; H ~ G Synthesalgorithmus (ausführlich): Gegeben: U, F F(U); Relation r:(U | F); K (bel.) Schlüssel o.B.d.A.: F enthält keine trivialen fAs

6 Relationentheorie AIFB SS2001 6 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata (7|8) [B] Mache aus jedem L i R i eine Relation r i :(L i R i | L i R i ) 4. Schritt: Fasse funktionale Abhängigkeiten mit gleicher linker Seite L i zu einer Klasse zusammen. Ergebnis: H i = {L i b | L i b H} (i =1, …, m) Setze: R i = {b | L i b H i } (i =1, …, m) 5. Schritt: Konstruiere Relationsschemata: - := {r i : (L i R i | H i ) | i =1, …, m} (es gilt dabei natürlich auch: - := {r i : (L i R i | L i R i ) | i =1, …, m} )

7 Relationentheorie AIFB SS2001 7 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata (8|8) [C] 6. Schritt : Prüfe, ob irgendeine Attributmenge L i R i bereits einen Schlüssel von r enthält. Falls L i U F + für ein i, dann := - sonst := - {r 0 : (K | Ø)} Ergebnis: ist - Zerlegung von r - verlustfrei - fA-erhaltend - in 3NF (sogar in BCNF).


Herunterladen ppt "Relationentheorie AIFB SS2001 1 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata 1.6.4 Algorithmen zur Bildung von 3NF-Relationsschemata (2|8) (2)Synthese."

Ähnliche Präsentationen


Google-Anzeigen