Команды HBase shell

В данной статье описаны основные команды, доступные в HBase shell.

General commands

Команды общего назначения, включающие отображение информации о текущем кластере и пользователе, получение справки и так далее.

Команда Описание

status

Отображает статус HBase-кластера

table_help

Выводит справочную информацию для таких операций, как scan, put, get, disable, drop и так далее

whoami

Отображает подробную информацию о текущем пользователе

version

Отображает версию HBase

processlist

Отображает задачи Region Servers

Data definition commands (DDL)

Команды, которые используются для создания схем таблиц и работы с ними.

Команда Описание

create

Создает новую таблицу

describe

Отображает схему таблицы

list

Отображает таблицы, соответствующие заданному регулярному выражению

exists

Проверяет существование таблицы

locate_region

Находит регион по заданному имени таблицы и ключу строки

list_regions

Возвращает все регионы для конкретной таблицы

alter

Позволяет добавлять/изменять/удалять семейства столбцов и изменять конфигурацию таблицы

alter_async

Выполняет то же, что и команда alter, но не ждет, пока все регионы получат изменения схемы

alter_status

Получает статус команды alter

disable

Делает таблицу недоступной

disable_all

Делает недоступными таблицы, соответствующие заданному регулярному выражению

is_disabled

Проверяет, недоступна ли таблица

enable

Делает доступной таблицу, которая в данный момент может быть отключена

enable_all

Делает доступными таблицы, соответствующие заданному регулярному выражению

is_enabled

Проверяет, доступна ли таблица

get_table

Возвращает данную таблицу как объект, которым может манипулировать пользователь

drop

Удаляет таблицу навсегда

drop_all

Удаляет все таблицы, соответствующие данному регулярному выражению

show_filters

Выводит все фильтры в HBase

Namespace commands

Команды, позволяющие работать с пространствами имен — логическими группами таблиц.

Команда Описание

create_namespace

Создает новое пространство имен

describe_namespace

Возвращает описание пространства имен

list_namespace

Возвращает список пространств имен — все или соответствующие заданному регулярному выражению

list_namespace_tables

Возвращает таблицы, включенные в пространство имен

alter_namespace

Изменяет пространство имен

drop_namespace

Удаляет пространство имен

Data manipulation commands (DML)

Команды, которые полезны для работы с данными, хранящимися в таблицах HBase: чтение, запись, удаление и так далее.

Команда Описание

put

Вставляет значение ячейки для указанных таблицы/строки/столбца и, при необходимости, временной метки

append

Добавляет постфикс к значению ячейки для указанных таблицы/строки/столбца

incr

Увеличивает значение ячейки для указанных таблицы/строки/столбца

get_counter

Возвращает значение счетчика ячейки для указанных таблицы/строки/столбца

get

Извлекает содержимое строки/ячейки

scan

Сканирует таблицу и возвращает все строки, соответствующие заданным спецификациям

count

Возвращает количество строк в таблице

delete

Удаляет значение ячейки для указанных таблицы/строки/столбца и, при необходимости, временной метки

deleteall

Удаляет все ячейки в указанной строке

truncate

Отключает, удаляет и воссоздает указанную таблицу

truncate_preserve

Отключает, удаляет и воссоздает указанную таблицу, сохраняя прежние границы региона

get_splits

Возвращает точки разделения для данной таблицы

Tools commands

Команды, предназначенные для экспертов. Они помогают выполнять операции с регионами, такие как: разделение (split), слияние, сжатие (compaction) и так далее. Используйте их осторожно.

Команда Описание

assign

Назначает регион

unassign

Отменяет назначение региона

close_region

Команда устарела. Вместо этого используйте unassign

compact

Выполняет compaction-процедуру для определенных таблицы/региона/семейства столбцов

compact_rs

Сжимает все регионы в пределах определенного Region Server

major_compact

Выполняет major compaction для определенных таблицы/региона/семейства столбцов

compaction_state

Получает статус сжатия таблицы

splitormerge_enabled

Проверяет, разрешены ли операции split или merge

splitormerge_switch

Включает/отключает операции split или merge

merge_region

Объединяет два региона

split

Разделяет всю таблицу или указанный регион

move

Перемещает регион

flush

Сбрасывает все регионы для таблицы/Region Server или все регионы с указанным именем

wal_roll

Обновляет WAL-writer

list_deadservers

Возвращает список всех отключенных (dead) Region Servers

clear_deadservers

Очищает все/указанные отключенные Region Servers

clear_block_cache

Удаляет блоки указанной таблицы из BlockCache

clear_compaction_queues

Очищает очереди сжатия в Region Server

balance_switch

Включает/отключает балансировщик кластера

balancer_enabled

Проверяет состояние балансировщика

balancer

Запускает балансировщик кластера

catalogjanitor_switch

Включает/отключает CatalogJanitor

