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

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

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


当前回答

要查看Apache Cassandra NoSQL数据库服务器上的所有键空间,使用以下命令:

> DESCRIBE KEYSPACES 

其他回答

如果希望在cqlsh工具之外执行此操作,可以在系统密钥空间中查询schema_keyspaces表。还有一个名为schema_columnfamilies的表,它包含关于所有表的信息。

description和SHOW命令只能在cqlsh和cassandra-cli下使用。

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

描述密钥空间;

如果您想使用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/

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

Command: DESCRIBE keyspaces;

例子:

cqlsh> DESCRIBE keyspaces;

DESC KEYSPACES将完成这项工作。

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

DESC

我建议使用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