Làm thế nào để liệt kê tất cả các không gian phím có sẵn trong Cassandra?


174

Tôi là người mới ở Cassandra và đang cố gắng thực hiện một ứng dụng đồ chơi bằng Cassandra. Tôi đã tạo một không gian khóa và một vài họ cột trong Cassandra DB nhưng tôi quên tên cụm của mình.

Tôi đang cố gắng tìm xem có bất kỳ truy vấn nào có thể liệt kê tất cả các không gian khóa có sẵn.

Bất cứ ai cũng biết một truy vấn hoặc lệnh như vậy?


9
C * 3.x : CHỌN * TỪ system_schema.keyspaces;
belgacea

Câu trả lời này đã lỗi thời. Câu trả lời đúng là ở đây, nhập mô tả liên kết vào đây
Vinaya Thimmappa

Câu trả lời:


96

Nếu bạn muốn làm điều này bên ngoài cqlshcông cụ, bạn có thể truy vấn schema_keyspacesbảng trong systemkhông gian phím . Ngoài ra còn có một bảng được gọi là schema_columnfamilieschứa thông tin về tất cả các bảng.

Các lệnh DESCRIBESHOWchỉ hoạt động trong cqlshcassandra-cli.


340

[cqlsh 4.1.0 | Cassandra 2.0.4 | Thông số kỹ thuật CQL 3.1.1 | Giao thức tiết kiệm 19,39.0]

Hiện tại, lệnh để sử dụng là:

DESCRIBE keyspaces;

10
Chấp nhận điều này như câu trả lời! Và nhân tiện, đầu ra sẽ in nhiều tên không gian phím trong một dòng.
Eric Wang

3
Cassandra cũng cho phép một lệnh tay ngắn như trong: không gian phím DESC
Hari

30

Nó rất đơn giản. Chỉ cần đưa ra lệnh dưới đây để liệt kê tất cả các không gian khóa.

Cqlsh> Mô tả không gian khóa;

Nếu bạn muốn kiểm tra không gian khóa trong lược đồ hệ thống bằng truy vấn SQL

dưới đây là lệnh.

SELECT * FROM system_schema.keyspaces;

Hy vọng điều này sẽ trả lời câu hỏi của bạn ...

Bạn có thể xem qua phần giải thích về cách hiểu và tạo các không gian khóa từ các tài nguyên bên dưới.

Tài liệu:

https://docs.datastax.com/en/cql/3.1/cql/cql_Vference/create_keyspace_r.html https://www.i2tutorials.com/cassandra-tutorial/cassandra-create-keyspace/


13

Tìm thấy nó ... show keyspaceslệnh liệt kê tất cả các không gian phím. Tôi nghĩ trước đó khi tôi thử lệnh này, tôi đã quên đưa ra 's' trong 'không gian khóa' cuối cùng


8
Bạn có thể sử dụng hoàn thành tab để xem gợi ý về cách hoàn thành lệnh cassandra-cli hoặc cqlsh. Điều đó có thể hữu ích cho bạn nếu bạn quên cú pháp. Ví dụ: chỉ cần gõ "hiển thị" và sau đó tab để xem các lệnh hiển thị hợp lệ.
Ike Walker

3
Điểm phụ trong câu trả lời của bạn sẽ là (đối với một số người) là phần có giá trị nhất của câu trả lời. Mọi thứ hoạt động rất khác nhau giữa "cqlsh" và "cassandra-cli" (và poster câu hỏi không cho biết anh ta đang sử dụng cái gì). hiển thị không gian phím; mô tả (tên không gian phím). LƯU Ý: Nếu một người đang sử dụng "cqlsh", nó yêu cầu các trích dẫn xung quanh bất kỳ tên viết hoa hoặc chữ hoa nào trong không gian khóa hoặc cột (OK, người đăng đã không hỏi điều này nhưng đó là lỗi người dùng phổ biến nếu mới sử dụng C *)
Scott Prive

5

Sau khi đăng nhập vào cqlsh hoặc cassandra-cli. chạy bên dưới các lệnh

  • Trên cqlsh

desc keyspaces;

hoặc là

describe keyspaces;

hoặc là

select * from system_schema.keyspaces;

  • Trên cassandra-cli

show keyspaces;


4

Các DESCRIBElệnh là bạn của bạn. Bạn có thể mô tả một không gian khóa, liệt kê các không gian khóa, một bảng hoặc liệt kê tất cả các bảng trong không gian khóa, cụm và nhiều hơn nữa. Bạn có thể lấy ý tưởng đầy đủ bằng cách gõ

HELP DESCRIBE trong cqlsh.

