Token assignment
In Cassandra terminology, the start of the hash range is called a token, and until version 1.2, each node was assigned a single token, in the manner discussed in the previous section. Version 1.2 introduced the option to use virtual nodes, or vnodes as the feature is officially termed. Vnodes became the default option in the 2.0 release.
Cassandra determines where to place data by using the tokens assigned to each node. Nodes learn about these token assignments via gossip. Additional replicas are then placed based on the configured replication strategy and snitch. More details about replica placement can be found in Chapter 3, Replication.
Manually assigned tokens
If you have chosen not to use vnodes, you have the requirement to assign tokens manually. This is accomplished by setting the initial_token
setting in cassandra.yaml
.
Manual token assignment introduces a number of potential issues:
- Adding and removing nodes:When the size of the ring changes, all tokens must be recomputed...