catalogjanitor_enabled

Проверяет состояние CatalogJanitor

catalogjanitor_run

Запускает CatalogJanitor

cleaner_chore_switch

Включает/отключает работу Cleaner chore

cleaner_chore_enabled

Проверяет состояние Cleaner chore

cleaner_chore_run

Запускает работу Cleaner chore

normalizer_switch

Включает/отключает Region Normalizer

normalizer_enabled

Проверяет состояние Region Normalizer

normalize

Запускает Region Normalizer

is_in_maintenance_mode

Проверяет, находится ли Мастер в режиме обслуживания

zk_dump

Выводит состояние дампа кластера HBase, как его видит ZooKeeper

trace

Запускает/останавливает/проверяет трассировку через HTrace

Replication commands

Команды, используемые для настройки репликации.

Команда Описание

add_peer

Добавляет отношение репликации (peer)

append_peer_namespaces

Добавляет реплицируемые пространства имен к отношению репликации

append_peer_tableCFs

Добавляет реплицируемые таблицы/семейства столбцов к отношению репликации

set_peer_namespaces

Устанавливает все реплицируемые пространства имен для отношения репликации

set_peer_tableCFs

Устанавливает все реплицируемые таблицы/семейства столбцов для отношения репликации

set_peer_bandwidth

Устанавливает исходную пропускную способность для отношения (peer) репликации (для Region Server)

set_peer_replicate_all

Устанавливает флаг REPLICATE_ALL для отношения репликации

set_peer_exclude_namespaces

Устанавливает нереплицируемые пространства имен для отношения репликации

set_peer_exclude_tableCFs

Устанавливает нереплицируемые таблицы/семейства столбцов для отношения репликации

disable_table_replication

Отключает репликацию для всех семейств столбцов таблицы

enable_table_replication

Включает репликацию для всех семейств столбцов таблицы

disable_peer

Делает недоступным отношение репликации (peer)

enable_peer

Делает доступным ранее отключенное отношение репликации (peer)

get_peer_config

Перечисляет параметры конфигурации отношения репликации

update_peer_config

Обновляет параметры конфигурации отношения репликации

list_peer_configs

Перечисляет параметры конфигурации всех отношений репликации

list_peers

Возвращает список всех отношений репликации (peers)

list_replicated_tables

Возвращает список всех таблиц и семейств столбцов, реплицированных из кластера

show_peer_tableCFs

Выводит реплицируемые таблицы/семейства столбцов для отношения репликации

remove_peer_namespaces

Удаляет пространства имен из конфигурации отношения репликации

remove_peer_tableCFs

Удаляет таблицы/семейства столбцов из конфигурации отношения репликации

remove_peer

Отключает и удаляет отношение репликации

Snapshots commands

Команды, позволяющие работать со снепшотами таблицы.

Команда Описание

snapshot

Делает снепшот указанной таблицы

list_snapshots

Возвращает список снепшотов — всех или соответствующих заданному регулярному выражению

list_table_snapshots

Возвращает снепшоты указанной таблицы

restore_snapshot

Восстанавливает указанный снепшот

clone_snapshot

Создает новую таблицу путем клонирования указанного снепшота

delete_snapshot

Удаляет снепшот с указанным именем

delete_all_snapshot

Удаляет все снепшоты с именем, соответствующим заданному регулярному выражению

delete_table_snapshots

Удаляет снепшоты указанной таблицы

Configuration commands

Команды, которые используются для перезагрузки параметров конфигурации без перезапуска кластера. Набор параметров конфигурации, которые в данный момент могут быть изменены командами этой группы, ограничен. Более детальная информация доступна в документации HBase.

Команда Описание

update_all_config

Перезагружает подмножество параметров конфигурации на всех серверах кластера

update_config

Перезагружает подмножество параметров конфигурации на определенных серверах кластера

Quotas commands

Команды, которые используются для работы с квотами (quotas) — ресурсными и другими ограничениями, применяемыми к объектам базы данных.

Прежде чем использовать команды из этой группы, добавьте следующее свойство в hbase-site.xml и перезапустите свой кластер.

Конфигурация
<property>
   <name>hbase.quota.enabled</name>
   <value>true</value>
</property>
Команда Описание

set_quota

Устанавливает новую квоту для определенного пользователя/таблицы/пространства имен

list_quotas

Возвращает квоты, добавленные в HBase — все или соответствующие заданному регулярному выражению

list_quota_table_sizes

Возвращает вычисленный размер каждой таблицы в кластере

list_quota_snapshots

Возвращает информацию о таблицах с определенными квотами по размеру

list_snapshot_sizes

Возвращает размер снепшотов, сделанных для таблиц с заданными квотами по размеру

Security commands

Команды, полезные для настройки безопасности.

