Apache Cassandra
By the Apache Software Foundation
Apache Cassandra is an open-source, distributed NoSQL wide-column database designed for high write throughput, linear horizontal scalability, and continuous availability across many commodity servers with no single point of failure.
Definition
Apache Cassandra is an open-source, distributed NoSQL wide-column database designed for high write throughput, linear horizontal scalability, and continuous availability across many commodity servers with no single point of failure.
Overview
Cassandra originated at Facebook in 2008, where it was built to combine ideas from two influential systems: Amazon's Dynamo (for its fully distributed, peer-to-peer architecture) and Google's Bigtable (for its wide-column data model). Facebook open-sourced it, and it became a project of the Apache Software Foundation shortly after. Unlike traditional databases with a primary/replica hierarchy, Cassandra uses a masterless, peer-to-peer ring architecture where every node can accept reads and writes, and data is automatically replicated across nodes and, optionally, across data centers. Consistency is tunable per query (from ONE to QUORUM to ALL), letting teams trade off latency against strength of consistency guarantees. Data is queried using CQL (Cassandra Query Language), a SQL-like syntax adapted to Cassandra's distributed data model. Because of its fault tolerance and write-optimized design, Cassandra has been used at massive scale by companies like Netflix and Apple for workloads such as time-series data, activity feeds, and other always-on, globally distributed applications. It's often compared to other NoSQL systems like MongoDB and Amazon DynamoDB, and is sometimes paired with Apache Spark for large-scale analytics on top of the operational data it stores.
Key Features
- Masterless, peer-to-peer architecture with no single point of failure
- Linear horizontal scalability by adding nodes to the ring
- Tunable consistency levels per read/write operation
- CQL (Cassandra Query Language), a SQL-like query interface
- Wide-column data model optimized for high write throughput
- Built-in multi-datacenter replication for global deployments
- Gossip protocol for decentralized cluster state and failure detection