Vorlesung #4 Überführung des ER-Modells in das relationale Modell
Vorlesung #4 - Überführung des ER Modells ... „Fahrplan“ UML Wiederholung/Einordnung relationales Modell Überführung des ER-Modells in das relationale Modells 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
/* Objektorientierte (OO) */ Modellierung mit UML Unified Modelling Language UML Grafische Modellierungsprache, definiert Notationen De-facto Standard für den OO Software-Entwurf Verschiedene Abstraktionsebenen Sequenzdiagramme – Zusammenspiel von Objekten in komplexen Anwendungen Anwendungsfälle – use cases Aktivitäts- und Zustandsdiagramme Graphische Notationen für die Zerlegung in Komponenten/Packages mächtiger als ER-Modell 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... UML – use cases 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
UML – Interaktionsdiagramm ProfessorIn Bibliothek Terminkalender Vorlesungsverz. Entleihe_Buch() Create() Vorlesung Raumvergabe freierTermin() reserviereTermin() eintragenTermin() ankündigenVorlesung() 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
UML Diagramme - Übersicht Verhaltensdiagramme (dynamisch) Aktivitätsdiagramm Anwendungsfalldiagramm Interaktionsübersichtsdiagramm Kommunikationsdiagramm Sequenzdiagramm Zeitverlaufsdiagramm Zustandsdiagramm Strukturdiagramme (statisch) Klassendiagramm – „entspricht“ ER Diagramm 6 weitere Strukturdiagramme: Kompositionsstrukturdiagramm, Komponentendiagramm, Verteilungsdiagramm, Objektdiagramm, Paketdiagramm, Profildiagramm Quelle - Wikipedia 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Datenbankentwurf mit UML (Klassendiagramme) Datenbankentwurf: strukturelle Modellierung der Klassen und Assoziationen zwischen den Klassen Objekte entsprechen den Entities Objektklassen beschreiben eine Menge von gleichartigen Objekten (Entities) Zusammenhänge (Beziehungen, Relationships) zwischen Objekten werden als Assoziationen zwischen den Klassen beschrieben 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
UML – Klasse Studenten + MatrNr : int + Name : String + Semester : int Zentrales Konstrukt ist die Klasse (class), mit der gleichartige Objekte hinsichtlich Struktur (~Attribute) Verhalten (~Operationen/Methoden) modelliert werden Sichtbarkeit: + public private # in subclasses Studenten + MatrNr : int + Name : String + Semester : int +Notenschnitt() : float +SummeSWS Klassenname Attribute Operationen 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... UML – Klassen (2) Beim Datenbankentwurf sind alle Attribute sichtbar, da die Autorisierung detaillierter über DBMS erfolgt Kein Schlüsselkonzept, sondern systemweite, invariante OIDs (Objektidentifikatoren) Während der gesamten Lebenszeit des Objekts unveränderbar Identifikation Referenz (Verweise) 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... UML – Assoziationen Assoziationen zwischen Klassen entsprechen Beziehungstypen Abbildung von rekursiven Beziehungen möglich Richtung für den Zugriff auf die assoziierten Objekte kann angegeben werden, hat in Datenbankentwurf aber keine bedeutende Rolle, da immer in beiden Richtungen traversiert wird Multiplizität einer Relation analog zu Funktionalitäten des ER-Modells (1:1,1:N,N:M) 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... UML – Assoziationen (2) 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... UML – Aggregationen Teil/Ganzes Komposition exklusive Zuordnung von existenzabhängigen Teilobjekten zu einem übergeordnetem Objekt Notation ausgefüllte Raute auf der Seite der übergeordneten Klasse Multiplizität 1 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... UML – Generalisierung Generalisierung/Spezialisierung spielen zusammen mit Vererbung eine wichtige Rolle bei der Erstellung wiederverwendbarer Objektklassen Beispiel: Assistenten und Professoren werden zu Angestellten generalisiert 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Orientierung (Einordnung – wo stehen wir?) Miniwelt UML-Klassen ER-Diagramm 1. Objektorientiertes Schema Relationales Schema Netzwerk- Schema 2. Index(e) Cluster partitionierte Tabelle(n) DBMS -Speicherparameter 3. 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Orientierung Postrelationale 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 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Orientierung Warum 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 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... 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.) ... 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
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 R Beispiel: t = (4052, „Logik“, 4) 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... 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 ... 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... Relationenschema (2) Relation (Tabelle, table) Vorlesungen VorlNr Titel SWS 5001 Grundzüge 4 5041 Ethik 3 ... Tupel (Zeile, row) Attribut (Spalte, column) 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... 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 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
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 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
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 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 - Überführung des ER Modells ... Ausblick Vorlesung #5 Verfeinerung / Zusammenfassung der Relationen mit dem gleichen Schlüssel Relationale Modellierung von Generalisierung Schwache / Starke Entities Wie gut ist ein Etwurf? - Normalformen 07.04.2017 Vorlesung #4 - Überführung des ER Modells ...
Vorlesung #4 Ende