Как перечислить все доступные пространства клавиш в Кассандре?

Я новичок в Cassandra и пытаюсь реализовать одно игрушечное приложение с использованием Cassandra. Я создал одно пространство ключей и несколько семейств столбцов в моей базе данных Cassandra, но я забыл имя своего кластера.

Я пытаюсь найти, есть ли какой-либо запрос, который может перечислить все доступные пространства ключей.

Кто-нибудь знает такой запрос или команду?


person Shekhar    schedule 10.09.2013    source источник
comment
C * 3.x: ВЫБРАТЬ * FROM system_schema.keyspaces;   -  person belgacea    schedule 12.07.2016
comment


Ответы (16)


Если вы хотите сделать это вне инструмента cqlsh, вы можете запросить schema_keyspaces таблицу в system пространстве ключей. Также есть таблица с названием schema_columnfamilies, которая содержит информацию обо всех таблицах.

Команды DESCRIBE и SHOW работают только в cqlsh и cassandra-cli.

person Theo    schedule 11.09.2013
comment
Слишком много деталей иногда лишает простоты, - ответ Марко уместен. - person Neeraj Jain; 28.01.2021

[cqlsh 4.1.0 | Cassandra 2.0.4 | CQL spec 3.1.1 | Протокол сбережений 19.39.0]

В настоящее время используется следующая команда:

DESCRIBE keyspaces;
person Marco Ponzi    schedule 17.01.2014
comment
Примите это как ответ! И, кстати, вывод будет печатать несколько имен пространств ключей в одной строке. - person user218867; 04.07.2016
comment
Cassandra также позволяет использовать сокращенные команды, например: DESC keyspaces - person Hari; 03.12.2017
comment
Сработало у меня, спасибо! - person Milan; 15.10.2020

Все очень просто. Просто введите команду ниже для вывода списка всех пространств ключей.

Cqlsh> Опишите пространства клавиш;

Если вы хотите проверить пространство ключей в схеме системы с помощью 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/

person Prasu    schedule 27.12.2017

Найдено ..._ Команда 1_ выводит список всех пространств ключей. Я думаю, что раньше, когда я пробовал эту команду, я забыл указать последние 's' в 'keypaces'

person Shekhar    schedule 10.09.2013
comment
Вы можете использовать завершение табуляции, чтобы увидеть подсказки о том, как выполнить команду cassandra-cli или cqlsh. Это может быть полезно, если вы забудете синтаксис. Например, просто введите show, а затем tab, чтобы увидеть действительные команды show. - person Ike Walker; 11.09.2013
comment
Второстепенный момент в вашем ответе будет (для некоторых) самой ценной частью ответа. Между cqlsh и cassandra-cli все работает по-разному (и плакат с вопросом не указывает, что он использует). показать пространства клавиш; описать (имя пространства ключей). ПРИМЕЧАНИЕ.Если кто-то использует cqlsh, он требует кавычек вокруг любых смешанных или прописных имен в пространстве ключей или семействе столбцов (хорошо, плакат не спрашивал об этом, но это обычная ошибка пользователя, если вы новичок в C *) - person Scott Prive; 03.02.2015

Чтобы увидеть все пространства ключей на сервере базы данных Apache Cassandra NoSQL, используйте команду:

> DESCRIBE KEYSPACES 
person Suman Gangopadhyay    schedule 09.04.2020
comment
Это должен быть принятый ответ. Коротко и прямо по делу. - person nocdib; 14.10.2020

После входа в cqlsh или cassandra-cli. выполнить команды ниже

  • На cqlsh

desc keyspaces;

or

describe keyspaces;

or

select * from system_schema.keyspaces;

  • На кассандре-кли

show keyspaces;

person LetsNoSQL    schedule 19.12.2018

Команда DESCRIBE - ваш друг. Вы можете описать одно пространство ключей, список пространств ключей, одну таблицу или перечислить все таблицы в пространстве ключей, кластер и многое другое. Вы можете получить полное представление, набрав

HELP DESCRIBE в cqlsh.

Подключен к mscluster по адресу 127.0.0.1:9042. [cqlsh 5.0.1 | Cassandra 3.8 | CQL spec 3.4.2 | Собственный протокол v4] Используйте HELP для получения помощи.

cqlsh> ПОМОЩЬ ОПИСАТЬ

    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>
  • DESCRIBE <your key space name> - описывает команду, используемую для создания пространства ключей

cqlsh> ОПИСАТЬ testkeyspace;

