Spaltenorientierte Datenbanken
Im Bereich der analytischen Datenbanksysteme spielt die spaltenorientierte Datenbank eine wesentliche Rolle. Bei analytischen Datenbanksystemen handelt es sich um spezialisierte Datenbanken, die für die effektive und effiziente Auswertung großer Datenmengen entwickelt wurden.
Der Ansatz ist in der Forschung schon länger bekannt und setzt sich aufgrund der steigenden Datenmenge und deren Analysebedarf zunehmend in der Praxis durch.
Der klassische relationale Ansatz im Datenbankdesign ist ein zeilenbasiertes Verfahren zur Verarbeitung von Daten. Er ist nicht auf die Analyse sondern die Transaktionsverarbeitung spezialisiert.
Spaltenorientierte Datenbanken - Aufbau und Beispiel
Mit einem spaltenorientierten Datenbankmanagementsystem (DBMS) können Daten mit sehr hoher Geschwindigkeit gelesen werden. Die Speicherung erfolgt spaltenweise und nicht wie bei herkömmlichen relationalen Datenbanken zeilenweise. Dadurch werden die Festplattenzugriffe reduziert, was zur beschleunigten Datenbereitstellung beiträgt.
Das folgende Beispiel erklärt die unterschiedlichen Verfahren relationaler und analytischer Datenbanken. Die Abbildung verdeutlicht eine typische Tabelle für Mitarbeiter aus einem relationalen Datenbanksystem. Die Informationen der Relation werden in Form eines Datensatzes gespeichert, was einer Zeile entspricht. Ein Attribut des Datensatzes wird als Spalte gespeichert.
Herkömmliche zeilenorientierten Datenbanken speichern die Datensätze komplett und nacheinander in einen Block oder ein Cluster auf der Festplatte. Die Speicherung kann durch einen Schlüssel sortiert oder unsortiert erfolgen. Die Verarbeitung sieht dann wie folgt aus:
Bei einer spaltenorientierten Datenbank hingegen, werden anstatt der Zeilen, die Spalten sequentiell gespeichert. Es werden immer alle Werte einer Spalte nahe beieinander abgelegt. Im Vergleich zu zeilenorientierten Datenbanken sieht die Verarbeitung wie folgt aus:
Vorteile spaltenorientierter Datenbanken
Die Vorteile spaltenorientierten Datenbanken sind bemerkenswert: Durch die nahe zusammenliegende physische Speicherung der Daten, können die Informationen zur Berechnung von Werten schneller ermittelt werden.
Beispielsweise die Datenbankabfrage, die das größte monatliche Gehalt (SQL: Select Max(Gehalt) from Mitarbeiter) unter allen Mitarbeitern ermitteln soll, muss nur die Spalte Gehalt durchsuchen. Die Informationen liegen in einem Block oder in nahe zusammenliegenden Blöcken auf der Festplatte. Bei der Auswertung der Beispieldaten muss nur ein Block mit einem Festplattenzugriff geladen werden.
In einer zeilenorientierten Datenbank müssen zunächst alle Datensätze geladen und die Werte in der Spalte Gehalt abgeglichen werden. Dadurch kommt es zu erhöhten Zugriffszeiten, wenn mehrere Blöcke von der Festplatte gelesen werden müssen.
Unter der Annahme, dass nur zwei Datensätze aus der Tabelle Mitarbeiter in einen Block passen, werden insgesamt zwei Blöcke zur Speicherung benötigt. Beide Blöcke müssen in den Hauptspeicher eingelesen werden, wodurch (vereinfacht angenommen) zwei Festplattenzugriffe notwendig sind. Mit der spaltenbasierten Speicherung werden die Daten gezielt für Analysen bereitgestellt und dadurch die Abfragen und Berechnungen beschleunigt.
Spaltenorientierte Datenbanken - Definition & Erklärung - Zusammenfassung
Im Zusammenhang mit dem Lexikoneintrag Spaltenorientierte Datenbanken sollte man sich folgende Punkte merken:
- Im Bereich der analytischen Datenbanksysteme spielt die spaltenorientierte Datenbank eine wesentliche Rolle.
- Mit einem spaltenorientierten Datenbankmanagementsystem (DBMS) können Daten mit sehr hoher Geschwindigkeit gelesen werden.
- Die Vorteile spaltenorientierten Datenbanken sind bemerkenswert: Durch die nahe zusammenliegende physische Speicherung der Daten, können die Informationen zur Berechnung von Werten schneller ermittelt werden.