use*_*961 4 cassandra distributed-database
是否有命令或任何方式知道什么数据存储在Cassandra的哪些节点上?
我对Cassandra很新,并且没有太多运气在谷歌搜索这个问题.
谢谢!
您可以让Cassandra通过nodetool getendpoints告诉您特定键所在的节点.
$ nodetool getendpoints mykeyspace tbl '8546200'
192.168.73.188
192.168.73.190
Run Code Online (Sandbox Code Playgroud)
我不知道这是不是你要找的.AFAIK没有办法完全查询表或键空间中所有行的负责节点.但正如Blake指出的那样,您的应用程序并不需要担心这一点.
如果您真的想知道,可以使用token分区键上的功能查询您的表.以下是使用Blake架构的示例:
SELECT token(partition_key),partition_key FROM tbl;
Run Code Online (Sandbox Code Playgroud)
这将使用您的分区键列出散列标记.然后,您可以运行a nodetool ring列出每个节点的令牌范围,并查看哪个节点负责该范围.请注意,如果您使用的是vNode,则输出会非常大(默认情况下每个输出256行).
| 归档时间: |
|
| 查看次数: |
1561 次 |
| 最近记录: |