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
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)
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" )
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.
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.
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.
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.
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 !
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 !
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
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.
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)
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.