Hbase Scan返回的数据超出范围

时间:2016-12-19 12:20:35

标签: hadoop hbase hbase-shell

我正在使用HBase shell在HBase扫描中使用startRowKey和StopRowKey进行扫描,但我收到的输出超出了传递的范围。请参阅Hbase查询 -

import org.apache.hadoop.hbase.filter.CompareFilter
import org.apache.hadoop.hbase.filter.SingleColumnValueFilter
import org.apache.hadoop.hbase.filter.SubstringComparator
import org.apache.hadoop.hbase.util.Bytes


scan 'TableName',{ LIMIT => 2 , STARTROW => '000|9223370554721275807', STOPROW => '101|9223370554727575807', FILTER => SingleColumnValueFilter.new(Bytes.toBytes('col_family'), Bytes.toBytes('col_qualifier'), CompareFilter::CompareOp.valueOf('EQUAL'), Bytes.toBytes('Some Value')), COLUMNS => 'col_family:col_qualifier', REVERSED => false}

但是收到的是超出这个范围 -

016 | 9223370554960173487

021 | 9223370555154148992

请让我知道我的搜索查询是否正确或可能是什么原因?任何帮助都将非常感激。

由于

1 个答案:

答案 0 :(得分:1)

如果您将问题中提到的四个rowkeys放在一个文件中并对它们进行排序,结果将是:

000|9223370554721275807
016|9223370554960173487
021|9223370555154148992
101|9223370554727575807

因此,您收到的值超出扫描范围。