`

Hbase filter 执行顺序

 
阅读更多

1. public boolean filterRowKey(byte[] buffer, int offset, int length) 

    基于行键执行过滤  如果行需要被过滤掉 返回true ,否则 需要发送给客户端则返回false 

2. 如果该行 没有在上一步被过滤掉,接着调用 这个方法处理当前行的每个KeyValue对象

     public ReturnCode filterKeyValue(Cell ignored)  返回一个 ReturnCode 用于判断该KeyValue对象将要发生      什么

3. public void filterRowCells(List<Cell> ignored) 该方法被传入成功通过过滤的KeyValue 对象列表,倘若这个      方法访问到这个列表,此时你可以在列表里的元素上执行任何转换或运算

4. 如果你选择过滤掉某些行, public boolean filterRow()  这个方法再一次提供了机会  返回true 将过滤掉正在       计算的行

5.  可以在过滤器里构建逻辑来提早停止一次扫描,把逻辑放入到这个方法里

    public boolean filterAllRemaining()  当扫描很多行,在行键,列限定符或单元值 里查找指定的东西时,一旦找到目标,就不需要关心剩下的行了,这个时候使用这个方法很方便,这是过滤流程中最后调用的方法。

 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics