基于HBase的模糊查询-like 查询

2019-06-13  本文已影响0人  和平菌

直接上代码

Scan scan = new Scan();
scan.addColumn(FAMILY, QUALIFIER);
scan.setTimeRange(startTime, endTime);
scan.setStartRow(startRow.getBytes());
scan.setStopRow(stopRow.getBytes());

List<Filter> filters = new ArrayList<>();
 Filter prefixFilter = new RowFilter(CompareFilter.CompareOp.EQUAL,new BinaryPrefixComparator(prefix.getBytes()));
filters.add(prefixFilter);

Filter containsFilter = new RowFilter(CompareFilter.CompareOp.EQUAL,new SubstringComparator(endStr));
filters.add(containsFilter);

Filter filterList = new FilterList(FilterList.Operator.MUST_PASS_ALL, filters);
scan.setFilter(filterList);
ResultScanner scanner = table.getScanner(scan);

1、试过PrefixFilter和RegexStringComparator 好像都是查全部数据出来然后再进行Filter 不符合预期

上一篇 下一篇

猜你喜欢

热点阅读