Mobile-Menu

Column-oriented database Was ist eine spaltenorientierte Datenbank?

Von Dipl.-Ing. (FH) Stefan Luber 2 min Lesedauer

Anbieter zum Thema

Eine spaltenorientierte Datenbank speichert ihre Daten nicht wie üblich zeilenweise, sondern spaltenweise. Diese Art der Datenspeicherung bietet vor allem bei Analysen großer Datenmengen und Abfragen auf sehr großen Datenbanken Vorteile. Typischer Einsatzbereich sind Big-Data-Anwendungen.

Die wichtigsten IT-Fachbegriffe verständlich erklärt.(Bild:  © aga7ta - Fotolia)
Die wichtigsten IT-Fachbegriffe verständlich erklärt.
(Bild: © aga7ta - Fotolia)

Der englische Fachbegriff für spaltenorientierte Datenbank lautet column-oriented database oder columnar database. Bei der spaltenorientierten Datenbank handelt es sich um eine Datenbank, die ihre Daten nicht wie üblich für tabellenorientierte Datenbanken zeilenweise, sondern spaltenweise speichert.

Sowohl zeilen- als auch spaltenorientierte Datenbanken arbeiten mit zweidimensionalen Tabellen, bestehend aus vielen Spalten und Zeilen. Physisch, zum Beispiel auf der Festplatte, speichern die Datenbanken ihre Daten aber eindimensional. Bei einer zeilenorientierten Datenbank werden die einzelnen Zeilen hintereinandergeschrieben. Die spaltenorientierte Datenbank verändert das Speicherprinzip, indem sie die Spalten einer Tabelle hintereinanderschreibt. Zur Verdeutlichung ein einfaches Beispiel:

Ein Tabelle bestehend aus den drei Spalten Produktnummer, Produktname und Preis, und gefüllt mit vier Zeilen wird zeilenorientiert folgendermaßen geschrieben:

1, Produkt A, 100; 2, Produkt B, 200; 3, Produkt C, 50; 4, Produkt D, 150

Die spaltenorientierte Schreibweise für die gleiche Tabelle sieht folgendermaßen aus:

1,2,3,4; Produkt A, Produkt B, Produkt C, Produkt D; 100, 200, 50, 150

Die spaltenorientierte Schreibweise bietet Vorteile, wenn Spalteninformationen über viele Zeilen hinweg gelesen werden sollen. Es existieren zahlreiche proprietäre oder Open-Source-basierte Datenbanklösungen mit spaltenorientierter Datenspeicherung. Beispiele sind MariaDB ColumnStore oder MonetDB und Produkte oder Services von SAP, Oracle, Amazon und anderen.

Da spalten- und zeilenorientierte Datenbanken jeweils spezifische Vor- und Nachteile besitzen und für unterschiedliche Anwendungen jeweils besser oder weniger gut geeignet sind, kommen häufig hybride oder kombinierte Lösungen zum Einsatz, die sowohl die Zeilen- als auch die Spaltenorientierung unterstützen.

Typische Einsatzbereiche spaltenorientierter Datenbanken

Spaltenorientierte Datenbanken eignen sich gut für analytische Informationssysteme und OLAP-Aufgaben (Online Transactional Processing). Es lassen sich komplexe Hochgeschwindigkeitsabfragen oder multidimensionale Analysen großer Datenmengen mit höherer Performance ausführen als mit zeilenorientierten Systemen. Typische Anwendungsbereiche sind Data-Mining, Big-Data-Anwendungen, Business Intelligence, Forschung, Data Warehousing und vieles mehr.

Vor- und Nachteile spaltenorientierter Datenbanken

Vorteile spaltenorientierter Datenbanken sind:

  • schnelle Ausführung von Spaltenoperationen,
  • performantes Speichern, Lesen und Aggregieren von Spalteninformationen über viele Zeilen hinweg,
  • gut für leseintensive Workloads und analytische Abfragen geeignet,
  • gute Skalierbarkeit,
  • effizientes Verteilen und Parallelisieren der Daten und Datenverarbeitungsvorgänge,
  • effiziente Kompression durch gleichartige Datentypen in Spalten,
  • reduzierter Speicherbedarf,
  • effizientere Indexierung.

Als Nachteile spaltenorientierter Datenbanken lassen sich aufführen:

  • weniger gut für transaktionale Anwendungen mit vielen kleinen Schreiboperationen geeignet,
  • höhere Latenz bei Abfragen, die komplexe Verknüpfungen betreffen,
  • langsamer und weniger effizient bei Zeilenoperationen,
  • höherer Aufwand bei der Verwaltung und Optimierung.

(ID:50130863)

Jetzt Newsletter abonnieren

Täglich die wichtigsten Infos zu Data-Storage und -Management

Mit Klick auf „Newsletter abonnieren“ erkläre ich mich mit der Verarbeitung und Nutzung meiner Daten gemäß Einwilligungserklärung (bitte aufklappen für Details) einverstanden und akzeptiere die Nutzungsbedingungen. Weitere Informationen finde ich in unserer Datenschutzerklärung.

Aufklappen für Details zu Ihrer Einwilligung