hbase中有一列,比如Countrys,我想在这列上加前缀(这不是行键(,然后我将使用ColumnPrefixFilter并执行类似的操作
ColumnPrefixFilter columnPrefixFilter = new ColumnPrefixFilter("IND".getBytes());
但我有两个问题:-
- 我没有任何选项来指定列族和名称空间名称,因此它应该只在countries列中搜索
其次,这个过滤器不起作用,没有给出任何响应,而存在具有INDIA值的条目。这些是我用于hbase的依赖项。
<hbase-client.version>2.0.1</hbase-client.version> <hbase-ds.version>0.0.2-SNAPSHOT</hbase-ds.version>
我不知道为什么它不能与ColumnPrefixFilter一起工作,尽管我有一个替代方案可以做这样的事情。
SingleColumnValueFilter filter = new SingleColumnValueFilter(COLUMN_FAMILY_NAME, QUALIFIER_NAME, CompareOperator.EQUAL,
new BinaryPrefixComparator("IND".getBytes()));
它就像一个符咒。不过,如果有人能解释为什么它不适用于ColumnPrefixFilter,我会等待。