Der Satz von Delobel (von Claude Delobel) liefert eine einfache Möglichkeit, um zu überprüfen, ob zwei Fragmente einer Relation in einer Datenbank eine verlustfreie Darstellung der Ausgangsrelation sind. Eine Zerlegung von Relationen ist nötig, um das Entstehen von Anomalien zu vermeiden.

Formale Darstellung

Bearbeiten

Gegeben seien die Relation   und ihre Zerlegung in   und   mit   und  .

Dann gilt: D ist verlustfrei   oder  .[1][2][3]

Letzteres bedeutet, dass die gemeinsamen Attribute   als Fremdschlüssel für eine der beiden Relationen dienen können. Um die Bedingung zu prüfen, müssen nicht alle funktionale Abhängigkeiten   berechnet werden, sondern lediglich die Attributhülle von  , was in Linearzeit möglich ist.[4]

Beispiel

Bearbeiten

Die Ausgangsrelation ist definiert als   mit Zerlegungen

  und  .

Damit verteilen sich die Attribute folgendermaßen:

Menge Attribute
B b, c, d
A a
C e

Nach Delobel folgt hieraus, dass die Zerlegung verlustfrei ist, wenn gilt   oder  .

Aus   folgt unmittelbar, dass auch  .

Siehe auch

Bearbeiten
  1. Jorma Rissanen: Independent components of relations. In: ACM Transactions on Database Systems. Band 2, Nr. 4, 1. Dezember 1977, ISSN 0362-5915, S. 317–325, doi:10.1145/320576.320580 (acm.org [abgerufen am 17. August 2024]).
  2. Wolfgang Panny: Relationentheorie — Abhängigkeiten, Normalformen, Data Design. Abgerufen am 17. August 2024.
  3. Prakash Ramanan: Conditions for lossless join. In: International Journal of Computer Mathematics. Band 78, Nr. 4, Januar 2001, ISSN 0020-7160, S. 489–498, doi:10.1080/00207160108805127 (archive.org [PDF; abgerufen am 17. August 2024]).
  4. Catriel Beeri, Philip A. Bernstein: Computational problems related to the design of normal form relational schemas. In: ACM Transactions on Database Systems. Band 4, Nr. 1, 1. März 1979, ISSN 0362-5915, S. 30–59, doi:10.1145/320064.320066 (acm.org [abgerufen am 17. August 2024]).