HBASE 比较器和过滤器

简介: HBASE 比较器和过滤器

比较器:


BinaryComparator  按字节索引顺序比较指定字节数组,采用Bytes.compareTo(byte[])

BinaryPrefixComparator 跟前面相同,只是比较左端的数据是否相同

NullComparator 判断给定的是否为空

BitComparator 按位比较 a BitwiseOp class 做异或,与,并操作

RegexStringComparator 提供一个正则的比较器,仅支持 EQUAL 和非EQUAL


SubstringComparator 判断提供的子串是否出现在table的value中。


比较运算符CompareOp

比较运算符用于定义比较关系,可以有以下几类值供选择:

EQUAL                      相等

GREATER                    大于

GREATER_OR_EQUAL           大于等于

LESS                       小于

LESS_OR_EQUAL              小于等于

NOT_EQUAL                  不等于


过滤器:


行键过滤器 RowFilter


列族过滤器FamilyFilter


列过滤器QualifierFilter


值过滤器ValueFilter


1,ColumnPaginationFilter

列分页过滤器:基于列进行分页,需要设置偏移量与返回数量。


2,ColumnCountGetFilter

列计数过滤器:返回限定数量的列,可以指定需要返回的数量限制。


3,FirstKeyOnlyFilter

首列过滤器:只返回每一行的第一列。



4,FirstKeyValueMatchingQualifiersFilter

首次匹配列过滤器:通过设置一组需要匹配的列,只要匹配到任意一个列就会停止这一行的扫描操作进行下一行的扫描。


5,ColumnPrefixFilter

列前缀过滤器:通常所说的前缀匹配。


6,MultipleColumnPrefixFilter

列多前缀匹配过滤器:在列前缀匹配的基础上增加匹配列。


7,ColumnRangFilter

列范围匹配过滤器:设定列的范围进行匹配


自定义过滤器


做法 : 继承 FilterBase,然后打成 jar 放到 $HBASE_HOEM/lib 目录下去(注意:需要重启 HBase 集群)

写自定义过滤器的时候需要熟悉过滤器的执行流程,不解释 、、、


相关文章
|
分布式数据库 Hbase
【HBase】(十)过滤器2
【HBase】(十)过滤器2
354 0
【HBase】(十)过滤器2
|
分布式数据库 API 索引
【HBase】(十)过滤器1
【HBase】(十)过滤器1
422 0
【HBase】(十)过滤器1
|
Java 分布式数据库 Ruby
HBase Filter 过滤器之 Comparator 原理及源码学习
HBase所有的比较器实现类都继承于父类ByteArrayComparable,而ByteArrayComparable又实现了Comparable接口;不同功能的比较器差别在于对父类compareTo()方法的重写逻辑不同。 下面分别对HBase Filter默认实现的七大比较器一一进行介绍。 1. BinaryComparator 介绍:二进制比较器,用于按字典顺序比较指定字节数组。 先看一个小例子: public class BinaryComparatorDemo { public static void main(String[] args) {
626 0
|
Java Shell 分布式数据库
HBase Filter 过滤器之RowFilter详解
前言:本文详细介绍了HBase RowFilter过滤器Java&Shell API的使用,并贴出了相关示例代码以供参考。RowFilter 基于行键进行过滤,在工作中涉及到需要通过HBase Rowkey进行数据过滤时可以考虑使用它。比较器细节及原理请参照之前的更文:HBase Filter 过滤器之比较器 Comparator 原理及源码学习 一。Java Api 头部代码 public class RowFilterDemo { private static boolean isok = false; private static String tableName
770 0
|
Shell 分布式数据库 API
|
分布式数据库 Hbase Go
hbase过滤器filter及自定义filter
hbase过滤器filter及自定义filter 1.filter源码实现: hbase的filter定义在protobuf中(filter.proto文件)。
2142 0
|
分布式数据库 Hbase API
|
分布式数据库 Hbase
HBase常用过滤器
列值过滤器 SingleColumnValueFilter filter = new SingleColumnValueFilter( Bytes.
1326 0
|
9月前
|
分布式计算 Ubuntu Hadoop
Ubuntu22.04下搭建Hadoop3.3.6+Hbase2.5.6+Phoenix5.1.3开发环境的指南
呈上,这些步骤如诗如画,但有效且动人。仿佛一个画家在画布上描绘出一幅完美的画面,这就是你的开发环境。接下来,尽情去创造吧,祝编程愉快!
687 19