Cassandra分区:表中分区键的冲突

时间:2018-10-19 14:06:36

标签: cassandra cassandra-2.0 cassandra-3.0 cassandra-2.1

我们知道Cassandra中的节点拥有令牌。因此,在4个节点群集中,假设node1是25,node2是50,node3是75,node4是100。这也意味着node1负责范围0-25。现在这意味着,如果任何分区键的哈希值导致令牌值设为3,则带有该分区键的记录将进入node1。因此,令牌基本上确定了数据的位置。现在,在表T1中,您有一个主键((COL1),COL2),其中包含分区键COL1和定义的聚类列COL2,那么就有可能存在两条记录具有不同的分区键值(注意:分区键列)是相同的COL1,但两个记录(例如v1和v2)的值不同),但是在进行哈希处理时,它们导致相同的令牌,因此导致相同的节点但有两个不同的分区?简而言之,表T1中分区键COL1的两个分区键值v1和v2(当然来自两个记录)是否具有相同的哈希值(即令牌)(显然是相同的节点,但是有两个不同的分区)?相反,可以从同一个分区键列的两个不同值获得1个令牌吗?如果是,是否可以因此推断分区键值与令牌之间的比率为n:1,节点:令牌之间的比率为1:n?

0 个答案:

没有答案
相关问题