查询 Cassandra 以获取 Java 内的节点状态

Querying Cassandra for node statuses within Java

我想向 Cassandra 查询 Java 应用程序中使用 nodetool status 命令检索到的信息。这是可能的还是我必须 运行 nodetool 并解析输出?

在当前版本中无法通过 cql 获取该信息。将来 system_views 键空间中会有一个环状态,但在当前版本中这是不可能的。您必须使用像 nodetool 或 运行 nodetool 这样的 JMX 并解析输出。

一些信息通过 cluster metadata - you can get Metadata object via Cluster.getMetadata, then get all hosts via getAllHosts and extract data 公开,例如节点是否启动、它拥有的令牌范围等。