12
FHTW Berlin Datenbanken Prof. Dr. Zschockelt Grundoperationen über Relationen Beispiel: Auswahl der ersten drei Spalten für eine externe Sicht! Beispiel : Anzeige ausgewählter Personaldaten Definition : R[L] = R[B 1 , B 2 , ... B j ] = { t*=(x i(1) , ... xi (j) : (x 1 , ... x n ) є R }, wobei L = (B 1 , B 2 , ..., B j ) eine Attributskombination von R = (A 1 , ... A n ) bezeichnet. PersNr Name Vorname Geschlech t Abt 023 Muh Magda w 34 145 Wau Harald m 34 437 Miau Irene w 56 759 Quak Andre m 56 854 Piep Ursel w 78 PersN r Name Vorname 023 Muh Magda 145 Wau Harald 437 Miau Irene 759 Quak Andre 854 Piep Ursel 1. Projektion (Auswahl von Spalten)

Grundoperationen über Relationen

  • Upload
    julio

  • View
    20

  • Download
    0

Embed Size (px)

DESCRIPTION

Projektion (Auswahl von Spalten). Grundoperationen über Relationen. FHTW Berlin Datenbanken Prof. Dr. Zschockelt. 1. Projektion (Auswahl von Spalten). Beispiel: - PowerPoint PPT Presentation

Citation preview

Page 1: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Grundoperationen über Relationen

Beispiel:Auswahl der ersten drei Spalten für eine externe Sicht!

Beispiel: Anzeige ausgewählter PersonaldatenDefinition: R[L] = R[B1, B2, ... Bj] = { t*=(xi(1), ... xi(j):

(x1, ... xn) є R }, wobei L = (B1, B2, ..., Bj) eine At

tributskombination von R = (A1, ... An) bezeichnet.

Projektion (Auswahl von Spalten)

PersNr Name Vorname Geschlecht Abt

023 Muh Magda w 34

145 Wau Harald m 34

437 Miau Irene w 56

759 Quak Andre m 56

854 Piep Ursel w 78

PersNr Name Vorname

023 Muh Magda

145 Wau Harald

437 Miau Irene

759 Quak Andre

854 Piep Ursel

1. Projektion (Auswahl von Spalten)

Page 2: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Grundoperationen über Relationen

Projektion (Auswahl von Spalten)

PersNr Name Vorname Geschlecht Abt

023 Muh Magda w 34

145 Wau Harald m 34

437 Miau Irene w 56

759 Quak Andre m 56

854 Piep Ursel w 78

2. Selektion (Auswahl von Zeilen)

PersNr Name Vorname Gesch Abt

023 Muh Magda w 34

437 Miau Irene w 56

854 Piep Ursel w 78

Definition: R(P) = { t є R:P(t)='true' }sofern die Bedingung P auf R(A1, ... , An) erklärt ist.

Beispiel: Auswahl aller Personen weiblichen Geschlechts ( Gesch = "w" )

Page 3: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Grundoperationen über Relationen

Projektion (Auswahl von Spalten)

PersNr Name Vorname Geschlecht Abt

023 Muh Magda w 34

145 Wau Harald m 34

437 Miau Irene w 56

759 Quak Andre m 56

854 Piep Ursel w 78

3. [natürlicher] Join (Verbund von zwei oder mehr Tabellen)

Verbunden über die Felder PersNrin beiden Tabellen.

PersNr Sprache Grad

023 engl 2

023 franz 1

437 engl 2

437 russ 3

759 engl 3

854 franz 2

PersNr Name Vorname Sprache Grad

023 Muh Magda engl 2

023 Muh Magda franz 1

437 Miau Irene engl 2

437 Miau Irene russ 3

759 Quak Andre engl 3

854 Piep Ursel franz 2

Beispiel: Anzeige der Sprachkenntnisse

Anmerkung: Projektion, Selektion und Verbund können kombiniert angewendet werden.

Page 4: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Grundoperationen über RelationenJoin (Verbund von zwei oder mehr Tabellen)

Projektion (Auswahl von Spalten)

Der Join (Verbund, Verknüpfung, Verkettung ) ermöglicht die Ableitung einer Relation R(A1, ... An) aus der tupelweisen Verknüpfung zweier Relationen R1(B1, ..., Bi)R2(C1, ..., Cj) kartesisches Produkt.

Durch spezielle Formen des Joins werden Einschränkungen definiert:

1. Theta-Join: Selektion der Tupel aus dem Produkt zweier Relationen auf Grund eines Prädikates P (z. B. Ai>Bj).

2. Equi-Join: Verkettung zweier Relationen über "UND"-verknüpfte in Semantik und Wertebereich (Domäne) gleiche Attribute.

3. Natürlicher Join: Equi-Join mit Elimination der doppelt auftretenden Attribute.

4. Outer-Join: Übernahme aller Tupel der ersten Relation R1 und natürlicher Join mit den Tupeln der zweiten Relation R2(auch Semi-Join)

Anmerkung: Für die Wirtschaftsinformatik sind insbesondere der natürliche und der Outer-Join bedeutsam.

Page 5: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Zusatzoperationen über RelationenAggregatfunktionen und Gruppierung

Projektion (Auswahl von Spalten)

Einige für kommerzielle DBMS notwendige Operationen lassen sich nicht mit den Grundoperationen der relationalen Algebra formulieren. Sie sind jedoch unentbehrlich für professionelle Datenbankauswertungen.

Aggregatfunktionen berechnen Werte über alle Tupel (Zeilen) einer Relation (Tabelle), wenn kein Gruppierungsmerkmal existiert

ODER einer Gruppe von Tupeln (Zeilen) einer Tabelle, wenn ein

Gruppierungsmerkmal existiert.

Grundlegende Aggregatfunktionen sind: SUM (Summierung), COUNT (Anzahl), AVG (Durchschnitt), MIN (Minimum), MAX (Maximum)

Eine Gruppe kann eine oder mehrere Attribute (Spalten) einer Relation (Tabelle) umfassen und wird durch die Gleichheit der gespeicherten Daten in diesen Attributen definiert.

Page 6: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Problemstellung der Normalisierung

Physische relationale Datenmodelle in 1NF können von schlechter Qualität sein. Ursache dafür sind mögliche Redundanzen und Anomalien.

Der Prozess der Qualitätsverbesserung eines physischen relationalen Datenmodells durch Beseitigung/Verminderung der Redundanzen und Anomalien wird Normalisierung genannt. Von besonderer Bedeutung für die Modellierung von relationalen Datenbanken (RDB) ist die dritte Normalform (3NF).

Die Theorie der Normalisierung fußt auf funktionalen Abhängigkeiten zwischen den Attributen einer Relation. Neben dem theoretischen Ansatz der Normalisierung gibt es typische semantische Beziehungstypen, die immer zum gleichen Resultat des Normalisierungsprozesses führen.

Page 7: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Redundanzen und Anomalien im RDM

Bestellung Lieferant Name Datum Artikel Bezeichnung Anzahl

023 00102 Adler GmbH 02. 01. 2003 140 Topfix 200

118 10033 Bussard AG 05. 03. 2003 237 Primus 30

437 00102 Adler GmbH 28. 03. 2003 555 Leckerle 500

540 20987 Zobel & Co. 02. 04. 2003 140 Topfix 120

540 20987 Zobel & Co. 02. 04. 2003 555 Leckerle 180

543 20987 Zobel & Co. 07. 04. 2003 237 Primus 20

Redundanz: Weitschweifigkeit, Überfluss (Überladung einer Information mit überflüssigen Informationselementen)

BESTELLUNG (Bestellung, Lieferant, Name, Datum, Artikel, Bezeichnung, Anzahl)

Die Tabelle befindet sich in 1NF, ist also formal zulässig, aber qualitativ nicht hinreichend gut !

Page 8: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Redundanzen und Anomalien im RDM

Bestellung Lieferant Name Datum Artikel Bezeichnung Anzahl

023 00102 Adler GmbH 02. 01. 2003 140 Topfix 200

118 10033 Bussard AG 05. 03. 2003 237 Primus 30

437 00102 Adler GmbH 28. 03. 2003 555 Leckerle 500

540 20987 Zobel & Co. 02. 04. 2003 140 Topfix 120

540 20987 Zobel & Co. 02. 04. 2003 555 Leckerle 180

543 20987 Zobel & Co. 07. 04. 2003 237 Primus 20

Redundanz: Weitschweifigkeit, Überfluss (Überladung einer Information mit überflüssigen Informationselementen)

BESTELLUNG (Bestellung, Lieferant, Name, Datum, Artikel, Bezeichnung, Anzahl)

Alle grün gekennzeichneten Informationen sind aus unterschiedlichen Gründen redundant !

Page 9: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Der Prozess der Normalisierung Das Normalisieren einer Relation (Tabelle) wird immer durch Aufteilung der Relation auf mehrere Relationen realisiert. Es wird so lange normali-siert, bis die nach der Aufteilung neu entstandenen Relationen der er-wünschten Normalform entsprechen.

Artikelcode Bezeichnung Lieferer Datum kg

0105 Zucker Meyer 12.04.2003 100

0105 Zucker Schulze 12.04.2003 150

0237 Mehl Meyer 18.04.2003 200

Beispiel:Diese Relationbefindet sichin 1NF

Artikelcode Lieferer Datum kg

0105 Meyer 12.04.2003 100

0105 Schulze 12.04.2003 150

0237 Meyer 18.04.2003 200

Artikelcode Bezeichnung

0105 Zucker

0105 Zucker

0237 Mehl

Diese Relationen befinden sich in 3NF

Page 10: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Fazit der Normalisierungstheorie

Nach den (theoretischen) Regeln der Normalisierung lässt sich eindeutig die Normalform einer Relation bestimmen.

Relationen lassen sich folglich immer in 3NF normalisieren. Es gibt für spezielle Fälle jedoch noch weitere Normalformen (4NF, 5NF) und Normalisierungsverfahren (z. B. Boyce Codd Normal-form – BCNF). siehe dazu Elmasri/Navathe: "Grundlagen von Datenbank- systemen", Addison-Wesley 2002

Aus betriebswirtschaftlicher (semantischer) Sicht führen typische Beziehungskonstellationen zu vorhersehbaren Normalisierungs-problemen. Bei Erkennen der typischen Beziehungskonstellation kann das daraus resultierende Normalisierungsproblem auch durch praktische Erfahrung gelöst werden.

Page 11: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Zwei typische semantische Beziehungstypenmehrwertige Attribute

Ein- und mehrwertige Attribute in einer Relation, die ein Objekt beschreibt, führen immer zur Verletzung der 2NF. Sie müssen als Master-Detail-Beziehung immer mit zwei oder mehr Relationen beschrieben werden.

Beispiel: BESTELLUNG (Bestellung, Lieferant, Name, Datum, Artikel, Anzahl, Nettopreis)

Die bestellten Artikel, ihre Bezeichnung und Anzahl sind ein Detail des Masters BESTELLUNG, das in einer Bestellung mehrfach vorkommen kann.

Die Lösung: BESTELLUNG (Bestellung, Lieferant, Name, Datum)POSTEN (Bestellung, Artikel, Anzahl, Nettopreis)

Page 12: Grundoperationen über Relationen

FHTW Berlin Datenbanken Prof. Dr. Zschockelt

Zwei typische semantische BeziehungstypenDynamische Domänen

Dynamische Domänen dienen zur Verwaltung eines sehr großen und/oder stark veränderlichen Wertevorrats für ein Attribut, dessen Konsistenz über die referentielle Integrität geprüft wird.Dynamische Domänen müssen deshalb immer in einer eigenen Relation verwaltet werden.

Beispiel: BESTELLUNG (Bestellung, Artikel, Anzahl, Nettopreis)ARTIKELKATALOG (Artikel, Artikelbezeichnung)

Artikel in der Tabelle BESTELLUNG ist ein Fremdschlüssel, der die referentielle Abhängigkeit von der Tabelle ARTIKELKATALOG wider-spiegelt.

Generell gilt aber:Semantische Beziehungen zwischen Objekten werden vorrangig in semantischen Datenmodellen (z. B. ERM) wirksam.