Вопросы о команде HBase Shell

У меня есть несколько вопросов о командном инструменте оболочки HBase:

1: How to list all column family names (just names!) in a table?
2: How to count the number of rows in a column family?

person user2597504    schedule 16.09.2013    source источник


Ответы (3)


1: Как перечислить все имена семейств столбцов (только имена!) в таблице?

Невозможно OOTB. Но вы могли бы сделать что-то вроде этого:

echo "scan 'table'" | bin/hbase shell | awk -F'=' '{print $2}' | awk -F ':' '{print $1}'

2. Как подсчитать количество строк в семействе столбцов?

Что вы имеете в виду под этим? Вы собираетесь спросить, как подсчитать количество семейств столбцов в строках? Если это то, что вам нужно, попробуйте следующее:

echo "scan 'table'" | bin/hbase shell | grep cf | wc -l
person Tariq    schedule 16.09.2013
comment
Для Q2: я хочу подсчитать, сколько строк содержится в семействе столбцов. - person user2597504; 17.09.2013

Используйте describe, он покажет семейства столбцов как NAME=> 'columnfamilyname'

person ny0    schedule 13.05.2015

У меня есть сценарий listColumns, основанный на ответе Тарика, который ограничивает сканирование (потому что я хотел бы, чтобы оно завершилось при моей жизни).

echo "scan '$1', LIMIT => 1" | hbase shell | awk '{print $2}' | grep column | sort | uniq | awk -F = '{print $2} '

Очевидно, вы рискуете, что строки будут иметь разные столбцы.

person Jon Strayer    schedule 12.06.2014