如何在hbase中扫描特定列值?
我不熟悉使用hbase。 我有多个具有属性的列 如何搜索特定属性 在这种情况下,如何使用scan命令如何在hbase中扫描特定列值?,hbase,Hbase,我不熟悉使用hbase。 我有多个具有属性的列 如何搜索特定属性 在这种情况下,如何使用scan命令 扫描“table_name”会给出所有记录。从您的示例中可以看出,您正在谈论使用hbase外壳 在本例中,您可以编写“帮助扫描”,它将通过以下示例解释如何使用该命令: scan 't1', {FILTER => org.apache.hadoop.hbase.filter.ColumnPaginationFilter.new(1, 0)} 你也可以看到这种解释 请注意,hbase在限定符
扫描“table_name”会给出所有记录。从您的示例中可以看出,您正在谈论使用hbase外壳 在本例中,您可以编写“帮助扫描”,它将通过以下示例解释如何使用该命令:
scan 't1', {FILTER => org.apache.hadoop.hbase.filter.ColumnPaginationFilter.new(1, 0)}
你也可以看到这种解释
请注意,hbase在限定符上没有索引,因此不在键上中继的扫描效率不高。通常的方法是记住,键是按字典顺序排列的,并按键的一部分进行搜索。并通过部分键进行扫描。然后,您可以通过限定符进行进一步筛选,但筛选的记录数将更小,因此效果更好。
如果您使用的过滤器很多,也可以考虑设置Bloom Filter的CyrnCub < < /P> ,可以使用
扫描'tablename',{COLUMNS=>'cfamily:cqualifier'} 您可以使用 扫描'tablename',{COLUMNS=>['cf1:cq1','cf2:cq2']}虽然这是一个很老的问题,但我觉得应该更新一下,因为这会帮助其他人得到答案 我也是Hadoop Hbase的初学者,我正在搜索这个答案,发现下面的命令将获取值: Cammand名称:获取
Cammand Details:获取行或单元格内容;传递表名、行和(可选) 列、时间戳和版本的字典。
示例:
hbase> get 'table1', 'row1' --- this will show all column values for row1 of table1
hbase> get 'table1', 'row1', {COLUMN => 'col1'} --- this will show value of column col1 of row1 of table1.
下面的URL对于所有其他Hbase命令都非常有用
谢谢