我们希望使用两个QualifierFilters来过滤HBase表的扫描。这意味着我们只想获取表中具有特定列“col_A” 和 (!)特定其他列“col_B”的行。
我们目前的方法如下:
我们目前的方法如下:
FilterList filterList = new FilterList(FilterList.Operator.MUST_PASS_ALL);
Filter filter1 = new QualifierFilter(CompareOp.EQUAL, new BinaryComparator("col_A".getBytes()));
filterList.addFilter(filter1);
Filter filter2 = new QualifierFilter(CompareOp.EQUAL, new BinaryComparator("col_B".getBytes()));
filterList.addFilter(filter2);
Scan scan = new Scan();
scan.setFilter(filterList);
...
未返回此扫描中的任何结果,尽管HBase表中有几行都具有'col_A'和'col_B'列。
<若仅对扫描应用filter1,则一切正常,我们确实可以获取所有具有'col_A'的行。
如果仅对扫描应用filter2,则情况也是如此。我们可以获得所有具有'col_B'的行。
<仅当我们结合这两个过滤器时,才不会获得任何结果。
<获取仅具有col_A AND col_B的表行的正确方法是什么?