我想建立复合过滤器。
我可以做这样的事情
(filter1 and filter2) or filter3
现在我想构建相同的过滤器,但是功能为负数
(**NOT** (filter1 and filter2)) or filter3
我想用Java客户端api(
org.apache.hadoop.hbase.client
)来做 最佳答案
您必须使用FilterList来执行这种条件。
FilterListImplementation of Filter that represents an ordered List of Filters which will be evaluated with a specified boolean operator FilterList.Operator.MUST_PASS_ALL (AND) or FilterList.Operator.MUST_PASS_ONE (OR).
上面显示的AFAIK否定不能直接用FilterList进行。我建议使用SOLR(也可以是弹性搜索)来做到这一点。如果您使用的是Cloudera Solr(Cloudera搜索),则对此很有用。
关于java - HBase不在复合过滤器中,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/41304700/