复合键之间的hbase搜索 - java

时间:2013-07-10 19:41:34

标签: java filter hbase

在h base中,我的行键的格式为字符串+日期,例如:abc + 01/03/2013

搜索基于3个参数(字符串,日期,日期):

1。)第一个参数字符串应该与+符号前面的行键匹配,因为我有

Filter rowFilter=new RowFilter(CompareOp.EQUAL, new BinaryPrefixComparator(Bytes.toBytes(ticker)));

因为这是搜索前缀,如果我搜索“ab”,我会得到“ab”和“abc”的结果,这可能是获得完全匹配的条件?

2.)第二参数日期应>然后从行键abc + 01/03/2012中提取行关键日期。

3。)第三参数日期应<&lt;然后从行键abc + 01/03/2012中提取行关键日期。

基本上日期应该只在提供的日期之间。

可能的解决办法是什么?日Thnx

1 个答案:

答案 0 :(得分:0)

尝试使用扫描设置开始行和停止行, 所以,你设置start row = string + timestamp_1,stop row = string + timestamp_2。

如果你需要找到像'string *'+ ts这样的行,那么你需要编写自己的DatePostfixComparator(startTs,endTs)。

第二种情况比第一种情况慢。