Informatik

Datenbanken - Materialien
 
Datenbanken und Datenbanksysteme
 
Schon in den 60er Jahren kam es zur ersten Entwicklung von Datenbanksystemen. Dabei wird zwischen die Daten und das Programm, das die Daten verarbeitet, ein Datenbank-Verwaltungssystem (abgekürzt DBMS für Data Base Management System) gesetzt, das für alle Zugriffe auf die Daten verwaltet. Im Deutschen wird das Datenbank-Verwaltungssystem - sprachlich nicht korrekt - häufig als Datenbanksystem bezeichnet.
 
Der Datenbankeinsatz führt zu folgenden Eigenschaften:
  • Die Daten werden in einem Format abgelegt, so dass ihre Struktur unabhängig von speziellen Programmen vom DBMS interpretiert werden kann.
  • Das DBMS ist der einzige Prozess, der unmittelbar auf die Daten zugreifen und sie manipulieren darf. Auswertungen und Verarbeitungsprogramme laufen grundsätzlich über das DBMS.
  • Das DBMS organisiert einen Mehrbenutzerbetrieb unter Verwendung von individuellen Zugriffsrechten.
  • Das DBMS organisiert die Koordination von Zugriffen von mehreren Benutzern gleichzeitig.
  • Das DBMS enthält Maßnahmen zur Unterstützung der Datenkonsistenz durch Mechanismen der Datensicherung und der Wiederhestellung der Daten nach einer Betriebsstörung.

Zentralisierung der Datenhaltung
 
Durch die Benutzung einer Datenbank ergibt sich eine Reihe von Vorteilen, unter anderem:
Verringerung bzw. systematische Kontrolle der Redundanz
So müssen z.B. Artikeldaten nur an einer Stelle gepflegt werden. Falls sie trotzdem an mehreren Stellen gespeichert werden sollen, hat das DBMS dafür zu sorgen, dass alle Kopien auf dem gleichen Stand sind.
Konsistenzüberprüfung vom DBMS
So kann das DBMS z.B. verhindern, dass Kundendaten gelöscht werden, wenn noch Rechnungen offen sind. Bei der Erfassung eines Auftrags stellt das DBMS sicher, dass eine eingegebene Kundennummer auch tatsächlich einem Kunden zugeordnet ist. Eine Kundennummer in der Auftragstabelle, der kein Kundensatz in der Kundentabelle entspricht, wäre eine Verletzung der Konsistenz der Datenbank.
Datenunabhängigkeit
Änderungen des Datenbankaufbaus oder der physikalischen Speicherung erfordern keine Änderung von Programmen.

 
Die Datenbankarchitektur nach ANSI-SPARC
  • ANSI - American National Standards Institute
  • SPARC - Standards Planning and Requirements Committee
Die ANSI-SPARC-Gruppe hat 1975 einen Report erstellt, wie ein Datenbanksystem aufgebaut sein soll. Dabei ist die dort beschriebene Architektur unabhängig von der Frage, ob das dem Datenbank zugrunde liegende Datenbankmodell relational oder netzwerkartig ist oder an einem anderen Modell orientiert ist.
 
Konzeptionelles Schema
 
Im Zentrum steht das konzeptionelle Schema. Dieses Schema enthält die Beschreibung aller unternehmensrelevanten Datenstrukturen für die Datenbank. Dabei ist es unerheblich, auf welche Weise diese Daten abgelegt werden. Auch für Datenbanken, die auf mehreren Rechnern gespeichert werden, gibt es nur ein konzeptionelles Schema. Das konzeptionelle Schema ist stark vom Datenbankentwurf und vom benutzten Datenmodell (relational, objektorientiert, hierarchisch, ...) abhängig.

Zum konzeptionellen Schema gehören neben allen relevanten Beschreibungen für die Sammlung der Daten insbesondere auch alle Beschreibungen von Konsistenzbedingungen (z.B. für jeden Artikel im Lager gibt es genau einen Artikel-Stammsatz; ein Zug kann nicht gleichzeitig an mehreren Orten sein; die Kundennummer muss eindeutig sein; jeder Kunde muss eine Kundennummer haben; ...) .



 
Internes Schema
 
In internen Schema sind die Einzelheiten der Implementierungen beschrieben, z.B. die Aufteilung der Datenbank auf mehrere Platten, das Anlegen von Spiegel-Platten oder das Anlegen von Indexen zur Beschleunigung der Zugriffe.
 
Externes Schema
 
In den externen Schemata (Benutzersichten) werden Teilbereiche der Datenbank für verschiedene Benutzergruppen definiert. Hier weredn auch die Nutzungsrechte der verschiedenen Benutzer festgelegt. Zum Teil können (für den lesenden Zugriff) abgeleitete Daten (z.B. die Summe der Gehälter einer Abteilung) in ein externes Schema eingetragen werden, ohne dass die zugehörenden Grunddaten sichtbar gemacht werden.
 
Datenunabhängigkeit
 
Zwischen den Schemata bestehen natürlich inhaltliche, sach-logische Abhängigkeiten. So kann eine Information aus der Datenbank nur dargestellt werden, wenn sie aus den gespeicherten Daten auf irgendeine Weise erzeugt werden kann. Die Art und Weise, wie die Daten von der Festplatte auf den Bildschirm kommen - also der Transfer zwischen den verschiedenen Schemata - wird aber durch Zugriffsfunktionen (Schnittstellen) geregelt, die im Datenbanksystem implementiert sind. Die DBMS verschiedener Hersteller können das Konzept auf ganz unterschiedliche realisieren, und auch bei den Produkten eines Herstellers kann es von Version zu Version erhebliche Unterschiede in der Art der Speicherstrukturen geben, ohne dass dies laufende Anwendungen tangiert. Die drei Ebenen oder Schemata der Datenbankarchitektur können daher in gewissen Grenzen unabhängig voneinander gestaltet und betrachtet werden. Das bezeichnet man als Datenunabhängigkeit.
Physikalische Datenunabhängigkeit
Ein Programmierer oder Benutzer braucht für die Verarbeitung der Daten keine Kenntnis der Datenspeicherung (Blöcke, physikalische Schlüssel, ...). Damit müssen spätere Änderungen des physikalischen Datenbankaufbaus in den Programmen nicht berücksichtigt werden.
Logische Datenunabhängigkeit
Ein Programmierer oder Benutzer muss nur die Beziehungen zwischen den Daten kennen, die auch tatsächlich für dieses Programm benötigt werden. Damit müssen spätere Änderungen im logischen Aufbau (neue Felder, Löschen von Feldern, kompatible Änderungen von Datentypen), die das jeweilige Programm nicht unmittelbar betreffen, nicht berücksichtigt werden.


 

Pfeil

verantw.: J. Frank