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

Checking data if its present in a node

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

您可以为此使用 nodetool getendpoints。这是一个示例 table 以跟踪银翼杀手。

aploetz@cqlsh:Whosebug> 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,然后是我的键空间,table 和一个分区键值。包含该键数据的节点列表应显示在下方:

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