DESCRIBE
Provides information about the connected Cassandra cluster and objects within the cluster.
DESCRIBE (shorthand: DESC) outputs detailed information in CQL format that you can run.
CAUTION: Verify all settings before executing the full output, some options may be
cluster specific in the WITH statement.
Synopsis
DESCRIBE [FULL] SCHEMA | CLUSTER
| KEYSPACES | KEYSPACE keyspace_name
| TABLES | TABLE [keyspace_name.]table_name
| TYPES | TYPE [keyspace_name.]udt_name
| FUNCTIONS | FUNCTION [keyspace_name.]udf_name
| AGGREGATES | AGGREGATE [keyspace_name.]uda_name
| INDEX [keyspace_name.]index_name
| MATERIALIZED VIEW [keyspace_name.]view_name
Syntax conventions | Description |
---|---|
UPPERCASE | Literal keyword. |
Lowercase | Not literal. |
Italics |
Variable value. Replace with a user-defined value. |
[] |
Optional. Square brackets ( [] ) surround optional command
arguments. Do not type the square brackets. |
( ) |
Group. Parentheses ( ( ) ) identify a group to choose from. Do
not type the parentheses. |
| |
Or. A vertical bar ( | ) separates alternative elements. Type
any one of the elements. Do not type the vertical bar. |
... |
Repeatable. An ellipsis ( ... ) indicates that you can repeat
the syntax element as often as required. |
'Literal string' |
Single quotation ( ' ) marks must surround literal strings in
CQL statements. Use single quotation marks to preserve upper case. |
{ key : value } |
Map collection. Braces ( { } ) enclose map collections or key
value pairs. A colon separates the key and the value. |
<datatype1,datatype2> |
Set, list, map, or tuple. Angle brackets ( < > ) enclose
data types in a set, list, map, or tuple. Separate the data types with a comma.
|
cql_statement; |
End CQL statement. A semicolon ( ; ) terminates all CQL
statements. |
[--] |
Separate the command line options from the command arguments with two hyphens (
-- ). This syntax is useful when arguments might be mistaken for
command line options. |
' <schema> ... </schema> ' |
Search CQL only: Single quotation marks ( ' ) surround an
entire XML schema declaration. |
@xml_entity='xml_entity_type' |
Search CQL only: Identify the entity and literal value to overwrite the XML element in the schema and solrConfig files. |
Note: On Linux systems object names, such as keyspace names, table
names, and so forth are case sensitive. By default, CQL converts names to lowercase unless
enclosed in double quotes.
Options | Description |
---|---|
CLUSTER | Cluster information including cluster name, partitioner, and snitch and for non-system keyspaces, the endpoint-range ownership information is also shown. |
FULL SCHEMA | Details for all objects in the cluster. |
SCHEMA | Details for all non-system objects in the cluster. |
KEYSPACES | List of all keyspace names on the cluster. |
KEYSPACE keyspace_name | Details for the specified keyspace and objects it contains. |
TABLES | List of tables in the current keyspace or all tables in the cluster when no keyspace is selected. |
TABLE keyspace_name.table_name | Details on the specified table. Note: To query the system tables, use SELECT. |
INDEX keyspace.table | Details on the specified index. |
TYPES | List of user-defined types in the current keyspace or all user-defined types in the cluster when no keyspace is selected. |
TYPE keyspace_name.type_name | Details on the specified user-defined type. |
FUNCTIONS | List of user-defined functions in the current keyspace or all user-defined functions in the cluster when no keyspace is selected. |
FUNCTION keyspace_name.function_name | Details on the specified user-defined function. |
AGGREGATES | List of user-defined aggregates in the current keyspace or all user-defined aggregates in the cluster when no keyspace is selected. |
AGGREGATE keyspace_name.aggregate_name | Details on the specified user-defined aggregate. |
MATERIALIZED VIEW keyspace_name.view_name | Details on the specified materialized view. |
Examples
Show all keyspaces:
DESC keyspaces
All the keyspaces on the cluster are
listed.
test_cycling system_auth test
cycling system_schema system system_distributed system_traces
Show details for the Cycling Calendar table:
DESC cycling.calendar
A complete table description in CQL that can be used to recreated the table is
returned.
CREATE TABLE cycling.calendar (
race_id int,
race_start_date timestamp,
race_end_date timestamp,
race_name text,
PRIMARY KEY (race_id, race_start_date, race_end_date)
) WITH CLUSTERING ORDER BY (race_start_date ASC, race_end_date ASC)
AND bloom_filter_fp_chance = 0.01
AND caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'}
AND comment = ''
AND compaction = {'class': 'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy', 'max_threshold': '32', 'min_threshold': '4'}
AND compression = {'chunk_length_in_kb': '64', 'class': 'org.apache.cassandra.io.compress.LZ4Compressor'}
AND crc_check_chance = 1.0
AND dclocal_read_repair_chance = 0.1
AND default_time_to_live = 0
AND gc_grace_seconds = 864000
AND max_index_interval = 2048
AND memtable_flush_period_in_ms = 0
AND min_index_interval = 128
AND read_repair_chance = 0.0
AND speculative_retry = '99PERCENTILE';