hbase中过滤器如何多个使用
在hbase中我有两个过滤器,但是需要分开使用,就是先使用一个过滤器之后,需要对过滤器重置,然后使用第二个过滤器,大致代码如下
Filter filter1 = new RowFilter(CompareOp.EQUAL,
new BinaryPrefixComparator("310003000017_02".getBytes()));
// EQUAL =
Filter filter2 = new RowFilter(CompareOp.EQUAL,
new SubstringComparator("G137H"));
Scan s = new Scan();
s.setFilter(filter1);
ResultScanner rs = table.getScanner(s);
for (Result r : rs) {
System.out.println("rowkey:" + new String(r.getRow()));
}
Scan scan = new Scan();
scan.setFilter(filter2);
ResultScanner res = table.getScanner(s);
for (Result r : res) {
System.out.println("rowkey:" + new String(r.getRow()));
}
第一个过滤器的作用是找到310003000017_02开头的行并输出行键,第二个过滤的作用是找到包含G137H的行并输出行键,这两个过滤器需要分别使用。
如果第一次使用了过滤器之后不对过滤器进行重置,那么使用第二个过滤器时出现的结果是不对的,有哪位大神知道如何使用多个过滤器吗