文档章节

HBase Filter使用方法

z
 zongze30
发布于 2015/01/30 14:23
字数 327
阅读 142
收藏 0

这几年hadoop实在是比较火,但是相信随着时间的推移,肯定会慢慢降温,hadoop之后将会有哪些技术火起来呢,我们拭目以待吧。

一、FilterList

1
2
3
  // 通过将operator参数设置为Operator.MUST_PASS_ONE,达到list中各filter为"或"的关系   or
  // 默认operator参数的值为Operator.MUST_PASS_ALL,即list中各filter为"并"的关系       and
     FilterList f= new  FilterList(FilterList.Operator.MUST_PASS_ONE);


二、几大Filter

1、Comparision Filters

      1.1 RowFilter    

1.2 FamilyFilter

      1.3 QualifierFilter     

      1.4 ValueFilter

      1.5 DependentColumnFilter ×

2、Dedicated Filters

      2.1 SingleColumnValueFilter ×

      2.2 SingleColumnValueExcludeFilter ×

      2.3 PrefixFilter ×

      2.4 PageFilter ×

      2.5 KeyOnlyFilter ×

      2.6 FirstKeyOnlyFilter ×

      2.7 TimestampsFilter ×

      2.8 RandomRowFilter ×

3、Decorating Filters

      3.1 SkipFilter ×

      3.2 WhileMatchFilters ×






1.1   RowFilter  

格式:RowFilter(CompareFilter.CompareOp rowCompareOp, ByteArrayComparable rowComparator)


参数一  Operator Description


LESS 小于

LESS_OR_EQUAL 小于等于

EQUAL 等于

NOT_EQUAL 不等于

GREATER_OR_EQUAL 大于等于

GREATER 大于

NO_OP 排除所有


参数二  ByteArrayComparable  可用

BinaryComparator, BinaryPrefixComparator, BitComparator, LongComparator, NullComparator, RegexStringComparator, SubstringComparator


例子:Filter filter=new RowFilter(CompareOp.EQUAL, new BinaryComparator(Bytes.toBytes(RowKey))


相关的过滤方法使用:

提取rowkey以01结尾数据--正则表达式

Filter filter = new RowFilter(CompareFilter.CompareOp.EQUAL,new RegexStringComparator(".*01$"));


提取rowkey以包含201407的数据

Filter filter = new RowFilter(CompareFilter.CompareOp.EQUAL,new SubstringComparator("201407"));



提取rowkey以123开头的数据

Filter filter = new RowFilter(CompareFilter.CompareOp.EQUAL,new BinaryPrefixComparator("123".getBytes()));


提取rowkey小于等于row010的行

Filter filter1 = new RowFilter(CompareFilter.CompareOp.LESS_OR_EQUAL,new BinaryComparator("row010".getBytes()));

 1.2   FamilyFilter(同上)

1.3   QualifierFilter(同上)--------当列为数字,不管用了?why--------

1.4   ValueFilter(同上)

1.5   DependentColumnFilter    


© 著作权归作者所有

共有 人打赏支持
z
粉丝 0
博文 7
码字总数 1170
作品 0
石家庄
HBase shell的基本用法

hbase提供了一个shell的终端给用户交互。使用命令hbaseshell进入命令界面。通过执行 help可以看到命令的帮助信息。 以网上的一个学生成绩表的例子来演示hbase的用法。 name grad course mat...

超人学院
2015/05/27
0
0
基于solr实现hbase的二级索引

基于solr实现hbase的二级索引 [X] 目的: 由于hbase基于行健有序存储,在查询时使用行健十分高效,然后想要实现关系型数据库那样可以随意组合的、、等就比较麻烦了。想要实现这样的功能,我们可...

白石
2015/01/16
0
7
云HBaseSQL及分析-Phoenix&Spark

在2018年1月的数据库直播大讲堂峰会HBase专场,来自阿里云的研发工程师瑾谦和沐远分享了云HBaseSQL以及分析Phoenix&Spark。本文介绍了详细了Phoinix和Spark的架构,适用性以及优缺点,并在最...

HBase技术社区
06/05
0
0
Hbase 学习(二)补充 自定义filter

本来这个内容是不单独讲的,但是因为上一个页面太大,导致Live Writer死机了,不能继续编辑了,所以就放弃了 这里要讲的是自定义filter,从FilterBase继承 public class CustomFilter extend...

2k10
2015/05/11
0
0
2018-08-15期 HBase命令行使用案例

1、进入hbase命令行 [root@hadoop-server01 bin]# hbase shell 2、命令行帮助 COMMAND GROUPS: Group name: general Commands: status, table_help, version, whoami Group name: ddl Comman......

JackmaSong
08/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

go语言学习总结

一、描述 go语言是直接将源码编译成二进制机器码的语言;它支持面向对象、也支持函数式编程;支持并发很容易; 二、基本语法学习路径 https://studygolang.com/subject/2...

盼望明天
28分钟前
2
0
JSP 九大内置对象及其作用域

JSP 中一共预先定义了 9 个这样的对象,分别为:request、response、session、application、out、pagecontext、config、page、exception ,下面就简单介绍下。 1、request 对象 request 对象...

几个栗子
39分钟前
1
0
Java中的坑之方括号

Java中的坑之方括号 这一段时间,在做项目的时候,发现了一个坑,这个坑说大不大,说小不小,不知道的足够喝一壶,知道的就可以轻松解决。 问题描述 在做数据统计的时候,遇见了如下形式的数...

星汉
49分钟前
2
0
[雪峰磁针石博客]python机器学习、web开发等书籍汇总

Building Machine Learning Systems with Python Third Edition - 2018.pdf 下载地址 Get more from your data by creating practical machine learning systems with Python Key Features ......

python测试开发人工智能安全
今天
1
0
文件的压缩与解压(linux)

Linux下*.tar.gz文件解压缩命令 1.压缩命令:   命令格式:tar -zcvf 压缩后文件名.tar.gz 被压缩文件名 可先切换到当前目录下。压缩文件名和被压缩文件名都可加入路径。 2.解压缩命令: ...

qimh
今天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部