Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs 1 Konzeptuelle Ebene 2
Datenbankentwurf Abstraktionsebenen des Datenbankentwurfs 1. Konzeptuelle Ebene 2. Implementationsebene 3. Physische Ebene 1
Allgemeiner „top-down Entwurf“ Entwurfsschritt 1 Anforderungsanalyse Entwurfsschritt 2 . . Entwurfsschritt 3 • . . . Entwurfsschritt 4 Einsatz des Systems 2
Phasen des Datenbankentwurfs Informationsanforderungen Datenverarbeitungsanforderungen Anforderungsanalyse Anforderungs -spezifikation Konzeptueller Enwurf Informations. ER Schema struktur Implementationsentwurf logische Datenbankstruktur Physischer Entwurf physische Datenbankstruktur DBMSCharakteristika Hardware/BSCharakteristika 3
Anforderungsanalyse 1. Identifikation von Organisationseinheiten 2. Identifikation der zu unterstützenden Aufgaben 3. Anforderungs-Sammelplan 4. Anforderungs-Sammlung 5. Filterung 6. Satzklassifikationen 7. Formalisierung 4
Objektbeschreibung Uni-Angestellte Gehalt - Anzahl: 1000 • Typ: dezimal - Attribute • Länge: (8, 2) Personal. Nummer • Anzahl Wiederholung: 0 • Typ: char • Definiertheit: 10% • Länge: 9 • Identifizierend: nein • Wertebereich: 0. . . 999. 99 Rang • Typ: String • Anzahl Wiederholungen: 0 • Länge: 4 • Definiertheit: 100% • Identifizierend: ja • Anzahl Wiederholung: 0 • Identifizierend: nein 5
Beziehungsbeschreibung: prüfen Beteiligte Objekte: - Professor als Prüfer - Student als Prüfling - Vorlesung als Prüfungsstoff Attribute der Beziehung: - Datum - Uhrzeit - Note Anzahl: 100 000 pro Jahr 6
Prozeßbeschreibungen Prozeßbeschreibung: Zeugnisausstellung - Häufigkeit: halbjährlich - benötigte Daten Prüfungen Studienordnungen Studenteninformation . . . - Priorität: hoch - Zu verarbeitende Datenmenge 500 Studenten 3000 Prüfungen 10 Studienordnungen 7
Entity/Relationship-Modellierung Matr. Nr Name Semester Entity (Gegenstandstyp) Studenten Relationship (Beziehungstyp) Hörer Attribut (Eigenschaft) hören Schlüssel (Identifikation) Rolle Lehrveranstaltung Vorlesungen Vorl. Nr Titel 8 SWS
Universitätsschema voraussetzen Nach. Vorgänger folger Matr. Nr Name Studenten hören Vorlesungen Note lesen prüfen Pers. Nr Fachgebiet SWS Titel Semester Name Vorl. Nr Rang Assistenten arbeiten. Für Professoren Pers. Nr Name 9 Raum
Funktionalitäten E 1 . . . R E 2 R E 1 x E 2 1: 1 N: 1 E 2 1: N N: M 10
Eins-zu-Eins (1: 1) Beziehung Professoren sitzen. In Büro e 1 r 1 d 0 e 2 e 3 r 2 e 4 e 5 r 3 r 4 r 5 d 1 d 2 d 3 d 4 11
Viele-zu-Eins (N: 1) Beziehung Assistenten arbeiten. Für e 1 r 1 e 2 e 3 r 2 e 4 e 5 r 4 e 6 r 5 e 7 r 6 r 3 Professoren d 1 d 2 d 3 r 7 12
Viele-zu-Viele (M: N) Beziehung Studenten hören Vorlesungen r 9 e 1 r 1 e 2 e 3 r 2 e 4 e 5 r 4 e 6 r 5 e 7 r 6 r 3 r 8 p 1 p 2 p 3 r 7 13
Funktionalitäten bei n-stelligen Beziehungen E 1 P En N M R E 2 1 Ek R : E 1 x. . . x Ek-1 x Ek+1 x. . . x En Ek 14
Beispiel-Beziehung: betreuen 1 Studenten N betreuen 1 Professoren Seminarthemen Note betreuen : Professoren x Studenten Seminarthemen betreuen : Seminarthemen x Studenten Professoren 15
Dadurch erzwungene Konsistenzbedingungen 1. Studenten dürfen bei demselben Professor bzw. derselben Professorin nur ein Seminarthema "ableisten" (damit ein breites Spektrum abgedeckt wird). 2. Studenten dürfen dasselbe Seminarthema nur einmal bearbeiten – sie dürfen also nicht bei anderen Professoren ein schon einmal erteiltes Seminarthema nochmals bearbeiten. Es sind aber folgende Datenbankzustände nach wie vor möglich: Professoren können dasselbe Seminarthema „wiederverwenden“ – also dasselbe Thema auch mehreren Studenten erteilen. Ein Thema kann von mehreren Professoren vergeben werden – aber an unterschiedliche Studenten. 16
Ausprägung der Beziehung betreuen Professoren p 1 b 1 p 2 b 2 p 3 s 2 b 3 p 4 s 3 b 4 s 4 b 5 Studenten s 1 Gestrichelte Linien markieren illegale Ausprägungen b 6 t 1 Seminarthemen t 2 t 3 t 4 17
Totale Teilnahme Eine Entität Ei nimmt total an einem Beziehungstyp Rk teil, wenn es für jede Instanz von Ei mindestens eine Ausprägung zu Rk gibt, an der die Instanz teilnimmt. Vorlesungen lesen Professoren Im Beispiel wird jede Vorlesung von einem Professor gelesen (aber nicht jeder Professor muss eine Vorlesung halten) 18
Funkt. + tot. Teiln. voraussetzen Nachfolger Vorgänger Matr. Nr Name Semester N Studenten N N hören M Vorlesungen M Note Fachgebiet 1 Assistenten N arbeiten. Für N SWS Titel lesen prüfen Pers. Nr Name M Vorl. Nr 1 1 Professoren Pers. Nr Name 19 Rang Raum
(min, max)-Notation E 1 (min 1 max 1) nn En , ma xn ) R (m ax 2) m in 2, E 2 (mini, maxi) Ek R E 1 x. . . x Ei x. . . x En Für jedes ei Ei gibt es • Mindestens mini Tupel der Art (. . . , ei, . . . ) und • Höchstens maxi viele Tupel der Art (. . . , ei, . . . ) R 20
Begrenzungsflächendarstellung Polyeder 1 Hülle N Flächen N Poly. ID Flächen. ID Beispiel. Polyeder Begrenzung M Kanten N Kanten. ID Start. Ende X M Punkte Y Z 21
Begrenzungsflächendarstellung Polyeder 1 (4, ) Hülle N (1, 1) Poly. ID Flächen (3, ) N Flächen. ID Beispiel. Polyeder Begrenzung M (2, 2) Kanten N (2, 2) Start. Ende M (3, ) Punkte Kanten. ID X Y Z 22
Schwache, existenzabhängige Entities Höhe Geb. Nr Gebäude Raum. Nr 1 Größe N liegt_in Räume • Beziehung zwischen "starken" und schwachem Typ ist immer 1: N (oder 1: 1 in seltenen Fällen) • Warum kann das keine N: M-Beziehung sein? • Raum. Nr ist nur innerhalb eines Gebäudes eindeutig • Schlüssel ist: Geb. Nr und Raum. Nr 23
Prüfungen als schwacher Entitytyp Studenten 1 ablegen N Note Prüfungen Prüf. Teil Matr. Nr Vorl. Nr N umfassen M Vorlesungen N abhalten Pers. Nr M Professoren • Mehrere Prüfer in einer Prüfung • Mehrere Vorlesungen werden in einer Prüfung abgefragt 24
Generalisierung Uni-Mitglieder Name Studenten Angestellte Pers. Nr Matr. Nr Rang Fachgebiet Assistenten Professoren Raum Attribute werden vererbt Bs. : Professoren(Rang, Raum, Pers. Nr, Name) 25
Konsolidierung von Teilschemata oder Sichtenintegration Sicht 3 Globales Schema Sicht 1 Konsoli. Sicht 4 Sicht 2 dierung • Redundanzfrei • Widerspruchsfrei • Synonyme bereinigt • Homonyme bereinigt 26
Möglicher Konsolidierungsbaum Mögliche Konsolidierungsbäume zur Herleitung des globalen Schemas S 1, 2, 3, 4 aus 4 Teilschemata S 1, S 2, S 3, und S 4 S 1, 2, 3, S 1, 2 S 1 S 4 Oben ein maximal hoher Konsolidierungsbaum S 3 „links-tief“ (left-deep) S 2 Unten ein minimal hoher Konsolidierungsbaum Balanciert S 1, 2, 3, 4 S 1, 2 S 1 Beide Vorgehensweisen haben Vor- und Nachteile S 3, 4 S 2 S 3 S 4 27
Drei Sichten einer Universitäts. Datenbank erstellen Studenten Titel Diplomarbeiten betreuen Assistenten verfassen Dissertationen Titel Professoren bewerten Sicht 1: Erstellung von Dokumenten als Prüfungsleistung 28
Fakultät Bibliotheken besitzen Signatur Dokumente leiten Autoren entleihen Uni. Mitglieder Titel Jahr Datum Sicht 2: Bibliotheksverwaltung 29
Vorlesungen Bücher Autoren Titel empfehlen Jahr Dozenten Verlag Sicht 3: Buchempfehlungen für Vorlesungen 30
Beobachtungen Die Begriffe Dozenten und Professoren sind synonym verwendet worden. Der Entitytyp Uni. Mitglieder ist eine Generalisierung von Studenten, Professoren und Assistenten. Fakultätsbibliotheken werden sicherlich von Angestellten (und nicht von Studenten) geleitet. Insofern ist die in Sicht 2 festgelegte Beziehung leiten revisionsbedürftig, sobald wir im globalen Schema ohnehin eine Spezialisierung von Uni. Mitglieder in Studenten und Angestellte vornehmen. Dissertationen, Diplomarbeiten und Bücher sind Spezialisierungen von Dokumenten, die in den Bibliotheken verwaltet werden. 31
Wir können davon ausgehen, dass alle an der Universität erstellten Diplomarbeiten und Dissertationen in Bibliotheken verwaltet werden. Die in Sicht 1 festgelegten Beziehungen erstellen und verfassen modellieren denselben Sachverhalt wie das Attribut Autoren von Büchern in Sicht 3. Alle in einer Bibliothek verwalteten Dokumente werden durch die Signatur identifiziert. 32
Bibliotheken Signatur besitzen Titel Fakultät Jahr Dokumente Verlag Autoren Diplomarbeiten Dissertationen entleihen betreuen leiten Datum bewerten Assistenten Studenten Bücher empfehlen Professoren Angestellte Uni. Mitglieder Personen Vorlesungen 33
- Slides: 33