Apache Cassandra edit   discuss  

Distributed wide-column datastore based on Amazon Dynamo and Google BigTable. Focuses on fault tolerance, linear scalability and operational simplicity with zero downtime based on a distributed masterless node and peer-to-peer design. Supports high availability using network topology aware data replication to avoid single points of failure, fast real-time and durable ingestion of data using an append-only log, strong query performance based on an in-memory index (log-structured merge-tree) that is persisted as a sorted string table (SST) for fast sequential retrieval, and tunable consistency (between strong and eventual) allowing availability (number of replicas on which a write must succeed), data accuracy (number of replicas must respond to a read request before returning data) and performance to be traded off on a global or per-operation basis. Does not support joins nor subqueries, rather, emphasises denormalisation through features like collections. Comes with a command line shell (cqlsh) for using Cassandra Query Language (resembling SQL), a wide number of drivers for many languages including Java, Python, Ruby, C++ and Go, and Nodetool, a CLI for cluster management. Metrics can be queried via JMX or pushed to external monitoring systems, SSL encryption provides secure communication, authentication and authorisation is provided based on internally controlled rolename/passwords and object permission management. An Apache project, graduating in February 2010, having been originally opened sourced in July 2008 by Facebook. Written in Java and under active development with major contributions from DataStax who distribute it as a part of their DataStax Enterprise offering. Other commercial vendors include Instaclustr and Winguzone who provide hosted and managed Apache Cassandra as a service on a number of major cloud providers.

Technology Information

Other NamesCassandra
VendorsThe Apache Software Foundation, DataStax
TypeCommercial Open Source
Last UpdatedJuly 2017 - 3.11