如果我有行键
a_c b_c j_f f_d d_c
我应该让所有的行都匹配c。如何在此处设置开始和停止行键。我试图得到扫描结果的开始和停止行键,而不是与rowfilter或其他过滤器类型。
93ze6v8z1#
可以使用hbase startrow和endrow筛选器。它基本上扫描rowkey范围(endrow除外)之间的数据。
scan 'table_name', {STARTROW=>"<start_row_key>", ENDROW=>"<end_row_key>"}
rta7y2nd2#
如果不想使用,可以编写自己的过滤函数 RowFilter . 但是如果你不能编写自己的过滤函数,并且不想使用prefixfilter,我建议你使用prefixfilter RowFilter java示例:
RowFilter
byte[] prefixF= Bytes.toBytes("_c"); Scan scan = new Scan(prefixF)); PrefixFilter prefixFilter = new PrefixFilter(prefixF); scan.addFilter(prefixFilter); ResultScanner resultScanner = table.getScanner(scan);
以上代码等于 hbase> scan 'YourTablename', { FILTER => "PrefixFilter('_c')"}
hbase> scan 'YourTablename', { FILTER => "PrefixFilter('_c')"}
2条答案
按热度按时间93ze6v8z1#
可以使用hbase startrow和endrow筛选器。它基本上扫描rowkey范围(endrow除外)之间的数据。
rta7y2nd2#
如果不想使用,可以编写自己的过滤函数
RowFilter
. 但是如果你不能编写自己的过滤函数,并且不想使用prefixfilter,我建议你使用prefixfilterRowFilter
java示例:以上代码等于
hbase> scan 'YourTablename', { FILTER => "PrefixFilter('_c')"}