Cassandra에서 사용 가능한 모든 키 공간을 나열하는 방법은 무엇입니까?


174

나는 Cassandra의 초보자이며 Cassandra를 사용하여 하나의 장난감 응용 프로그램을 구현하려고합니다. Cassandra DB에서 하나의 키 공간과 몇 개의 열 패밀리를 만들었지 만 클러스터 이름을 잊었습니다.

사용 가능한 모든 키 공간을 나열 할 수있는 쿼리가 있는지 찾으려고합니다.

그런 쿼리 나 명령을 아는 사람이 있습니까?


9
C * 3.x : SELECT * FROM system_schema.keyspaces;
belgacea

이 답변은 구식입니다. 정답은 여기 에 링크 설명을 입력하십시오
Vinaya Thimmappa

답변:


96

cqlsh도구 외부에서이를 수행 schema_keyspaces하려면 system키 공간 에서 테이블을 조회 할 수 있습니다 . schema_columnfamilies모든 테이블에 대한 정보를 포함 하는 테이블도 있습니다.

DESCRIBESHOW명령에서만 작동 cqlsh하고 cassandra-cli.


340

[cqlsh 4.1.0 | 카산드라 2.0.4 | CQL 사양 3.1.1 | 중고품 프로토콜 19.39.0]

현재 사용할 명령은 다음과 같습니다.

DESCRIBE keyspaces;

10
이것을 대답으로 받아들이십시오! 그리고 출력은 한 줄에 여러 키 공간 이름을 인쇄합니다.
Eric Wang

3
Cassandra는 다음과 같이 간단한 명령도 허용합니다. DESC 키 공간
Hari

30

매우 간단합니다. 모든 키 공간을 나열하려면 아래 명령을 입력하십시오.

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/


13

찾았습니다 ... show keyspaces명령은 모든 키 공간을 나열합니다. 나는이 명령을 시도했을 때 'keyspaces'에서 마지막 's'를주는 것을 잊었다 고 생각합니다.


8
탭 완성을 사용하여 cassandra-cli 또는 cqlsh 명령을 완료하는 방법에 대한 힌트를 볼 수 있습니다. 구문을 잊어 버린 경우 도움이 될 수 있습니다. 예를 들어, "show"를 입력 한 다음 유효한 show 명령을 보려면 tab을 누르십시오.
Ike Walker

3
귀하의 답변에서 이차적 인 점은 (일부 사람들에게는) 답변의 가장 귀중한 부분이 될 것입니다. "cqlsh"와 "cassandra-cli"사이에는 상황이 많이 다릅니다 (물음표 포스터는 자신이 사용중인 것을 나타내지 않습니다). 키 스페이스 표시; 설명 (키 스페이스 이름) 참고 : "cqlsh"를 사용하는 경우 키 스페이스 또는 열군에서 대소 문자가 혼합 된 이름이나 따옴표로 묶어야합니다 (포스터는 요청하지 않았지만 C *를 처음 사용하는 경우 일반적인 사용자 오류 임)
Scott Prive

5

cqlsh 또는 cassandra-cli에 로그인 한 후 아래 명령을 실행

  • cqlsh에서

desc keyspaces;

또는

describe keyspaces;

또는

select * from system_schema.keyspaces;

  • 카산드라 클리

show keyspaces;


4

DESCRIBE명령은 친구입니다. 하나의 키 공간, 키 공간 나열, 하나의 테이블 또는 키 공간, 클러스터 등의 모든 테이블을 설명 할 수 있습니다. 당신은 입력하여 전체 아이디어를 얻을 수 있습니다

HELP DESCRIBE cqlsh에서.

127.0.0.1:9042에서 mscluster에 연결되었습니다. [cqlsh 5.0.1 | 카산드라 3.8 | CQL 사양 3.4.2 | Native protocol 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> DESCRIBE testkeyspace;

replication = { 'class': 'SimpleStrategy', 'replication_factor': '3'}을 사용하여 KEYSPACE testkeyspace를 작성하십시오.

  • DESCRIBE 키 공간-모든 키 공간을 나열합니다.

cqlsh> 설명 키 스페이스

system_schema 시스템 테스트 키 스페이스 system_auth
system_distributed system_traces

  • DESCRIBE TABLES-현재 키 공간의 모든 테이블을 나열합니다.

cqlsh : system> 설명 테이블;

available_ranges 동료 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> DESCRIBE TABLE 배치 로그

CREATE TABLE system.batchlog (id uuid 기본 키, 데이터 블로 브, 버전 int, written_at 타임 스탬프) with bloom_filter_fp_chance = 0.01 AND 캐싱 = { 'keys': 'ALL', 'rows_per_partition': 'NONE'} 및 주석 = ' DEPRECATED 배치 로그 엔트리 '.... 간결하게 생략


4

DESC KEYSPACES가 작업을 수행합니다.

또한 특정 키 공간의 스키마를 설명하려는 경우 사용할 수 있습니다

DESC


2
  1. cqlsh에 로그인
  2. 디스크 키 스페이스;
  3. system_schema.keyspaces에서 *를 선택하십시오.

2

Apache Cassandra NoSQL 데이터베이스 서버의 모든 키 공간을 보려면 다음 명령을 사용하십시오.

> DESCRIBE KEYSPACES 



1

나는의 조합 제안 grepawk:

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

대답을 주셔서 감사하지만 키 공간을 보는 가장 간단한 방법은 "DESCRIBE 키 공간"명령을 사용하는 것입니다. grep과 awk가 필요 없습니다.
셰카


0
  1. cqlsh에 로그인

  2. 존재하는 키 공간의 이름 / 목록을 얻으려면 아래 명령을 사용하십시오.

         SELECT keyspace_name FROM system_schema.keyspaces;
    

1
그것은 카산드라의 버전에 달려 있습니다 ... 또한,이 답변이 이전과 어떻게 다른가요?
Alex Ott

-1

describe 및 desc 명령은 클러스터의 키 공간 목록을 제공합니다. 자세한 내용은 아래 출력을 참조하십시오.

cqlsh> describe keyspaces
reaper_db      system_auth  system_distributed
system_schema  system       system_traces

또는

cqlsh> desc keyspaces
reaper_db      system_auth  system_distributed
system_schema  system       system_traces

귀하의 답변이 다른 답변과 어떻게 다릅니 까? 또한-이 명령은 cqlsh어디에서나 작동 하지 않습니다.
Alex Ott

cassandra @ node1 : ~ $ nodetool 테이블 통계 | grep "Keyspace :"키 공간 : reaper_db 키 공간 : system_traces 키 공간 : 시스템 키 공간 : system_distributed 키 공간 : system_schema 키 공간 : system_auth cassandra @ node1 : ~ $
Srikant Patra

cqlsh에 대해 동일한 명령을 나열하는 답변이 4 개 이상 있습니다.
Alex Ott
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.