Cassandra's Data Model
Explore Cassandra's data model, including keyspaces, tables, schemas, and primary keys. Understand how partition keys distribute data, how clustering columns organize rows, and how consistent hashing with virtual nodes ensures balanced partition replication across nodes. Learn about Cassandra's design goals focusing on high availability, write performance, and scalability, as well as its storage engine inspired by Bigtable.
Cassandra is a distributed datastore that combines ideas from the
Note: Besides Dynamo there is also a separate distributed system, called DynamoDB. This is commercially available, but details around its internal architecture have not been shared publicly yet. However, this system has a lot of similarities with Cassandra, such as the data model and tunable consistency.
Note: The information in this chapter refers to the state of this project at the time of writing this course.
Design goals of Cassandra
The main design goals of Cassandra are:
- Extremely high availability
- Performance (high