СОЗДАТЬ КЛЮЧЕВОЕ ПРОСТРАНСТВО testkeyspace С репликацией = {'class': 'SimpleStrategy', 'replication_factor': '3'} И strong_writes = true;

  • DESCRIBE keyspaces - перечисляет все пространства ключей.

cqlsh> ОПИСАТЬ КЛЮЧЕВЫЕ ПРОСТРАНСТВА

system_schema system testkeyspace system_auth
system_distributed system_traces

  • ОПИСАНИЕ ТАБЛИЦ - Список всех таблиц в текущем пространстве ключей

cqlsh: system> ОПИСАТЬ ТАБЛИЦЫ;

available_ranges peers paxos
range_xfers партии compaction_history batchlog
локальный "IndexInfo" sstable_activity
size_estimates подсказки views_builds_in_progress peer_events
built_views

  • DESCRIBE your table name или DESCRIBE TABLE your table name - Предоставляет подробную информацию о таблице.

cqlsh: system> ОПИСАТЬ ТАБЛИЦУ batchlog

СОЗДАТЬ ТАБЛИЦУ system.batchlog (id uuid PRIMARY KEY, blob данных, версия int, временная метка написано_at) С bloom_filter_fp_chance = 0.01 И caching = {'keys': 'ALL', 'rows_per_partition': 'NONE'} И comment = ' УСТАРЕВШИЕ записи пакетного журнала ".... опущены для краткости

person factotum    schedule 11.09.2017

DESC KEYSPACES выполнит свою работу.

Кроме того, если вы хотите описать схему определенного пространства ключей, вы можете использовать

DESC

person DataJanitor    schedule 22.11.2017

  1. войти в cqlsh
  2. desc keyspaces;
  3. выберите * из system_schema.keyspaces;
person Jay Tokala    schedule 11.11.2018

  1. войти в cqlsh

  2. используйте команду ниже, чтобы получить имена / список присутствующих пространств ключей

         SELECT keyspace_name FROM system_schema.keyspaces;
    
person Suparna Raut    schedule 13.03.2020
comment
это зависит от версии Кассандры ... Кроме того, чем этот ответ отличается от предыдущего? - person Alex Ott; 13.03.2020

desc keyspaces сделает это за вас.

person Chakri Stark    schedule 26.10.2017

ОПИСАТЬ пространства ключей, чтобы перечислить все наборы ключей ОПИСАТЬ пространство ключей //docs.datastax.com/en/dse/5.1/cql/cql/cql_reference/cqlsh_commands/cqlshDescribeKeyspace.html

person Puneet    schedule 09.05.2019

Я предлагаю комбинацию 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
person Mazhar Shaikh    schedule 05.09.2019
comment
спасибо за ответ, но самый простой способ увидеть пространства ключей - использовать команду DESCRIBE keyspace. Не нужно использовать grep и awk. - person Shekhar; 05.09.2019

Чтобы вывести список всех доступных пространств ключей в cassandra, используя cqlsh в режиме CLI.

Команда: DESCRIBE keyspaces;

Пример :

cqlsh> DESCRIBE keyspaces;

Example1

person Saptak P    schedule 23.10.2020

Помимо вышеуказанного метода, если у вас установлен opscenter,

  1. Перейдите на вкладку данных> там вы увидите все созданные вами ключевые пространства и некоторые системные пространства ключей.
  2. Вы можете увидеть все таблицы в отдельных пространствах ключей, а также фактор репликатора для пространства ключей.

для получения дополнительной информации проверьте ссылку ниже. https://docs.datastax.com/en/opscenter/6.1/opsc/online_help/opscDataModelingManagingKeyspace_t.html

person daljeet singh    schedule 19.02.2019

Описание и команда desc выдаст список пространств ключей в кластере. Более подробную информацию вы найдете ниже.

cqlsh> describe keyspaces
reaper_db      system_auth  system_distributed
system_schema  system       system_traces

OR

cqlsh> desc keyspaces
reaper_db      system_auth  system_distributed
system_schema  system       system_traces
person Srikant Patra    schedule 15.10.2019
comment
чем ваш ответ отличается от других ответов? Также - эти команды работают только в cqlsh, а не везде ... - person Alex Ott; 15.10.2019
comment
cassandra @ node1: ~ $ nodetool tablestats | grep Keyspace: Keyspace: reaper_db Keyspace: system_traces Keyspace: system Пространство ключей: system_distributed Пространство ключей: system_schema Пространство ключей: system_auth cassandra @ node1: ~ $ - person Srikant Patra; 15.10.2019
comment
Есть как минимум 4 ответа, в которых перечислены одни и те же команды для cqlsh. - person Alex Ott; 15.10.2019