Datenbanksysteme umfassen komplexe Datenstrukturen. Um das System beim Abrufen von Daten effizient zu gestalten und die Komplexität im Hinblick auf die Benutzerfreundlichkeit für Benutzer zu verringern, verwenden Entwickler Abstraktion, d. h. sie verbergen irrelevante Details vor den Benutzern. Dieser Ansatz vereinfacht das Datenbankdesign.
Abstraktionsebene in einem DBMS
Es gibt hauptsächlich drei Ebenen der Datenabstraktion:
- Physische oder interne Ebene
- Logische oder konzeptionelle Ebene
- Ansicht oder externe Ebene
Physische oder interne Ebene
Dies ist die niedrigste Ebene der Datenabstraktion. Es sagt uns, wie die Daten tatsächlich im Speicher gespeichert sind. Hierzu werden Zugriffsmethoden wie sequenzieller oder wahlfreier Zugriff sowie Dateiorganisationsmethoden wie B+-Bäume und Hashing verwendet. Die Nutzbarkeit, die Größe des Speichers und die Häufigkeit der Datensätze sind Faktoren, die wir beim Entwurf der Datenbank kennen müssen.
Angenommen, wir müssen die Daten eines Mitarbeiters speichern. Speicherblöcke und die für diese Zwecke genutzte Speichermenge bleiben dem Benutzer verborgen.
Logische oder konzeptionelle Ebene
Diese Ebene umfasst die Informationen, die tatsächlich in Form von Tabellen in der Datenbank gespeichert sind. Außerdem wird die Beziehung zwischen den Datenentitäten in relativ einfachen Strukturen gespeichert. Auf dieser Ebene sind die Informationen, die dem Benutzer auf der Ansichtsebene zur Verfügung stehen, unbekannt.
Wir können die verschiedenen Eigenschaften eines Mitarbeiters und Beziehungen speichern, z.B. mit dem Manager gespeichert werden.
Die logische Ebene beschreibt somit die gesamte Datenbank anhand einer kleinen Anzahl relativ einfacher Strukturen. Obwohl die Implementierung der einfachen Strukturen auf der logischen Ebene komplexe Strukturen auf der physikalischen Ebene beinhalten kann, muss sich der Benutzer der logischen Ebene dieser Komplexität nicht bewusst sein. Dies wird als physische Datenunabhängigkeit bezeichnet. Datenbankadministratoren, die entscheiden müssen, welche Informationen in der Datenbank gespeichert werden sollen, verwenden die logische Abstraktionsebene.
Ansicht oder externe Ebene
Dies ist die höchste Abstraktionsebene. Nur ein Teil der eigentlichen Datenbank wird von den Benutzern eingesehen. Diese Ebene dient dazu, den Zugriff auf die Datenbank durch einen einzelnen Benutzer zu erleichtern. Benutzer sehen Daten in Form von Zeilen und Spalten. Tabellen und Beziehungen werden zum Speichern von Daten verwendet. Es können mehrere Ansichten derselben Datenbank vorhanden sein. Benutzer können lediglich die Daten anzeigen und mit dem Datenbankspeicher interagieren, und Implementierungsdetails bleiben ihnen verborgen. Auch wenn die logische Ebene einfachere Strukturen verwendet, bleibt die Komplexität aufgrund der Vielfalt der in einer großen Datenbank gespeicherten Informationen bestehen. Viele Benutzer des Datenbanksystems benötigen nicht alle diese Informationen; Stattdessen müssen sie nur auf einen Teil der Datenbank zugreifen. Die Ansichtsebene der Abstraktion dient dazu, ihre Interaktion mit dem System zu vereinfachen
Beispiel: Im Falle der Speicherung von Kundendaten
Letztes Commit-Git entfernen
- Körperliche Ebene - Es enthält einen Speicherblock (bytesGBTBetc)
- Logische Ebene - Es enthält die Felder und Attribute der Daten.
- Ansichtsebene - es funktioniert mit CLI oder GUI Zugriff auf die Datenbank
Der Hauptzweck der Datenabstraktion besteht darin, Datenunabhängigkeit zu erreichen, um Zeit und Kosten zu sparen, die erforderlich sind, wenn die Datenbank geändert oder geändert wird.
Datenunabhängigkeit
Datenunabhängigkeit wird hauptsächlich als eine Eigenschaft von DBMS definiert, die Ihnen hilft, das Datenbankschema auf einer Ebene eines Systems zu ändern, ohne dass das Schema auf der nächsten Ebene geändert werden muss. Es hilft, die Daten von allen Programmen, die sie nutzen, getrennt zu halten.
Aus diesen Abstraktionsebenen ergeben sich nämlich zwei Ebenen der Datenunabhängigkeit:
- Physik ich Datenunabhängigkeit auf technischer Ebene
- Datenunabhängigkeit auf logischer Ebene
Datenunabhängigkeit auf physikalischer Ebene
Es bezieht sich auf die Eigenschaft, das physische Schema ändern zu können, ohne dass Änderungen am konzeptionellen oder logischen Schema zu Optimierungszwecken vorgenommen werden müssen, z. B. die konzeptionelle Struktur des Datenbank würde durch eine Änderung der Speichergröße des Datenbanksystemservers nicht beeinträchtigt werden. Ein Beispiel dafür ist der Wechsel von sequenziellen zu wahlfreien Zugriffsdateien. Zu diesen Änderungen oder Modifikationen der physischen Struktur können gehören:
- Nutzung neuer Speichergeräte.
- Ändern der zur Speicherung verwendeten Datenstrukturen.
- Ändern von Indizes oder Verwenden alternativer Dateiorganisationstechniken usw.
Datenunabhängigkeit auf logischer Ebene
Es bezieht sich auf die Eigenschaft, das logische Schema ändern zu können, ohne das externe Schema oder Anwendungsprogramm zu beeinträchtigen. Die Benutzeransicht der Daten würde durch Änderungen an der konzeptionellen Ansicht der Daten nicht beeinträchtigt. Diese Änderungen können das Einfügen oder Löschen von Attributen, die Änderung von Tabellenstruktureinheiten oder Beziehungen zum logischen Schema usw. umfassen.