Cassandra - polecenia powłoki
Cassandra udostępnia udokumentowane polecenia powłoki oprócz poleceń CQL. Poniżej podano udokumentowane polecenia powłoki Cassandry.
Wsparcie
Polecenie HELP wyświetla streszczenie i krótki opis wszystkich poleceń cqlsh. Poniżej podano użycie polecenia pomocy.
cqlsh> help
Documented shell commands:
===========================
CAPTURE COPY DESCRIBE EXPAND PAGING SOURCE
CONSISTENCY DESC EXIT HELP SHOW TRACING.
CQL help topics:
================
ALTER CREATE_TABLE_OPTIONS SELECT
ALTER_ADD CREATE_TABLE_TYPES SELECT_COLUMNFAMILY
ALTER_ALTER CREATE_USER SELECT_EXPR
ALTER_DROP DELETE SELECT_LIMIT
ALTER_RENAME DELETE_COLUMNS SELECT_TABLE
Zdobyć
To polecenie przechwytuje dane wyjściowe polecenia i dodaje je do pliku. Na przykład spójrz na poniższy kod, który przechwytuje dane wyjściowe do pliku o nazwieOutputfile.
cqlsh> CAPTURE '/home/hadoop/CassandraProgs/Outputfile'
Kiedy wpiszemy jakąkolwiek komendę w terminalu, wynik zostanie przechwycony przez podany plik. Poniżej podano używane polecenie i migawkę pliku wyjściowego.
cqlsh:tutorialspoint> select * from emp;
Możesz wyłączyć przechwytywanie za pomocą następującego polecenia.
cqlsh:tutorialspoint> capture off;
Konsystencja
To polecenie pokazuje bieżący poziom spójności lub ustawia nowy poziom spójności.
cqlsh:tutorialspoint> CONSISTENCY
Current consistency level is 1.
Kopiuj
To polecenie kopiuje dane do iz Cassandry do pliku. Poniżej podano przykład kopiowania tabeli o nazwieemp do pliku myfile.
cqlsh:tutorialspoint> COPY emp (emp_id, emp_city, emp_name, emp_phone,emp_sal) TO ‘myfile’;
4 rows exported in 0.034 seconds.
Jeśli otworzysz i zweryfikujesz podany plik, możesz znaleźć skopiowane dane, jak pokazano poniżej.
Opisać
To polecenie opisuje aktualną grupę Cassandry i jej obiekty. Warianty tego polecenia wyjaśniono poniżej.
Describe cluster - To polecenie zawiera informacje o klastrze.
cqlsh:tutorialspoint> describe cluster;
Cluster: Test Cluster
Partitioner: Murmur3Partitioner
Range ownership:
-658380912249644557 [127.0.0.1]
-2833890865268921414 [127.0.0.1]
-6792159006375935836 [127.0.0.1]
Describe Keyspaces- To polecenie wyświetla listę wszystkich obszarów kluczowych w klastrze. Poniżej podano użycie tego polecenia.
cqlsh:tutorialspoint> describe keyspaces;
system_traces system tp tutorialspoint
Describe tables- To polecenie wyświetla wszystkie tabele w obszarze kluczy. Poniżej podano użycie tego polecenia.
cqlsh:tutorialspoint> describe tables;
emp
Describe table- To polecenie zawiera opis tabeli. Poniżej podano użycie tego polecenia.
cqlsh:tutorialspoint> describe table emp;
CREATE TABLE tutorialspoint.emp (
emp_id int PRIMARY KEY,
emp_city text,
emp_name text,
emp_phone varint,
emp_sal varint
) WITH bloom_filter_fp_chance = 0.01
AND caching = '{"keys":"ALL", "rows_per_partition":"NONE"}'
AND comment = ''
AND compaction = {'min_threshold': '4', 'class':
'org.apache.cassandra.db.compaction.SizeTieredCompactionStrategy',
'max_threshold': '32'}
AND compression = {'sstable_compression':
'org.apache.cassandra.io.compress.LZ4Compressor'}
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 = '99.0PERCENTILE';
CREATE INDEX emp_emp_sal_idx ON tutorialspoint.emp (emp_sal);
Opisz typ
To polecenie służy do opisywania typu danych zdefiniowanego przez użytkownika. Poniżej podano użycie tego polecenia.
cqlsh:tutorialspoint> describe type card_details;
CREATE TYPE tutorialspoint.card_details (
num int,
pin int,
name text,
cvv int,
phone set<int>,
mail text
);
Opisz typy
To polecenie wyświetla wszystkie typy danych zdefiniowane przez użytkownika. Poniżej podano użycie tego polecenia. Załóżmy, że istnieją dwa typy danych zdefiniowane przez użytkownika:card i card_details.
cqlsh:tutorialspoint> DESCRIBE TYPES;
card_details card
Rozszerzać
To polecenie służy do rozwijania danych wyjściowych. Przed użyciem tego polecenia musisz włączyć polecenie expand. Poniżej podano użycie tego polecenia.
cqlsh:tutorialspoint> expand on;
cqlsh:tutorialspoint> select * from emp;
@ Row 1
-----------+------------
emp_id | 1
emp_city | Hyderabad
emp_name | ram
emp_phone | 9848022338
emp_sal | 50000
@ Row 2
-----------+------------
emp_id | 2
emp_city | Delhi
emp_name | robin
emp_phone | 9848022339
emp_sal | 50000
@ Row 3
-----------+------------
emp_id | 4
emp_city | Pune
emp_name | rajeev
emp_phone | 9848022331
emp_sal | 30000
@ Row 4
-----------+------------
emp_id | 3
emp_city | Chennai
emp_name | rahman
emp_phone | 9848022330
emp_sal | 50000
(4 rows)
Note - Możesz wyłączyć opcję rozwijania za pomocą następującego polecenia.
cqlsh:tutorialspoint> expand off;
Disabled Expanded output.
Wyjście
To polecenie jest używane do zakończenia powłoki cql.
Pokazać
To polecenie wyświetla szczegóły bieżącej sesji cqlsh, takie jak założenia dotyczące wersji Cassandry, hosta lub typu danych. Poniżej podano użycie tego polecenia.
cqlsh:tutorialspoint> show host;
Connected to Test Cluster at 127.0.0.1:9042.
cqlsh:tutorialspoint> show version;
[cqlsh 5.0.1 | Cassandra 2.1.2 | CQL spec 3.2.0 | Native protocol v3]
Źródło
Za pomocą tego polecenia można wykonywać polecenia w pliku. Załóżmy, że nasz plik wejściowy jest następujący -
Następnie możesz uruchomić plik zawierający polecenia, jak pokazano poniżej.
cqlsh:tutorialspoint> source '/home/hadoop/CassandraProgs/inputfile';
emp_id | emp_city | emp_name | emp_phone | emp_sal
--------+-----------+----------+------------+---------
1 | Hyderabad | ram | 9848022338 | 50000
2 | Delhi | robin | 9848022339 | 50000
3 | Pune | rajeev | 9848022331 | 30000
4 | Chennai | rahman | 9848022330 | 50000
(4 rows)