Cassandra makes separation between nodes (because if you cannot split it, you cannot scale it). All data for the Cassandra cluster is divided into a βringβ, and each node on the ring is responsible for one or more key ranges. You have control over the Partitioner (e.g. Random, Ordered) and the number of nodes on the ring that the key / column should be replicated according to your requirements.
This is a pretty good review. Basic architecture
In addition, I highly recommend reading Dynamo white paper. While Kassandra differs from Dynamo in many ways, conceptually they come from the same roots. Check it out: Dynamo White Paper
Matt Self
source share