Đã kết nối với mscluster tại 127.0.0.1:9042. [cqlsh 5.0.1 | Cassandra 3,8 | Thông số kỹ thuật CQL 3.4.2 | Giao thức gốc v4] Sử dụng TRỢ GIÚP để được giúp đỡ.

cqlsh> GIÚP MÔ TẢ

    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>
  • MÔ TẢ <your key space name>- mô tả lệnh được sử dụng để tạo không gian phím

cqlsh> không gian kiểm tra mô tả;

TẠO không gian kiểm tra KEYSPACE VỚI bản sao = {'class': 'SimpleStrargety', 'Replication_factor': '3'} AND bền_writes = true;

  • MÔ TẢ không gian khóa - liệt kê tất cả các không gian khóa

cqlsh> MÔ TẢ TỪ KHÓA

system_schema testkeypace system_auth
system_distribution system_traces

  • BẢNG MÔ TẢ - Liệt kê tất cả các bảng trong không gian phím hiện tại

cqlsh: hệ thống> BẢNG MÔ TẢ;

có sẵn_ranges đồng nghiệp paxos phạm
vi_xifts đợt compaction_history batchlog
cục bộ "IndexInfo" surdy_activity
size_estimates gợi ý view_builds_in_projection ngang_được
xây dựng_view

  • MÔ TẢ your table namehoặc MÔ TẢ BẢNG your table name- Cung cấp cho các chi tiết bảng

cqlsh: system> MÔ TẢ BẢNG

CREATE TABLE system.batchlog (id UUID PRIMARY KEY, dữ liệu blob, phiên bản int, written_at timestamp) VỚI bloom_filter_fp_chance = 0.01 VÀ bộ nhớ đệm = { 'phím': 'TẤT CẢ', 'rows_per_partition': 'NONE'} VÀ comment = ' NỮA batchlog mục '.... được bỏ qua cho ngắn gọn


4

DESC KEYSPACES sẽ thực hiện công việc.

Ngoài ra, nếu bạn muốn mô tả lược đồ của một không gian phím cụ thể, bạn có thể sử dụng

MÔ TẢ


2
  1. đăng nhập vào cqlsh
  2. không gian phím desc;
  3. chọn * từ system_schema.keyspaces;

2

Để xem tất cả các không gian khóa trên Máy chủ cơ sở dữ liệu Apache Cassandra NoQuery của bạn, hãy sử dụng lệnh:

> DESCRIBE KEYSPACES 



1

Tôi đề nghị kết hợp grepawk:

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

cảm ơn bạn đã trả lời nhưng cách đơn giản nhất để xem các không gian phím là sử dụng lệnh "DESCRIBE keyspace". Không cần phải grep và awk.
Shekhar

0

Ngoài phương pháp trên, nếu bạn đã cài đặt opscenter,

  1. Chuyển đến tab dữ liệu> ở đó bạn sẽ thấy tất cả các không gian khóa được tạo bởi bạn và một số không gian khóa hệ thống.
  2. Bạn có thể thấy tất cả các bảng dưới các không gian khóa riêng lẻ và cả hệ số sao chép cho không gian phím.

để biết thêm chi tiết kiểm tra liên kết dưới đây. https://docs.datastax.com/en/opscenter/6.1/opsc/online_help/opscDataModelingManagingKeyspace_t.html


0
  1. đăng nhập vào cqlsh

  2. sử dụng lệnh bên dưới để nhận tên / danh sách các không gian khóa

         SELECT keyspace_name FROM system_schema.keyspaces;
    

1
nó phụ thuộc vào phiên bản của Cassandra ... Ngoài ra, câu trả lời này khác với trước đây như thế nào?
Alex Ott

-1

mô tả và lệnh desc sẽ đưa ra danh sách các không gian khóa trong cụm. Vui lòng tìm bên dưới đầu ra để biết thêm chi tiết.

cqlsh> describe keyspaces
reaper_db      system_auth  system_distributed
system_schema  system       system_traces

HOẶC LÀ

cqlsh> desc keyspaces
reaper_db      system_auth  system_distributed
system_schema  system       system_traces

câu trả lời của bạn khác với những câu trả lời khác như thế nào? Ngoài ra - các lệnh này chỉ hoạt động ở cqlsh, không phải ở mọi nơi ...
Alex Ott

cassandra @ node1: ~ $ tabetats tab | grep "Keyspace:" Keyspace: reaper_db Keyspace: system_traces Keyspace: system Keyspace: system_distribution Keyspace: system_schema Keyspace: system_auth cassandra @ node1: ~ $
Srikant Patra

Có ít nhất 4 câu trả lời liệt kê các lệnh tương tự cho cqlsh
Alex Ott
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.