Datenbank zum Verwalten der Datenbestände
Bedeutung
Datenbanken sammeln Daten und verknüpfen diese zu logischen Einheiten. Die einzelnen Daten versieht man mit Informationen und Metabeschreibungen, welche zu ihrer Verarbeitung benötigt werden. Mit einer Datenbank lassen sich Datenbestände verwalten und das Abfragen bestimmter Informationen erleichtern. In vielen Datenbanken lassen sich Rechte bestimmen, die festlegen, welche Programme oder Personen Zugriff auf welche Daten haben. Die meisten Datenbanken können bloß durch spezielle Datenbankanwendungen geöffnet, bearbeitet und ausgelesen werden.
Datenbank-Management-System
Nur gültige Abfragen erfolgen in der korrekten Reihenfolge, womit die ganze Transaktion korrekt vollzogen wird. Erfolgreiche Transaktionen hinterlassen eine stabile Datenbank und erfordern eine ständige Überprüfung. Transaktionen stehen sich nicht gegenseitig "im Weg", was meistens mithilfe bestimmter Sperrfunktionen gesichert wird. Sämtliche Daten werden dauerhaft gespeichert, auch nach dem Abschließen einer erfolgreichen Transaktion. Dies gilt besonders bei Ausfällen oder Systemfehlern. Essenziell dafür sind etwa Transaktionslogs, welche alle Vorgänge protokollieren.
Datenbankmodelle
Die hierarchische Datenbank kennzeichnet eindeutige Abhängigkeiten , sodass außer der Root jeder Datensatz exakt einen Vorgänger hat. Nicht direkt benachbarte Ebenen können nicht miteinander interagieren. Hierarchische Datenbanken sind sehr übersichtlich, aber extrem unflexibel.
Netzwerk-Datenbankmodelle verfügen über keine strikten Parent-Child-Beziehungen. Alle Datensätze können mehrere Vorgänger besitzen, was eine netzähnliche Struktur zur Folge hat. Auf einen Datensatz gibt es also keinen eindeutigen Zugriffsweg. Datensätze lassen sich fließend einbauen und entfernen, ohne dass man wesentlich in die Gesamtstrukturen eingreift. Netzwerkartige Datenbankmodelle werden vor allem auf Großrechnern eingesetzt. Kunden von IBM vertrauen dem hierarchischem Modell. Ein bekanntes Netzwerkmodell ist das UDS von Siemens.
Bei der relationalen Datenbank wird meist SQL als Datenbanksprache verwendet. Das Formulieren der Relationen erfolgt durch relationale Algebra, womit sich aus Relationen gezielt Informationen gewinnen lassen. Das Prinzip wiederum ist die Basis der Datenbanksprache SQL. Einzelne Tabellen legen die Lokalisierung von sowie Verknüpfung zwischen den Informationen fest. Aus diesen Informationen wird ein Datensatz gebildet. Einzelne Informationen sammelt man als Attribute in den Spalten. Die Gesamtrelation ergibt sich aus den zusammenhängenden Attributen. Für das eindeutige Identifizieren von Datensätzen dient der Primärschlüssel, welcher meist als das erste Attribut festgelegt wird, was sich nicht ändern darf.
Objektorientierte Datenbanken sind zum Teil als Open Source erhältlich und werden am meisten auf Java- und .NET-Plattformen eingesetzt. Die Daten werden mitsamt ihren Zugriffsmethoden gespeichert. In einem Objekt speichert man Methoden bzw. Funktionen. Mithilfe der "Methoden" wird das Zugreifen auf diese Objekte definiert, welche mit den Daten zusammen im Objekt abgelegt werden. Die Objekte können komplex sein sowie aus beliebig vielen Typen von Daten bestehen. Außerdem erhalten sie eine eindeutige Identifikationsnummer. Einzelne Objekte fasst man zu Objektklassen zusammen, wodurch sich eine Klassenhierarchie ergibt. Neue, komplexe Objekte können relativ simpel und reibungslos eingespeist werden.
Beim dokumentorientierten Datenbankmodell sind Dokumente die Grundeinheit zum Speichern von Daten. Die Speicherung der Daten erfolgt in Key/Value-Paaren. Alle Dokumente sind in sich geschlossene Einheiten. Zur Speicherung sämtlicher Informationen reicht ein einziges Dokument. Zusammenhängende Daten werden immer an einem Ort gemeinsam gespeichert. Das gezielte Abfragen eines Dokuments ist ausreichend. Dokumentorientierte Datenbanksysteme sind vorrangig für Web-Applikationen interessant, da man hier komplette HTML-Formulare einspeisen kann. Es sind jedoch nicht alle Dokumentdatenbanken für alle Anwendungsbereiche geeignet.