Wurzelzieher

Inhalt

Relationale Algebra

Operationen

  

Kartesisches Produkt (Kreuzprodukt)

  

Projektion

  

Selektion (Restriktion)

  

Join

  

Umbenennung

  

Division

Minimalität und Vollständigkeit/ Erweiterungen der relationalen Algebra

  

Gruppierungsoperator und Aggregatfunktionen

  

NF²

  

Multimengensemantik

Beispiele

Siehe auch/ Literatur

Weblinks/ Einzelnachweise

 

 

Relationale Algebra

In der Theorie der Datenbanken versteht man unter einer Relationenalgebra oder einer Relationalen Algebra eine formale Sprache, mit der sich Abfragen über einem relationalen Schema formulieren lassen. Sie erlaubt es, Relationen miteinander zu verknüpfen oder zu reduzieren und komplexere Informationen daraus herzuleiten.

Die relationale Algebra definiert Operationen, die sich auf einer Menge von Relationen anwenden lassen. Damit lassen sich beispielsweise Relationen verknüpfen, filtern oder umbenennen. Die Ergebnisse aller Operationen sind ebenfalls Relationen. Aus diesem Grund bezeichnet man die Relationenalgebra als abgeschlossen.

Ihre Bedeutung hat die Relationenalgebra als theoretische Grundlage für Abfragesprachen in relationalen Datenbanken. Hier werden die Operationen der relationalen Algebra in so genannten Datenbankoperatoren implementiert. Wenn jede Operation der relationalen Algebra in der Abfragesprache durch (mindestens) einen Ausdruck umgesetzt werden kann, heißt sie relational vollständig; der Ausdruck kann hierbei mehrere Datenbankoperatoren verknüpfen. Wenn jede Operation auch durch (genau) einen Datenbankoperator umgesetzt werden kann, heißt sie streng relational vollständig; es darf also immer nur genau ein Datenbankoperator in ein und demselben umsetzenden Ausdruck enthalten sein. Wenn die Bedingung der strengen relationalen Vollständigkeit auch in die andere Richtung gilt, es also zu jedem Datenbankoperator eine entsprechende Operation der relationalen Algebra gibt, dann heißt die Abfragesprache äquivalent zur relationalen Algebra, kurz: relational äquivalent.

Da es für die relationale Algebra (mehrere) minimale Mengen von Operationen gibt, aus denen alle weiteren Operationen zusammengesetzt werden können, reicht es für die (streng) relationale Vollständigkeit aus, die Abfragesprache mit diesen „Basisoperationen“ zu vergleichen. Das folgt daraus, dass die relationale Algebra trivialerweise selbst-äquivalent ist und durch ein minimales System aus Operationen schon vollständig (im Hinblick auf Operationen) beschrieben ist. Ein übliches minimales System aus Operationen besteht aus den sechs Operationen: Projektion, Selektion, Kreuzprodukt, Vereinigung, Differenz und Umbenennung.


Die relationale Algebra wird wegen ihrer theoretischen Klarheit oft als Bewertungsmaßstab für die Mächtigkeit bzw. Ausdruckskraft von Abfragesprachen genutzt, u. a. mittels der gerade beschriebenen Vergleichsbegrifflichkeiten. Allerdings darf man von der größeren Nähe einer Abfragesprache zur relationalen Algebra nicht auf deren größere Mächtigkeit schließen. Abfragesprachen, die relational vollständig oder sogar streng relational vollständig sind, haben oft einen deutlich größeren Funktionsumfang als dies durch die alleinige Umsetzung der Relationen-Algebra-Operationen möglich wäre. Zum Beispiel ist in der relationalen Algebra die Möglichkeit der Bildung der transitiven Hülle einer Relation, was etwa bei rückbezüglichen Relationen interessant ist, nicht gegeben. Von der strengen relationalen Vollständigkeit einer Abfragesprache lässt sich eher auf eine Mindestfunktionaliät, von der relationalen Äquivalenz eher auf eine Maximalfunktionalität schließen, während die nichtstrenge relationale Vollständigkeit die wenigsten konkreten Informationen über die Abfragesprache liefert.

Im Gegensatz zu den Kalkülen ist die relationale Algebra sicher, d.h. sie liefert in endlicher Zeit ein endliches Resultat. Eine relationale Algebra ist darüber hinaus ein Beispiel für eine prozedurale Sprache; im Unterschied zu Kalkülen, die meist als deskriptive Sprachen formalisiert sind.

Die Erfindung der relationalen Algebra durch Edgar F. Codd hat in den 1970er Jahren die Datenbankwelt revolutioniert, deren Standarddatenmodelle damals das hierarchische Modell und das Netzwerkdatenbankmodell waren. Dies ging möglicherweise auf eine Arbeit von Alfred Tarski zur Algebra der binären Relationen zurück. Die Datenbanksprache SEQUEL, ein Vorläufer des heutigen SQL, war neben QBE und QUEL eine der ersten Umsetzungen der Ideen des relationalen Modells, und damit der relationalen Algebra.

 

 

 

 

Copyright- und Lizenzinformationen: Diese Seite basiert auf dem Artikel Relationale Algebra aus der freien Enzyklοpädιe Wιkιpedιa und steht unter der Lizenz Creative Commons CC-BY-SA 3.0 Unported (Kurzfassung). Liste der Autoren

Anbieterkennzeichnung

 



Load: 71; Render: 0; Total: 71