行键/分区和节点位置

时间:2018-04-29 18:54:59

标签: cassandra-3.0

我正在学习Cassandra数据存储/模型。想知道是否有工具可以显示NODE上存在哪个ROW KEY或PARTITION。

说我有3个节点集群,其密钥空间为RF = 2

提前致谢。

1 个答案:

答案 0 :(得分:0)

您可以使用nodetool getendpoints命令。示例

nodetool getendpoints MY_KEY

它将显示哪些节点是该数据的副本。

添加信息:您还可以使用nodetool ring命令显示令牌分发。虽然对新手来说有点难以理解。

如果您感兴趣,可以快速解释令牌:基本上每个节点都有一个(或多个,如果使用vnodes)令牌。此节点拥有的令牌范围从令牌本身返回,直到前一个节点令牌。对于拥有以下令牌(前进)的节点,此令牌范围将复制所需的次数。

此图片解释得很清楚:enter image description here

图片来源:https://www.datastax.com/dev/blog/repair-in-cassandra