prev up next


Zerlegung von Relationen

Unter Normalisierung verstehen wir die Zerlegung eines Relationenschemas $\cal$R in die Relationenschemata $\cal$R 1,$\cal$R 2,...Rn, die jeweils nur eine Teilmenge der Attribute von $\cal$R aufweisen, d. h. $\cal$R i $\subseteq$ $\cal$R . Verlangt werden hierbei

Wir betrachten die Zerlegung in zwei Relationenschemata. Dafür muß gelten $\cal$R=R 1 $\cup$ $\cal$R 2. Für eine Ausprägung R von $\cal$R definieren wir die Ausprägung R1 von $\cal$R 1 und R2 von $\cal$R 2 wie folgt:

R1 : = $\displaystyle\Pi_{{\cal R}_1}^{}$(R)

R2 : = $\displaystyle\Pi_{{\cal R}_2}^{}$(R)

Eine Zerlegung von $\cal$R in $\cal$R 1 und $\cal$R 2 heißt verlustlos, falls für jede gültige Ausprägung R von $\cal$R gilt:

R = R1 $\displaystyle\bowtie$ R2

Es folgt eine Relation Biertrinker, die in zwei Tabellen zerlegt wurde. Der aus den Zerlegungen gebildete natürliche Verbund weicht vom Original ab. Die zusätzlichen Tupel (kursiv gesetzt) verursachen einen Informationsverlust.

3|c|Biertrinker    
Kneipe Gast Bier
Kowalski Kemper Pils
Kowalski Eickler Hefeweizen
Innsteg Kemper Hefeweizen

2|c|Trinkt  
2|c|Trinkt  
Gast Bier
Kemper Pils
Eickler Hefeweizen
Kemper Hefeweizen
   

3|c|Besucht $\bowtie$ Trinkt    
Kneipe Gast Pils
Kowalski Kemper Pils
Kowalski Kemper Hefeweizen
Kowalski Eickler Hefeweizen
Innsteg Kemper Pils
Innsteg Kemper Hefeweizen

Eine Zerlegung von $\cal$R in $\cal$R 1, ..., $\cal$R n heißt abhängigkeitsbewahrend (auch genannt hüllentreu ) falls die Menge der ursprünglichen funktionalen Abhängigkeiten äquivalent ist zur Vereinigung der funktionalen Abhängigkeiten jeweils eingeschränkt auf eine Zerlegungsrelation, d. h.

Es folgt eine Relation PLZverzeichnis, die in zwei Tabellen zerlegt wurde. Fettgedruckt sind die jeweiligen Schlüssel.

4|c|PLZverzeichnis      
Ort BLand Straße PLZ
Frankfurt Hessen Goethestraße 60313
Frankfurt Hessen Galgenstraße 60437
Frankfurt Brandenburg Goethestraße 15234

3c    
3c    
3|c|Orte  
Ort BLand
Frankfurt Hessen
Frankfurt Hessen
Frankfurt Brandenburg
   

Es sollen die folgenden funktionalen Abhängigkeiten gelten:

Die Zerlegung ist verlustlos, da PLZ das einzige gemeinsame Attribut ist und {PLZ} $\rightarrow$ {Ort, BLand} gilt.

Die funktionale Abhängigkeit {Straße, Ort, BLand} $\rightarrow$ {PLZ} ist jedoch keiner der beiden Relationen zuzuordnen, so daß diese Zerlegung nicht abhängigkeitserhaltend ist.

Folgende Auswirkung ergibt sich: Der Schlüssel von Straßen ist {PLZ, Straße} und erlaubt das Hinzufügen des Tupels [15235, Goethestraße].

Der Schlüssel von Orte ist {PLZ} und erlaubt das Hinzufügen des Tupels [Frankfurt, Brandenburg, 15235]. Beide Relationen sind lokal konsistent, aber nach einem Join wird die Verletzung der Bedingung {Straße, Ort, BLand} $\rightarrow$ {PLZ} entdeckt.


prev up next