Aufgabe 1.2 (10 Punkte)
Erklären Sie den Unterschied zwischen physischer und logischer
Datenunabhängigkeit. In welchem Umfang werden beide in einem Datenbanksystem
erreicht?
Musterlösung vom 27.04.2009:
Durch die Unterteilung des DBS in drei Ebenen (extern, logisch und intern)
wird (mit Hilfe von klar definierten Schnittstellen) die Verbindung der
einzelnen Teile gelockert.
- Physische Datenunabhängigkeit: Die Art und Weise, auf die die Daten
gespeichert werden (interne Ebene), kann verändert werden, ohne daß
das Datenbankschema (logische Ebene) verändert werden muß. Da die
logische Ebene (im Gegensatz zum konzeptuellen Schema) die Implementation
berücksichtigt, kann die Einhaltung der Schnittstelle bei einer
veränderten Speicherstruktur uneffizient sein. In den meisten heutigen DBS
wird die physische Datenunabhägigkeit komplett erreicht.
- Logische Datenunabhängigkeit: Veränderungen im Datenbankschema
(logische Ebene) sollen möglich sein, ohne daß die darauf basierenden
Anwendungen (externe Ebene) angepaßt werden müssen.
Da jede Anwendung eine spezielle Sicht auf die Daten ermöglicht und da
diese Sicht ein Ausschnitt aus der Gesamtsicht ist, ist es fast unmöglich, die
Gesamtsicht (das DBSchema) ohne Konsequenzen für die Teilsichten zu
ändern. Selbst kleine Änderungen der Entity- oder Relationship-Typen
müssen unter Effizienzverlusten nach außen verborgen werden. Deshalb ist
die logische Datenunabhängigkeit in heutigen Systemen kaum erreicht.