NoSQL Options Compared
, March 19, 2013 A Developer's Look at the Primary NoSQL Options
Cassandra
Developer: Originally designed by Facebook
License Type: Apache 2.0
Implementation Language: Java
Operating System: Linux, Mac OS X, Windows
Initial Release: 2008
Cassandra was initially developed by Facebook and it powered the company's Inbox Search feature until late 2010. It uses Google's BigTable as its inspiration.
Cassandra provides a structured key-value store. Keys can map to multiple values, which are grouped into column families. The column families are fixed when a Cassandra database is created, but columns can be added to a family at any time. Furthermore, columns are added only to specified keys, so different keys can have different numbers of columns.
Cassandra's architecture is designed to eliminate any single point of failure. Data is automatically replicated to nodes, thus providing Cassandra's fault tolerance. The model is suited to use with Hadoop, which is specifically supported. In addition, there is a SQL-like language (CQL) for traditional database queries.
Cassandra is particularly fast on writes and is ideal in situations, such as logging, where writes need to be done very fast.