scan的filter使用】的更多相关文章

本次操作的hbase的t1表的数据是: hbase(main)::> scan 't1' ROW COLUMN+CELL column=f1:age, timestamp=, value= column=f1:gender, timestamp=, value=male column=f1:name, timestamp=, value=zhangsan column=f1:name, timestamp=, value=lisi column=f1:name, timestamp=, valu…
学习HBase一段时间后,我认为HBase中比较常用,同时也是必须掌握的两个API是Scan和Filter.如下是我的理解: 1.Scan  ---- 扫描类 作用:用来对一个指定Table进行按行扫描,从而得到属于[起始行健,终止行健)的扫描结果 使用场合:单纯的扫描用途:用于MapReduce计算的输入 2.Filter --- 过滤类 作用:用来提前在Server端,对要返回的数据,按照定义好的要求进行过滤:从而降低从Server到Client的数据量,进而降低对网络IO的影响 使用场合:…
创建表 create 'test1', 'lf', 'sf' lf: column family of LONG values (binary value) -- sf: column family of STRING values 导入数据 put 'test1', 'user1|ts1', 'sf:c1', 'sku1' put 'test1', 'user1|ts2', 'sf:c1', 'sku188' put 'test1', 'user1|ts3', 'sf:s1', 'sku123…
一.shell 查询 hbase 查询相当简单,提供了get和scan两种方式,也不存在多表联合查询的问题.复杂查询需通过hive创建相应外部表,用sql语句自动生成mapreduce进行.但是这种简单,有时为了达到目的,也不是那么顺手.至少和sql查询方式相差较大. hbase 提供了很多过滤器,可对行键,列,值进行过滤.过滤方式可以是子串,二进制,前缀,正则比较等.条件可以是AND,OR等 组合.所以通过过滤,还是能满足需求,找到正确的结果的. 1.1 过滤器类型 HBase 最新官方文档中…
说明: 本文參考官方Ref Guide,Developer API和众多博客.并结合实測代码编写.具体总结HBase的Filter功能,并附上每类Filter的对应代码实现. 本文尽量遵从Ref Guide中"9.4. Client Request Filters"的行文顺序,便于读者对照查看,但内容比官方文档更加详实. ***2014年7月18日更新.新增PageFilter和SkipFilter. *** 欢迎转载,请注明来源: http://blog.csdn.net/u0109…
HBASE过滤器介绍: 所有的过滤器都在服务端生效,叫做谓语下推(predicate push down),这样可以保证被过滤掉的数据不会被传送到客户端. 注意:        基于字符串的比较器,如RegexStringComparator和SubstringComparator,比基于字节的比较器更慢,更消耗资源.因为每次比较时它们都需要将给定的值转化为String.截取字符串子串和正则式的处理也需要花费额外的时间. 过滤器本来的目的是为了筛掉无用的信息,所有基于CompareFilter的…
说明: 本文参考官方Ref Guide,Developer API和众多博客,并结合实测代码编写,详细总结HBase的Filter功能,并附上每类Filter的相应代码实现. 本文尽量遵从Ref Guide中"9.4. Client Request Filters"的行文顺序,便于读者对比查看,但内容比官方文档更加详实.   ***2014年7月18日更新,新增PageFilter和SkipFilter.***     目录: 引言 -- 参数基础 1. 结构(Structural)过…
http://www.cnblogs.com/skyl/p/4807793.html 比较运算符 CompareFilter.CompareOp比较运算符用于定义比较关系,可以有以下几类值供选择: EQUAL 相等 GREATER 大于 GREATER_OR_EQUAL 大于等于 LESS 小于 LESS_OR_EQUAL 小于等于 NOT_EQUAL 不等于 比较器 ByteArrayComparable通过比较器可以实现多样化目标匹配效果,比较器有以下子类可以使用: BinaryCompar…
public static void main(String[] args) throws IOException { //Scan类常用方法说明 //指定需要的family或column ,如果没有调用任何addFamily或Column,会返回所有的columns: // scan.addFamily(); // scan.addColumn(); // scan.setMaxVersions(); //指定最大的版本个数.如果不带任何参数调用setMaxVersions,表示取所有的版本.…
比较器: 前面例子中的regexstring:2014-11-08.*.binary:\x00\x00\x00\x05,这都是比较器.HBase的filter有四种比较器: (1)二进制比较器:如’binary:abc’,按字典排序跟’abc’进行比较 (2)二进制前缀比较器:如’binaryprefix:abc’,按字典顺序只跟’abc’比较前3个字符 (3)正则表达式比较器:如’regexstring:ab*yz’,按正则表达式匹配以ab开头,以yz结尾的值.这个比较器只能使用=.!=两个比…