Column-oriented database systems

Column-oriented databases, also known as wide column stores, store data from several entries together with a time stamp in columns. Columns with similar or related content can be combined in a Column family.

Database systems

Examples of column-oriented database systems are Cassandra, Hypertable and 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

Application areas

Georedundancy, high writing speed, democratic peer-to-peer (P2P) architecture, data with a defined lifetime

Hypertable’s Bigtable design solves horizontal scaling problems through a distributed storage system for structured data.

IoT, fraud detection, recommendation engines

Development language

Java

C++

Java

Licenses

Apache License 2.0

GPL-3.0 License

Apache-2.0 License

Data model

Column Family correspond to tables, Keyspaces databases; no logical structure, no scheme

Associative arrays

Tables divided into regions

Query langauge

Cassandra Query Language (CQL)

Hypertable Query Language (HQL)

Java Client API, Thrift/REST API

Transactions, concurrency

Eventual Consistency

MVCC – Multiversion Concurrency Control

ACID per line, MVCC – Multiversion Concurrency Control

Replication, scaling

SimpleStrategy, NetworkTopologyStrategy and OldNetworkTopologyStrategy

File system level replication

Master-Slave-Replication

Remarks

is based on distributed file systems such as Apache Hadoop, DFS or GlusterFS