Spaltenorientierte Datenbanken

Spaltenorientierte Datenbanken sind selbst im Bereich NoSQL etwas besonderes. Während relationale Datenbanken aber auch NoSQL-Datenbanken wie Key-Value oder dokumentenorientierte Datenbanken zeilenbasiert organisiert sind, legen spaltenorientierte Datenbanken, wie der Name schon sagt, Daten als Spalten ab. In der SAP-Welt ist Sybase IQ dafür ein Beispiel. Jedoch kann auch in der HANA DB eine Tabelle als spaltenorientiert abgelegt werden.

Da pro Spalte ein Wert nur einmal vorkommt, zeichnet sich eine spaltenorientierte Datenbank durch hervorragende Aggregation- und Komprimierungsseigenschaften aus. Sie ist damit für OLAP-Operationen optimiert.

Vorteile:

  • Hohe Verfügbarkeit, gute horizontale Skalierung
  • Unterstützt Semi-strukturierte Daten
  • Durch die Komprimierung kommt es zu einem effizienten Zugriff auf die Datenbank

Nachteile:

  • Nicht optimal für transaktionale Anwendungen
  • Komplexeres Datenmodell verglichen mit Key-Values oder dokumentenorientierte Datenbanken
  • Nicht für Graph-Daten geeignet

Einsatzzweck:

  • Besser wenn Schreibvorgänge überwiegen, da die DB schneller schreiben als lesen. Somit auch für Realtime-Analytics gut geeignet.
  • Web Messaging Anwendungen
  • Alle Anwendungen, welche ad-hoc Abfragen auf aggregierte Daten machen
  • Gut für Empfehlungen (Kunden, welche A gekauft haben, …)

Beispiele für Anbieter spaltenorientierter Datenbanken:

  • Hadoop/Hbase
  • Cassandra
  • Accumulo
  • Cloudera
  • MAPR

Quelle: http://data-magnum.com/lesson-7-column-oriented-databases-aka-big-table-or-wide-column/

Advertisements

Ein Gedanke zu “Spaltenorientierte Datenbanken

Kommentar verfassen

Trage deine Daten unten ein oder klicke ein Icon um dich einzuloggen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s