Datenunabhängigkeit

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Dieser Artikel oder Abschnitt bedarf einer Überarbeitung. Näheres ist auf der Diskussionsseite angegeben. Hilf mit, ihn zu verbessern, und entferne anschließend diese Markierung.

Datenunabhängigkeit (englisch data independence) ist ein Begriff aus der Informatik, der beschreibt, zu welchem Grad ein Benutzer oder ein Anwendungsprogramm auf die Daten eines Datenbanksystems zugreifen kann, ohne Details der systemtechnischen Realisierung der Datenspeicherung und des Datenzugriffs zu kennen. Datenunabhängigkeit kann vom Datenbankmanagementsystem (DBMS) durch das Bereitstellen einer wohldefinierten, unveränderlichen Schnittstelle erreicht werden, welche die Implementierung der Datenspeicherung und des Datenzugriffs vor dem Benutzer der Schnittstelle verbirgt, so dass man diese Implementierung verändern kann und für Benutzer der Schnittstelle solche Änderungen transparent bleiben. Dies ist dem Prinzip der Abstrakten Datentypen analog. Man unterscheidet bei Datenbanksystemen zwischen physischer und logischer Datenunabhängigkeit.

Physische Datenunabhängigkeit[Bearbeiten]

Physische Datenunabhängigkeit weisen Datenbanksysteme auf, bei denen Änderungen an der physischen Speicher- oder der Zugriffsstruktur (beispielsweise das Anlegen oder Entfernen einer Indexstruktur) keine Auswirkungen auf die logische Struktur der Datenbasis, das Datenbankschema, haben. Netzwerkartige und hierarchische Datenbanksysteme können aufgrund starker Bindung an Zugriffspfade keine physische Datenunabhängigkeit bieten. Die heute vorherrschenden relationalen Datenbanksysteme dagegen erfüllen physische Datenunabhängigkeit. Edgar F. Codd, der die Grundlagen der relationalen Datenbanksysteme schuf, formulierte über 300 Anforderungen, die relationale Datenbanksysteme erfüllen müssen; physische Datenunabhängigkeit ist eine davon. Codd formulierte physische Datenunabhängigkeit folgendermaßen:[1]

“Physical Data Independence: The DBMS permits a suitably authorized user to make changes in storage representation, in access method or in both – for example, for performance reasons. Application programs remain logically unimpaired whenever any such changes are made” (deutsch: „Das DBMS erlaubt es einem angemessen autorisierten Benutzer, Änderungen an der Speicher- oder der Zugriffsstruktur oder bei beidem zu machen – beispielsweise aus Performancegründen. Anwendungsprogramme bleiben logisch unbeeinträchtigt, wenn solche Änderungen vorgenommen werden“).

Logische Datenunabhängigkeit[Bearbeiten]

Logische Datenunabhängigkeit bedeutet, dass Anwendungen gegen Änderungen, die am Datenbankschema vorgenommen werden, immun sind. Logische Datenunabhängigkeit kann nur für einfache Modifikationen des Datenbankschemas realisiert werden; beispielsweise lässt sich die Änderung eines Attributs mithilfe einer Sichtdefinition vor dem Anwendungsprogramm verbergen.

Siehe auch[Bearbeiten]

Literatur[Bearbeiten]

  • Alfons Kemper, André Eickler: Datenbanksysteme. Oldenbourg Verlag 2004, ISBN 3-486-25706-4, Seite 20

Einzelnachweise[Bearbeiten]

  1. Edgar F. Codd: The Relational Model for Database Management: Version 2. Addison-Wesley, 1990