Spaltenorientierte Datenbanksysteme#

Spaltenorientierte Datenbanken, auch Wide Column Stores genannt, speichern Daten mehrerer Einträge zusammen mit einem Zeitstempel in Spalten. Spalten mit ähnlichen oder verwandten Inhalten können in einer Column Family zusammengefasst werden.

Datenbanksysteme#

Beispiele für spaltenorientierte Datenbanksysteme sind Cassandra, Hypertable und HBase.

Home

Cassandra

Hypertable

HBase

GitHub

apache/cassandra

vicaya/hypertable

apache/hbase

Docs

cassandra.apache.org/doc/

hypertable.com/documentation

hbase.apache.org/book.html

Anwendungsgebiete

Georedundanz, hohe Schreibgeschwindigkeit, demokratische Peer-to-peer (P2P)-Architektur, Daten mit definierter Lebenszeit

Das Bigtable-Design von Hypertable löst horizontale Skalierungsprobleme durch ein verteiltes Speichersystem für strukturierte Daten.

IoT, fraud detection, recommendation engines

Entwicklungssprache

Java

C++

Java

Lizenzen

Apache License 2.0

GPL-3.0 License

Apache-2.0 License

Datenmodell

Column Family entsprechen Tabellen, Keyspaces Datenbanken; keine logische Struktur, kein Schema

Zuordnungstabellen (engl. Associative arrays)

In Regionen unterteilte Tabellen

Query-Langauge

Cassandra Query Language (CQL)

Hypertable Query Language (HQL)

Java Client API, Thrift/REST API

Transaktionen, Nebenläufigkeit

Eventual Consistency

MVCC – Multiversion Concurrency Control

ACID je Zeile, MVCC – Multiversion Concurrency Control

Replikation, Skalierung

SimpleStrategy, NetworkTopologyStrategy und OldNetworkTopologyStrategy

Replikation auf Dateisystem- Ebene

Master-Slave-Replikation

Anmerkungen

basiert auf verteilten Dateisystemen wie Apache Hadoop, DFS oder GlusterFS