HBase prefixFilter与startRow和PageFilter一起使用

时间:2018-11-18 08:04:23

标签: java hbase row-key

在Hbase中,我有这样的行键:userId:timestamp:objectId。 我正在尝试创建这样的方法:

public List<Object> getObjectList(String userId, String startrowA, int limit) 

我想获取带有前缀userId的记录,并且还具有分页(startrow + limit)。

那么我如何使用prefixFilter,pageFilter做到这一点?谢谢

1 个答案:

答案 0 :(得分:0)

如果我正确理解了您的问题,则可以尝试使用FilterList类,并向其中添加一些过滤器,这些过滤器将共同使您实现所需的目标。尝试将以下过滤器添加到FilterList

KeyOnlyFilter():仅扫描行,而不扫描列(以使其更快)

FirstKeyOnlyFilter():与上述相同,请同时使用两者

PrefixFilter(prefix):这是您的前缀

PageFilter(N):仅返回N行

此外,请确保设置正确的条件设置(即是否应满足所有这些条件或其中某些条件)。要使他们全部见面,请使用FilterList.Operator.MUST_PASS_ALL