【发布时间】:2014-01-31 05:31:18
【问题描述】:
我正在寻找一个从 HBase Shell 中描述表内列族的命令。我无法得到任何命令来尝试这个。
【问题讨论】:
标签: hbase
我正在寻找一个从 HBase Shell 中描述表内列族的命令。我无法得到任何命令来尝试这个。
【问题讨论】:
标签: hbase
如果您使用来自hbase shell 的describe 命令
您将获得每个列族的信息。
目前,无法过滤单个家庭。
例子:
hbase(main):003:0> describe 'TABLE_NAME'
'TABLE_NAME',
{NAME => 'FAMILY_NAME',
DATA_BLOCK_ENCODING => 'NONE',
BLOOMFILTER => 'ROW',
REPLICATION_ true
SCOPE => '0',
VERSIONS => '1',
COMPRESSION => 'NONE',
MIN_VERSIONS => '0', TTL => '2147483647',
KEEP_DELETED_CELLS => 'false',
BLOCKSIZE => '65536',
IN_MEMORY => 'false',
BLOCKCACHE => 'true'
}
【讨论】:
没有描述Hbase列族的命令(可以显示列限定符),但是我用的是Hue Hbase Browser,它有一个smartview,可以显示一个列族的列限定符。
(不能显示列族的所有列限定符(如describe),但可以显示所有列限定符的记录,这有助于我理解CF)(总比没有好)。
您可以参考此链接了解更多信息:http://gethue.com/the-web-ui-for-hbase-hbase-browser/。
注意: 这是一个示例页面截图,显示了列族(“p”)的列限定符
如果这没有帮助,您可以编写一个快乐脚本来显示给定列族的所有列限定符,或者您可以使用 API。
getFamilyMap public NavigableMap getFamilyMap(byte[] 家庭)
限定符到值的映射。返回表单的 Map: 地图
参数:
family - 要获取的列族
返回:限定符到值的映射
最近我写了一个Java程序来显示一个hbase表的列族和列限定符。请记住,此程序将执行全表扫描并分析每个单元格,以获取限定符名称。对于较大的表可能需要更长的时间。
【讨论】:
我找到了这个答案并对其进行了一些修改:
it list all column family for each Cqualifier
echo "scan 'yourTable', {'LIMIT' => 1} " | $HBASE_HOME/bin/hbase shell | awk -F'=' '{print $2}' | awk -F ':' '{print $1}'|awk -F ',' '{print $1}'
【讨论】: