检查数据是否存在于节点中

时间:2015-10-01 19:17:11

标签: cassandra datastax

我有一个6节点集群,我将两个数据中心的复制因子保持为3和3。我插入了一行作为测试,后来插入了更多行。由于复制因子为6,我想检查数据是否写入所有节点。如何单独检查该节点中是否存在数据。我得到的最糟糕的选择是关闭剩余的5个节点并检查1节点的select语句并在所有节点上重复相同的语句。有没有更好的方法来检查这个?感谢你的时间。

1 个答案:

答案 0 :(得分:1)

您可以使用nodetool getendpoints。这是一个跟踪Blade Runners的示例表。

aploetz@cqlsh:stackoverflow> SELECT * FROm bladerunners;

 id     | type         | datetime                 | data
--------+--------------+--------------------------+---------------------------------------------
 B25881 | Blade Runner | 2015-02-16 18:00:03+0000 | Holden- Fine as long as nobody unplugs him.
 B26354 | Blade Runner | 2015-02-16 18:00:03+0000 |               Deckard- Filed and monitored.

(2 rows)

现在,如果我退出到我的命令提示符,我可以使用nodetool getendpoints,然后是我的键空间,表和分区键值。包含该键数据的节点列表应显示在下面:

aploetz@dockingBay94:~$ nodetool getendpoints stackoverflow bladerunners 'B26354'
127.0.0.1