Кассандра - Команды оболочки
Cassandra предоставляет документированные команды оболочки в дополнение к командам CQL. Ниже приведены документированные команды оболочки Cassandra.
Помогите
Команда HELP отображает синопсис и краткое описание всех команд cqlsh. Ниже приводится использование команды справки.
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
Захватить
Эта команда фиксирует вывод команды и добавляет его в файл. Например, взгляните на следующий код, который записывает вывод в файл с именемOutputfile.
cqlsh> CAPTURE '/home/hadoop/CassandraProgs/Outputfile'
Когда мы вводим любую команду в терминале, вывод будет захвачен указанным файлом. Ниже приводится используемая команда и снимок выходного файла.
cqlsh:tutorialspoint> select * from emp;
Вы можете отключить захват с помощью следующей команды.
cqlsh:tutorialspoint> capture off;
Последовательность
Эта команда показывает текущий уровень согласованности или устанавливает новый уровень согласованности.
cqlsh:tutorialspoint> CONSISTENCY
Current consistency level is 1.
Копировать
Эта команда копирует данные в и из Cassandra в файл. Ниже приведен пример копирования таблицы с именемemp в файл myfile.
cqlsh:tutorialspoint> COPY emp (emp_id, emp_city, emp_name, emp_phone,emp_sal) TO ‘myfile’;
4 rows exported in 0.034 seconds.
Если вы откроете и проверите указанный файл, вы сможете найти скопированные данные, как показано ниже.
Опишите
Эта команда описывает текущий кластер Cassandra и его объекты. Ниже описаны варианты этой команды.
Describe cluster - Эта команда предоставляет информацию о кластере.
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- Эта команда выводит список всех пространств ключей в кластере. Ниже приводится использование этой команды.
cqlsh:tutorialspoint> describe keyspaces;
system_traces system tp tutorialspoint
Describe tables- Эта команда выводит список всех таблиц в пространстве ключей. Ниже приводится использование этой команды.
cqlsh:tutorialspoint> describe tables;
emp
Describe table- Эта команда предоставляет описание таблицы. Ниже приводится использование этой команды.
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);
Опишите тип
Эта команда используется для описания пользовательского типа данных. Ниже приводится использование этой команды.
cqlsh:tutorialspoint> describe type card_details;
CREATE TYPE tutorialspoint.card_details (
num int,
pin int,
name text,
cvv int,
phone set<int>,
mail text
);
Описать типы
Эта команда выводит список всех типов данных, определенных пользователем. Ниже приводится использование этой команды. Предположим, есть два типа данных, определяемых пользователем:card и card_details.
cqlsh:tutorialspoint> DESCRIBE TYPES;
card_details card
Развернуть
Эта команда используется для расширения вывода. Перед использованием этой команды вы должны включить команду расширения. Ниже приводится использование этой команды.
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 - Вы можете отключить опцию раскрытия с помощью следующей команды.
cqlsh:tutorialspoint> expand off;
Disabled Expanded output.
Выход
Эта команда используется для завершения оболочки cql.
Показать
Эта команда отображает детали текущего сеанса cqlsh, такие как версия Cassandra, хост или предположения о типе данных. Ниже приводится использование этой команды.
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]
Источник
Используя эту команду, вы можете выполнять команды в файле. Предположим, наш входной файл выглядит следующим образом -
Затем вы можете выполнить файл, содержащий команды, как показано ниже.
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)