Прежде чем использовать команды из этой группы, добавьте следующие свойства в hbase-site.xml и перезапустите свой кластер. Если свойства hbase.coprocessor.master.classes или hbase.coprocessor.region.classes уже имеют другие значения, используйте списки, разделенные запятыми, чтобы сохранить для них несколько значений.

Конфигурация
<property>
   <name>hbase.coprocessor.master.classes</name>
   <value>org.apache.hadoop.hbase.security.access.AccessController</value>
</property>
<property>
   <name>hbase.coprocessor.region.classes</name>
   <value>org.apache.hadoop.hbase.security.access.AccessController</value>
</property>
<property>
   <name>hbase.rpc.engine</name>
   <value>org.apache.hadoop.hbase.ipc.SecureRpcEngine</value>
</property>
<property>
   <name>hbase.security.authorization</name>
   <value>true</value>
</property>
Команда Описание

grant

Предоставляет пользователю определенные права

list_security_capabilities

Возвращает поддерживаемые возможности безопасности

revoke

Отзывает права доступа пользователя

user_permission

Возвращает разрешения для указанного пользователя

Procedures commands

Команды, которые используются для работы с процедурами HBase.

Команда Описание

list_procedures

Возвращает все процедуры в HBase

abort_procedure

Прерывает выполнение процедуры с указанным ID

list_locks

Возвращает все блокировки (locks) в HBase

Visibility labels commands

Команды, используемые для управления метками видимости (visibility labels), которые позволяют пользователям, связанным с данной меткой, читать или получать доступ к ячейкам с этой меткой.

Прежде чем использовать команды из этой группы, добавьте следующие свойства в hbase-site.xml и перезапустите свой кластер. Если свойства hbase.coprocessor.master.classes или hbase.coprocessor.region.classes уже имеют другие значения, используйте списки, разделенные запятыми, чтобы сохранить для них несколько значений.

Конфигурация
<property>
   <name>hbase.coprocessor.master.classes</name>
   <value>org.apache.hadoop.hbase.security.visibility.VisibilityController</value>
</property>
<property>
   <name>hbase.coprocessor.region.classes</name>
   <value>org.apache.hadoop.hbase.security.visibility.VisibilityController</value>
</property>
<property>
   <name>hbase.security.authorization</name>
   <value>true</value>
</property>
<property>
   <name>hfile.format.version</name>
   <value>3</value>
</property>
Команда Описание

add_labels

Добавляет набор меток видимости

list_labels

Возвращает список доступных меток видимости

set_auths

Назначает набор меток видимости определенному пользователю или группе

get_auths

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

clear_auths

Очищает метки видимости, назначенные определенному пользователю или группе

set_visibility

Определяет выражение видимости для одной или нескольких существующих ячеек таблицы

Rsgroup commands

Команды, позволяющие управлять Region Server-группами  — логическими объединениями Region Server. Каждая группа при необходимости может монтировать разные таблицы. Таким образом, каждая группа эквивалентна логическому подкластеру. Это помогает добиться изоляции ресурсов и снизить затраты на управление. Группа Region Server по умолчанию называется default.

Прежде чем использовать команды из этой группы, добавьте следующие свойства в hbase-site.xml и перезапустите свой кластер. Если свойства hbase.coprocessor.master.classes или hbase.coprocessor.region.classes уже имеют другие значения, используйте списки, разделенные запятыми, чтобы сохранить для них несколько значений.

Конфигурация
<property>
   <name>hbase.coprocessor.master.classes</name>
   <value>org.apache.hadoop.hbase.rsgroup.RSGroupAdminEndpoint</value>
</property>
<property>
   <name>hbase.master.loadbalancer.class</name>
   <value>org.apache.hadoop.hbase.rsgroup.RSGroupBasedLoadBalancer</value>
</property>
Команда Описание

add_rsgroup

Создает новую группу Region Server

list_rsgroups

Возвращает все группы Region Server

move_servers_rsgroup

Назначает указанные серверы в указанную группу Region Server

move_tables_rsgroup

Назначает таблицы в указанную группу Region Server

move_servers_tables_rsgroup

Назначает указанные серверы и таблицы в указанную группу Region Server

move_namespaces_rsgroup

Назначает заданные пространства имен в указанную группу Region Server

move_servers_namespaces_rsgroup

Назначает указанные серверы и пространства имен в группу Region Server

balance_rsgroup

Выполняет балансировку группы Region Server

get_rsgroup

Возвращает информацию о группе Region Server

get_server_rsgroup

Получает имя группы, членом которой является данный Region Server

get_table_rsgroup

Получает имя группы, членом которой является данная таблица

remove_servers_rsgroup

Удаляет выведенные из эксплуатации серверы из группы Region Server

remove_rsgroup

Удаляет Region Server-группу

Нашли ошибку? Выделите текст и нажмите Ctrl+Enter чтобы сообщить о ней