过滤器介绍 HBase过滤器是一套为完成一些较高级的需求所提供的API接口。 过滤器也被称为下推判断器(push-down predicates),支持把数据过滤标准从客户端下推到服务器,带有 Filter 条件的 RPC 查询请求会把 Filter 分发到各个 RegionServer,所有的过滤器都在服务端生效,使被过滤掉的数据不会被传送到客户端,这些过滤逻辑在读操作时使用,可以有效降低网络传输的压力。 过滤器组成过滤器主要有过滤器本身、比较器和比较运算符组成。 1. 操作符抽象操作符,也叫比较运算符。 LESS:小于 LESS_OR_EQUAL:小于等于 EQUAL:等于 NOT_EQUAL:不等于 GREATER:大于 GREATER_OR_EQUAL:大于等于 NO_OP:排除一切值
2. 比较器BinaryComparator:二进制比较器,用于按字典顺序比较指定字节数组。 BinaryPrefixComparator:二进制比较器,只比较前缀是否与指定字节数组相同。 NullComparator:控制比较式,判断当前值是不是为null。 BitComparator:位比价器,通过BitwiseOp提供的AND(与)、OR(或)、NOT(非)进行比较。 RegexStringComparator:提供一个正则的比较器,支持正则表达式的值比较,仅支持 EQUAL 和非 EQUAL。 SubstringComparator:判断提供的子串是否出现在value中,并且不区分大小写。
过滤器家族HBase 内置了多种过滤器,这些过滤器或直接或间接都继承于FilterBase抽象类,今天我们先简单看一下其‘家谱’,随后再详细一一介绍。 更多讯息欢迎添加小优:DKA-2018
|