In a Cassandra cluster, a keyspace is an outermost object that determines how data replicates on nodes. Keyspaces consist of core objects called column families (which are like tables in RDBMS), rows indexed by keys, data types, data center awareness, replication factor, and keyspace strategy.
Users can access Cassandra through its nodes using Cassandra Query Language (CQL). CQL treats the database (Keyspace) as a container of tables. Programmers use cqlsh: a prompt to work with CQL or separate application language drivers. Clients approach any of the nodes for their read-write operations.
[cqlsh 4.1.0 | Cassandra 2.0.4 | CQL spec 3.1.1 | Thrift protocol 19.39.0]
Currently, the command to use is:
DESCRIBE keyspaces;
If you want to do this outside of the cqlsh
tool you can query the schema_keyspaces
table in the system
keyspace. There's also a table called schema_columnfamilies
which contains information about all tables.
The DESCRIBE
and SHOW
commands only work in cqlsh
and cassandra-cli
.
Its very simple. Just give the below command for listing all keyspaces.
Cqlsh> Describe keyspaces;
If you want to check the keyspace in the system schema using the SQL query
below is the command.
SELECT * FROM system_schema.keyspaces;
Hope this will answer your question...
You can go through the explanation on understanding and creating the keyspaces from below resources.
Documentation:
https://docs.datastax.com/en/cql/3.1/cql/cql_reference/create_keyspace_r.html https://www.i2tutorials.com/cassandra-tutorial/cassandra-create-keyspace/
Found it...show keyspaces
command lists down all the keyspaces. I think earlier when I tried this command, I forgot to give last 's' in 'keyspaces'
To see all the keyspaces on your Apache Cassandra NoSQL Database Server use the command:
> DESCRIBE KEYSPACES
Once logged in to cqlsh or cassandra-cli. run below commands
desc keyspaces;
or
describe keyspaces;
or
select * from system_schema.keyspaces;
show keyspaces;
The DESCRIBE
command is your friend. You can describe one keyspace, list keyspaces, one table or list all tables in keyspace, the cluster and much more.
You can get the full idea by typing
HELP DESCRIBE
in cqlsh.
Connected to mscluster at 127.0.0.1:9042. [cqlsh 5.0.1 | Cassandra 3.8 | CQL spec 3.4.2 | Native protocol v4] Use HELP for help.
cqlsh> HELP DESCRIBE
DESCRIBE [cqlsh only] (DESC may be used as a shorthand.) Outputs information about the connected Cassandra cluster, or about the data objects stored in the cluster. Use in one of the following ways:...<omitted for brevity>
<your key space name>
- describes the command used to create keyspacecqlsh> DESCRIBE testkeyspace;
CREATE KEYSPACE testkeyspace WITH replication = {'class':'SimpleStrategy', 'replication_factor': '3'} AND durable_writes = true;
cqlsh> DESCRIBE KEYSPACES
system_schema system testkeyspace system_auth
system_distributed system_traces
cqlsh:system> DESCRIBE TABLES;
available_ranges peers paxos
range_xfers batches compaction_history batchlog
local "IndexInfo" sstable_activity
size_estimates hints views_builds_in_progress peer_events
built_views
your table name
or DESCRIBE TABLE your table name
- Gives the table details cqlsh:system> DESCRIBE TABLE batchlog
CREATE TABLE system.batchlog ( id uuid PRIMARY KEY, data blob, version int, written_at timestamp ) WITH bloom_filter_fp_chance = 0.01 AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'} AND comment = 'DEPRECATED batchlog entries' ....omitted for brevity
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With