Prozess des Datenbankentwurfs
DB-Entwurf – Datenunabhängigkeit
Ziel – Entwurf:
- Trennung der semantischen Datensicht von physischer Speicherung
- Stabilität der Anwendung
Physische Datenunabhängigkeit:
- Vermeidung von Abhängigkeiten zwischen Anwendungsprog. und physischer Speicherung
- Keine Beeinflussung der Anwendungen durch Veränderungen der Speicherorganisation
Logische Datenunabhängigkeit
- Veränderungen bzw. Anpassungen der semantischen Datensicht haben keine Auswirkungen auf die Anwendung
DB-Entwurf – Probleme
Problem:
- abstrakte und semantisch ausdrucksstarke Beschreibung des Fachproblems mit konzeptuellen Werkzeugen der DBS nur begrenzt möglich
- abstrakte und semantisch ausdrucksstarke Beschreibung datenunabhängiger Werkzeuge werden von sehr wenigen DBS verstanden
Lösung:
DB-Entwurf in mehreren Phasen
- Natürliche, abstrakte und semantisch ausdrucksstarke Beschreibung des Fachproblems unabhängig von der Wahl eines DBS
- schrittweise Übersetzung der abstrakten, in konkrete DB-nahe Beschreibungen
- Implementierung der konkreten Beschreibung
DB-Entwurf – Zusammenfassung
Entwurfsprozess |
Phasen des DB-Entwurfs |
||
semantisch |
logisch |
physisch |
|
Entwurfsziel | erste formale Beschreibung des Fachproblems | konkretisieren + optimieren in Bezug auf Ziel-DBS | formale Beschreibung in Sprache des DBS |
Resultat | semantisches Schema | logisches Schema | Datenbankschema |
Form | Diagramm | Diagramm | textuelle Skripte |
Werkzeug | sematische Datenmodelle | logische Datenmodelle | Datenbankmodelle |
Grad der Abstraktion | kein Bezug zum DBS | bezug zu Typgleichen DBS | direkter bezug zu konkretem DBS |
Datenmodell – Schema einer Miniwelt
Beispiel Lehrbetrieb
Dinge eines Lehrbetriebs:
Fachbereiche, Lehrveranstaltungen, Professoren
Zusammenspiel zwischen den Dingen:
- Fachbereich bietet Vorlesung an
- jeder Fachbereich braucht mind. 1 Mitarbeiter
- Professoren halten Lehrveranstaltungen
- Mitarbeiter sind Professoren
Semantisches Datenmodell vs. logisches Datenmodell vs. Datenbankmodell
Entity-Relationship-Datenmodell (semantisch)
DDL oder SQL
create table Vorlesung ( alter table empfiehlt
Vorl-Titel varchar (20) not null; add constraint RK_emp_Buch
SWS numeric (1) not null, foreign key (ISBN)
primary key (Vorl-Titel)); references Buch;
create table Buch (
Titel varchar (20) not null;
ISBN char (10) not null;
primary key (ISBN)); …
Transformation der Schemata
Realität → Schema der Miniwelt → semantisches Schema
↓
logisches Schema
↓
physisches Schema ← Datenbankschema
Schreibe einen Kommentar