Relationale Algebra Vortrag am 31.03.2017 © 2007 Daniel Birkholz
Ziele Grundbegriffe der Relationalen Algebra Schlüsselwerte Domainen Attribute und Attributwerte Relationen und Relationsschemata Ausprägung (Extension) Tupel Beispiel Schlüsselwerte Schlüsselkandidat Primärschlüssel Fremdschlüssel Nullwerte Operationen der Relationalen Algebra
Zweck der relationalen Algebra
Ziele der relationalen Algebra Mathematisches Werkzeug der Datenbank-Technologie Mathematische Disziplin der Mengenlehre Ordnung von Mengen Mengen und Werte in Beziehungen (Relationen) setzen Analysen und Operationen auf diesen Mengen und Beziehungen durchführen Bildet die mathematische Möglichkeit Datenbankoperationen zu optimieren
Grundbegriffe der Relationalen Algebra
Mengen als Grundlage Mengen sind Sammlungen von Daten Mengen bezeichnen keine Strukturierung von Daten Mengen setzen Daten nicht in Relationen zueinander Es gilt die Daten in Mengen zu definieren Relationen werden über definierte Beziehungen zwischen den Mengen realisiert
Domainen Bezeichnen die atomaren Werttypen einer Relation Vergleichbar mit Wertebereichen () Geben den Typ eines Attributs an z.B: ganze Zahlen, Gleitkommazahlen, Zeichenketten …
Attribute Zuordnung von bezeichnenden Namen (Charakteristik) und Domänen Vergleichbar mit Eigenschaften eines Objektes Kleinste Einheit einer Relation
Attributwert Bezeichnet den Wert eines Attributes Bezieht sich auf eine Tupel Beispiel: Bezieht sich auf den Wert des Attributes des Tupels t
Relationen Ist eine Menge von Attributen, welche miteinander Verknüpft sind Bezeichnet eine Sammlung von Daten Relationsschema: Allgemeine Zuordnungsvorschrift (legt Struktur fest) Bsp.:
Ausprägung Stellt die Ganzheit der Zuordnung von Werten und Attributen dar Wird auch als Extension bezeichnet Mathematisch dargestellt als:
Tupel Bezeichnet das Element einer Ausprägung Bezeichnet die Werte der Attribute welche miteinander in Relation stehen Siehe folgendes Beispiel
Beispiel Attribut gekennzeichnet Durch Domain Relationsschema Ausprägung (Extension) Tupel
Schlüsselwerte
Schlüsselkandidat Ein Attribut ist ein Schlüsselkandiat (C) wenn gilt: Bedeutet: Wenn für zwei beliebige Tupel die Attributwerte von C identisch sind, so sind die Attributwerte für alle Attribute der Tupel identisch
Primärschlüssel Ein Schlüsselkandidat Wird zur primären Identifizierung von Tupeln verwendet Kriterien: Attribut soll sich möglichst wenig ändern (ideal nie) Es sollte keine wiederkehrenden Attribute geben Es soll niemals wieder einen gleichen Attributwert geben Attribut Domain soll wenig Speicherplatz verbrauchen (daher möglichst Zahlenwerte / ID‘s)
Fremdschlüssel Bezeichnet einen Attribut, dessen Attributwerte Primärwertschlüssel aus anderen Relationen darstellen A1 sei ein Primärschlüssel
Fremdschlüssel Bezeichnet einen Attribut, dessen Attributwerte Primärwertschlüssel aus anderen Relationen darstellen A1 sei ein Primärschlüssel
Nullwerte Unbestimmte oder undefinierte Werte eines Attributes werden als Nullwerte bezeichnet Es gelten folgende Bedingungen für Schlüsselwerte: Primärschlüssel dürfen niemals einen Nullwert haben Für Fremdschlüssel gilt, wenn ein Fremdschlüssel einen Nullwert besitzt, so müssen ALLE Fremdschlüssel des gleichen Tupels Nullwerte sein Referenzielle Integrität
Operationen der Relationalen Algebra
Operationen der relationalen Algebra Dienen dem Manipulieren, Selektieren und Verknüpfen von relationalen Datensammlungen Diese Operationen bilden Grundlage für DB-Operationen und Zugriffe SEQUEL SQL (Structured Query Language) CQL (Continuous Query Language) Die Operationen der relationalen Algebra gelten als abgeschlossen Basierend auf Relationen werden Relationen erzeugt
Mengenoperationen Auf Relationen lassen sich Mengenoperationen anwenden Vereinigung (union) Durchschnitt (intersection) Differenz (difference)
Selektion - selection Eine der wichtigsten Operationen Wird auch als „filtering“ oder „restriction“ bezeichnet Es gilt eine Auswahl aus einer Menge von Tupel zu treffen (also aus einer Extension) Die Selektion wird Formeltechnisch folgendermaßen definiert:
Selektion – Beispiel „Personen“ Vorname Name Alter Vikusiya Karpova 19 Lena 18 Gala Tupolev Pascha Pushkin 17 Vorname Name Alter Vikusiya Karpova 19 Lena 18 Gala Tupolev
Projektion - projection Bildet aus Relationen eine neue Relation ab Die Attributelemente der neuen Relation werden speziell definiert E seinen A Attributmengen. So gilt:
Projektion – Beispiel „Personen“ Vorname Name Alter Vikusiya Karpova 19 Lena 18 Gala Tupolev Pascha Pushkin 17 Vorname Name Vikusiya Karpova Lena Gala Tupolev Pascha Pushkin
Natürlicher Verbund – natural join Bildet eine Vereinigung der Attributmengen zweier Relationen ab R sei eine Relation mit Schema A S sei eine Relation mit Schema B Es wird somit eine Extension aus dem natürlichen Verbund gebildet A B C D C D E F A B C D E F
Natural Join – Beispiel „Personen“ Vorname Name Vikusiya Karpova Vika Marcus Pushkin Emanuel Name Alias Karpova Tiger Cat Pushkin Bear Vorname Name Alias Vikusiya Karpova Tiger Cat Vika Marcus Pushkin Bear Emanuel
Kartesisches Produkt – cartesian product Matched Relationen miteinander Es findet wie beim „natural Join“ eine Zuordnung der Attribute in einer neuen Menge statt Es werden bei hierbei alle möglichen Tupelkombinationen abgebildet
Kartesisches Produkt – cartesian product Vorname Name Vikusiya Karpova Vika Marcus Pushkin Emanuel Name Alias Karpova Tiger Cat Pushkin Bear Vorname A.Name B.Name Alias Vikusiya Karpova Tiger Cat Pushkin Bear Vika Marcus …
Theta Verbund – theta join Bildet ein kartesisches Produkt unter der Voraussetzung einer Bedingung ab Bedingung bezeichnet eine Selektion Theta Verbund ist kartesisches Produkt + Selektion
Theta Verbund – theta join Vorname Name Vikusiya Karpova Vika Marcus Pushkin Emanuel Name Alias Karpova Tiger Cat Pushkin Bear Vorname A.Name B.Name Alias Vikusiya Karpova Tiger Cat Vika Marcus Pushkin Bear Emanuel …
Vielen Dank für die Aufmerksamkeit
Quellen Einführung in die Informatik – 5. Aufl. H.-P. Gumm / M. Sommer Oldenbourg Verlag Algorithmen und Datenstrukturen Gunter Saake / Kai-Uwe Sattler dpunkt.lehrbuch Schüler Duden Informatik Prof. Dr. Volker Claus / Prof. Dr. Andreas Schwill Dudenverlag Deutsche Wikipedia www.wikipedia.de Informationssysteme für Ingenieure (ISI) SS2006 R. Marti