Cassandra 卡桑德拉令牌分发

Cassandra 卡桑德拉令牌分发,cassandra,Cassandra,我正在浏览cassandra教程,看到了这张代表多节点cassandra集群的图片- 令牌总数(在上述256个节点中)是否应分布在所有三个节点上,每个节点大约85个令牌?否,num\u tokens参数指定每个节点将处理多少令牌范围。从cassandra.yaml说明: 这定义了环上随机分配给该节点的令牌数。相对于其他节点,令牌越多,该节点将存储的数据比例就越大。假设所有节点具有相同的硬件能力,您可能希望所有节点具有相同数量的令牌 否则,如果集群的节点数超过256个,会发生什么情况?;-) 嗯

我正在浏览cassandra教程,看到了这张代表多节点cassandra集群的图片-


令牌总数(在上述256个节点中)是否应分布在所有三个节点上,每个节点大约85个令牌?

否,
num\u tokens
参数指定每个节点将处理多少令牌范围。从
cassandra.yaml
说明:

这定义了环上随机分配给该节点的令牌数。相对于其他节点,令牌越多,该节点将存储的数据比例就越大。假设所有节点具有相同的硬件能力,您可能希望所有节点具有相同数量的令牌


否则,如果集群的节点数超过256个,会发生什么情况?;-)

嗯,我似乎不清楚,据我所知,节点将基于分区键存储分区,并且该分区键映射到一个令牌(基于哈希)。我不清楚的是,它是否与num_令牌相关,以及“拥有”意味着什么?每个节点将
num_令牌
令牌范围贡献到集群中。例如,在您的情况下,您有3x256个令牌范围,完整的令牌环被拆分到其中。如果您添加另一个节点,您将拥有4x256个令牌范围,它们将是smallerok,这似乎有点令人困惑-因此,这意味着,如果我们从一个节点开始,这一个节点将贡献“256”个令牌范围。如果我们可以添加另一个节点,这两个节点的组合将有助于“512”令牌范围-虽然它是512,但它们在某种程度上更小-一个节点50%(对应于num_令牌),另一个节点50%?