我是卡桑德拉的新手,试图使用卡桑德拉实现一个玩具应用程序。我已经在我的Cassandra DB中创建了一个键空间和几个列族,但我忘记了集群的名称。

我试图找到是否有任何查询可以列出所有可用的键空间。

有人知道这样的查询或命令吗?


当前回答

在命令行模式下使用cqlsh列出cassandra中所有可用的密钥空间。

Command: DESCRIBE keyspaces;

例子:

cqlsh> DESCRIBE keyspaces;

其他回答

我建议使用grep和awk的组合:

root@DC1-Node1:/home# nodetool tablestats | grep "Keyspace :" | awk -F ":" '{print $2}'
 system_traces
 system
 system_distributed
 system_schema
 device_tool
 system_tool

在命令行模式下使用cqlsh列出cassandra中所有可用的密钥空间。

Command: DESCRIBE keyspaces;

例子:

cqlsh> DESCRIBE keyspaces;

DESC KEYSPACES将完成这项工作。

另外,如果你想描述一个特定键空间的模式,你可以使用

DESC

这很简单。只需给出下面的命令来列出所有的键空间。

描述密钥空间;

如果您想使用SQL查询检查系统模式中的密钥空间

下面是命令。

SELECT * FROM system_schema.keyspaces;

希望这能回答你的问题…

您可以通过下面的资源来理解和创建键空间。

文档:

https://docs.datastax.com/en/cql/3.1/cql/cql_reference/create_keyspace_r.html https://www.i2tutorials.com/cassandra-tutorial/cassandra-create-keyspace/

除上述方法外,如果你安装了opscenter,

转到数据选项卡>,在那里你会看到你创建的所有密钥空间和一些系统密钥空间。 您可以看到各个键空间下的所有表,还可以看到键空间的复制因子。

欲了解更多详情,请查看下面的链接。 https://docs.datastax.com/en/opscenter/6.1/opsc/online_help/opscDataModelingManagingKeyspace_t.html