28
SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

Embed Size (px)

Citation preview

Page 1: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

Vorlesung #4

Überführung des ER-Modells in das relationale Modell

Page 2: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 2

„Fahrplan“

Übungsblatt 3 Wiederholung ER-Modell Funktionalitäten /

min-max-Notation Wiederholung/Einordnung relationales Modell Überführung des ER-Modells in das

relationale Modells

Page 3: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 3

Orientierung (Einordnung – wo stehen wir?)

Miniwelt

Relationales Schema

Objektorientiertes Schema

Netzwerk- Schema

UML-Klassen ER-Diagramm

Index(e)Cluster

partitionierte Tabelle(n)

DBMS -Speicherparameter 3.

1.

2.

Page 4: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 4

OrientierungPostrelationale Modelle

Objekt-orientiertes Modell Objekt-relationales Modell (evolutionär) Deduktives Modell (Datalog) Verteilte Datenbanken Web-Datenbanken (XML, XPath, XQuery) werden nach dem relationalen Modell kurz

vorgestellt

Page 5: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 5

OrientierungWarum gerade relational?

Sehr einfach und intuitiv Marktbeherrschend

ca. 80% der bereits installierten Datenbank-Systeme sind relational (bzw. objekt-relational)

ca. 90% der neu gekauften Datenbank-Systeme sind relational (bzw. objekt-relational)

Relationales Model bzw. RDBMS hat aber auch Schwächen in bestimmten Anwendungsszenarios, die wir als Motivation für postrelationale DBMS vorstellen

Page 6: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 6

Geschichte

Von Edward F. Codd 1970 vorgestellt: "A Relational Model of Data for Large Shared Data Banks."

Erste Prototypen System R (IBM) Ingres (University of California, Berkeley unter Leitung von

M. Stonebraker)

Erste Produkte Oracle (Software Development Laboratories, später

Relational Systems Inc., später Oracle Corporation) SQL/DS (IBM), Ingres (Relational Technology Inc.) ...

Page 7: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 7

Mathematische Definition

Gegeben sind n atomare, nicht notwendigerweise unterschiedliche Wertebereiche (Domänen)

D1, D2, ... , Dn

Beispiel: string, string, float, ... , integer Relation R ist die Teilmenge des kartesischen

Produkts der Domänen

R D1 x ... x Dn

Beispiel: Vorlesungen integer x string x integer Ein Tupel ist ein Element aus R

t RBeispiel: t = (4052, „Logik“, 4)

Page 8: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 8

Relationenschema

• legt die Struktur der gespeicherten Daten fest Beispiel:Vorlesungen: {[VorlNr:integer,Titel:string,SWS:integer]}

Ausprägung: der aktuelle Zustand der Datenbasis

Vorlesungen

VorlNr Titel SWS

5001 Grundzüge 4

5041 Ethik 3

... ... ...

Page 9: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 9

Relationenschema (2)

Vorlesungen

VorlNr Titel SWS

5001 Grundzüge 4

5041 Ethik 3

... ... ...

Relation (Tabelle, table)Relation (Tabelle, table)

Tupel (Zeile, row)Tupel (Zeile, row)

Attribut (Spalte, column)Attribut (Spalte, column)

Page 10: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 10

Relationenschema (3)

Trennung zwischen Schema und Ausprägung sch(R) – Menge der Attribute einer Relation R – die aktuelle Ausprägung dom(A) – Domäne eines Attributs sch(R) = {A1, ... , An}

R dom(A1) x ... x dom(An)

Primärschlüssel – (wie beim ER Modell) identifiziert eindeutig die Relation, wird unterstrichen

Page 11: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 11

Transformation:ER Modell relationales Modell ER (Entity Relationship) Modell

Entitiytypen Beziehungstypen

Relationales Modell Relationen

Aufgabe: Entity- und Beziehungstypen auf Relationen abbilden Entitiytyp Relation 1:1 Beziehungstyp Relation 1:n Beziehungstyp Relation n:m Beziehungstyp Relation

Page 12: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 12

Page 13: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 13

Page 14: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 14

Page 15: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 15

Page 16: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 16

Transformationsregeln:ER Modell relationales Modell Entitiytyp Relation (selbsterklärend) 1:1 Beziehungstyp Relation

Ein Fremdschlüssel der an der Beziehung teilnehmenden Entitytypen wird als Schlüssel der Relation übernommen. Der andere Schlüssel bleibt als Attribut(menge) in der Relation bestehen.

1:n Beziehungstyp Relation Ein Fremdschlüssel - Schlüssel des „n-Entitytypen“ wird als

Schlüssel übernommen, der andere Schlüssel bleibt als Attribut(menge) in der Relation bestehen

n:m Beziehungstyp Relation Beide Fremdschlüssel werden als Schlüssel der Relation

übernommen

Page 17: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 17

Page 18: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 18

Page 19: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 19

Page 20: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 20

Page 21: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 21

Page 22: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 22

Page 23: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 23

Page 24: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 24

Page 25: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 25

Wie gut ist mein Entwurf?

Das relationale Modell bzw. das relationale Schema wird in einem real existierenden DBMS umgesetzt

Wie gut ein Modell ist, lässt sich mit Hilfe der relationalen Entwurfstheorie und der Normalformen bestimmen (Vorlesung #5)

Wenn das konzeptuelle Schema (ER-Diagramm) „vernünftig“ ist und die Überführung in das relationale Schema unter der Beachtung der Transformationsregeln durchgeführt wurde, ist das relationale Schema auch „gut“ (meistens in der dritten Normalform 3NF)

„gut“ – Im Hinblick auf die relationale Theorie nicht auf die „Sinnhaftigkeit im Anwendungsfall“

Page 26: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 26

Schlechte Entwurfe

Jetzt wollen wir aber ein paar schlechte Entwurfe kennenlernen ...

!!! Kommen in der Praxis sehr oft vor, z.B. in Form von „konsolidierten“ Excel-Reports !!!

Kemper 6.15 - ...

Page 27: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

© Bojan Milijaš, 11.04.23 Vorlesung #4 - Überführung des ER Modells ... 27

Relationale Entwurfstheorie Funktionale Abhängigkeiten Dekomposition

Verlustlosigkeit Abhängigkeitserhaltung

Normalformen 1 NF 2 NF 3 NF BCNF, 4 NF ...

Ausblick Vorlesung #5

Page 28: SS 2010 – IBB4C Datenmanagement Fr 15:15 – 16:45 R 1.007 Vorlesung #4 Überführung des ER-Modells in das relationale Modell

SS 2010 – IBB4CDatenmanagement

Fr 15:15 – 16:45R 1.007

Vorlesung #4

Ende