Hbase之过滤器的使用】的更多相关文章

过滤器查询 引言:过滤器的类型很多,但是可以分为两大类——比较过滤器,专用过滤器 过滤器的作用是在服务端判断数据是否满足条件,然后只将满足条件的数据返回给客户端: hbase过滤器的比较运算符: LESS  < LESS_OR_EQUAL <= EQUAL = NOT_EQUAL <> GREATER_OR_EQUAL >= GREATER > NO_OP 排除所有 Hbase过滤器的比较器(指定比较机制): BinaryComparator  按字节索引顺序比较指定字…
博文作者:那伊抹微笑 csdn 博客地址:http://blog.csdn.net/u012185296 itdog8 地址链接 : http://www.itdog8.com/thread-214-1-1.html 博文标题:HBase - Filter - 过滤器的介绍以及使用 | 那伊抹微笑 个性签名:世界上最遥远的距离不是天涯.也不是海角.而是我站在妳的面前.妳却感觉不到我的存在 技术方向:Flume+Kafka+Storm+Redis/Hbase+Hadoop+Hive+Mahout+…
filter ==> SQL 中的Where filter的执行流程: 过滤器在客户端创建,然后通过RPC发送到服务器上,由服务器执行   基础过滤器:   比较器: Comparator  Description  LongComparator Assumes the given value array is a Java Long number and uses Bytes.toLong() to convert it. BinaryComparator Uses Bytes.compare…
1 过滤器HBase 的基本 API,包括增.删.改.查等.增.删都是相对简单的操作,与传统的 RDBMS 相比,这里的查询操作略显苍白,只能根据特性的行键进行查询(Get)或者根据行键的范围来查询(Scan).HBase 不仅提供了这些简单的查询,而且提供了更加高级的过滤器(Filter)来查询. 1.1 过滤器的两类参数过滤器可以根据列族.列.版本等更多的条件来对数据进行过滤,基于 HBase 本身提供的三维有序(行键,列,版本有序),这些过滤器可以高效地完成查询过滤的任务,带有过滤器条件的…
1.首先生成自定义过滤器,生成jar包,然后拷贝到服务器hbase目录的lib下. 1.1 自定义过滤器CustomFilter import com.google.protobuf.InvalidProtocolBufferException; import org.apache.hadoop.hbase.Cell; import org.apache.hadoop.hbase.CellUtil; import org.apache.hadoop.hbase.exceptions.Deseri…
引言:过滤器的类型很多,但是可以分为两大类——比较过滤器,专用过滤器过滤器的作用是在服务端判断数据是否满足条件,然后只将满足条件的数据返回给客户端: 一.hbase过滤器的分类 1.比较过滤器 行键过滤器 RowFilter Filter filter1 = new RowFilter(CompareOp.LESS_OR_EQUAL, new BinaryComparator(Bytes.toBytes("row-22"))); scan.setFilter(filter1); 列族过…
布隆过滤器( Bloom filters) 数据块索引提供了一个有效的方法,在访问一个特定的行时用来查找应该读取的HFile的数据块.但是它的效用是有限的.HFile数据块的默认大小是64KB,这个大小不能调整太多. 如果你要查找一个短行,只在整个数据块的起始行键上建立索引无法给你细粒度的索引信息.例如,如果你的行占用100字节存储空间,一个64KB的数据块包含(64 * 1024)/100 = 655.53 = ~700行,而你只能把起始行放在索引位上.你要查找的行可能落在特定数据块上的行区间…
一. HBase过滤器 1.列值过滤器 2.列名前缀过滤器 3.多个列名前缀过滤器 4.行键过滤器5.组合过滤器 package demo; import javax.swing.RowFilter; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.client.HTable; import org.apache.hadoop.hbase.client.Result; import org.a…
abc 过滤器介绍 HBase过滤器是一套为完成一些较高级的需求所提供的API接口. 过滤器也被称为下推判断器(push-down predicates),支持把数据过滤标准从客户端下推到服务器,带有 Filter 条件的 RPC 查询请求会把 Filter 分发到各个 RegionServer,所有的过滤器都在服务端生效,使被过滤掉的数据不会被传送到客户端,这些过滤逻辑在读操作时使用,可以有效降低网络传输的压力. 过滤器组成 过滤器主要有过滤器本身.比较器和比较运算符组成. 1. 操作符 抽象…
一.过滤器概念 基础API中的查询操作在面对大量数据的时候是非常物无力的,这里Hbase提供了高级的查询方法:Filter(过滤器).过滤器可以根据簇.列.版本等更多的条件来对数据进行过滤,基于Hbase本身提供的三维有序(主键有序.列有序.版本有序),这些Filter可以高效的完成查询过滤的任务.带有Filter条件的RPC查询请求会把Filter分发到各个RegionServer,是一个服务器端的过滤器,这样可以减少网络传输的压力. 二.数据准备 二.Hbase过滤器的分类 比较过滤器 1.…
转载自:http://blog.csdn.net/opensure/article/details/46453681 1.主要功能 提高随机读的性能 2.存储开销 bloom filter的数据存在StoreFile的meta中,一旦写入无法更新,因为StoreFile是不可变的.Bloomfilter是一个列族(cf)级别的配置属性,如果你在表中设置了Bloomfilter,那么HBase会在生成StoreFile时包含一份bloomfilter结构的数据,称其为MetaBlock:MetaB…
1.RowFilter 提取rowkey以01结尾数据Filter filter = new RowFilter(CompareFilter.CompareOp.EQUAL,new RegexStringComparator(".*01$")); 提取rowkey以包含201407的数据Filter filter = new RowFilter(CompareFilter.CompareOp.EQUAL,new SubstringComparator("201407"…
Hbase 的过滤器是个好东西.. 给这种非关系型数据库本来不能复杂查询的情况得到了很好的扩展..提供了很多的帮助.. 但是Filter的种类何其之多..让人眼花缭乱.. 譬如..分页类型的PageFilter 是必要的一种过滤器.. 另外根据其他条件..比如时间..比如关键字的过滤..都是常用的.. 那么多种过滤器同时使用时..问题出现了.. PageFilter分页过滤  和  SingleColumnValueFilter关键词值过滤时 或者更复杂的另外附加的条件还有Rowkey的过滤  …
转自:http://blog.csdn.net/saint1126/article/details/8257941 base过滤器的比较操作符:   LESS  <LESS_OR_EQUAL <=EQUAL =NOT_EQUAL <>GREATER_OR_EQUAL >=GREATER >NO_OP no operation 比较器:   BinaryComparator  按字节索引顺序比较指定字节数组,采用Bytes.compareTo(byte[])BinaryP…
Hbase学习(三)过滤器 HBase 的基本 API,包括增.删.改.查等. 增.删都是相对简单的操作,与传统的 RDBMS 相比,这里的查询操作略显苍白,只能根据特性的行键进行查询(Get)或者根据行键的范围来查询(Scan). HBase 不仅提供了这些简单的查询,而且提供了更加高级的过滤器(Filter)来查询. 过滤器可以根据列族.列.版本等更多的条件来对数据进行过滤, 基于 HBase 本身提供的三维有序(行键,列,版本有序),这些过滤器可以高效地完成查询过滤的任务,带有过滤器条件的…
[每日五分钟搞定大数据]系列,HBase第一篇 结束了Zookeeper篇, 接下来我们来说下Google三驾马车之一BigTable的开源实现:HBase,要讲的内容暂定如下: 这是第一篇我们先不聊技术实现,只讨论特性和场景 hbase的特点 千万级高并发 PB级存储 非结构化存储 动态列,稀疏列 支持二级索引 强一致性,可靠性,扩展性(CP系统,可用性做了一点让步) 场景 1. 写密集型应用,每天写入量巨大,而相对读数量较小的应用 2. 不需要复杂查询条件来查询数据的应用 使用rowkey,…
Filter CompareFilter 是高层的抽象类,下面我们将看到他的实现类和实现类代表的各种过滤条件 RowFilter,FamliyFilter,QualifierFilter,ValueFilter 行,列组,列,值等的过滤 1.RowFilter 相关的过滤方法使用:提取rowkey以01结尾数据Filter filter = new RowFilter(CompareFilter.CompareOp.EQUAL,new RegexStringComparator(".*01$&q…
一下代码实用  0.99.0 以后的版本. package hadoop; import java.io.IOException; import java.util.ArrayList; import java.util.List; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.Cell; import org.apache.hadoop.hbase.CellUtil; import org…
Hbase概述 ·  Hbase是构建在hdfs上的分布式列式存储系统 ·  Hbase内部管理的文件全部存储在HDFS上面, ·  Hbase是基于google bigtable 模型开发的,典型的noSql-KeyValue数据库: ·  Hbase是hadoop生态系统中的重要一员,主要用于海量结构化数据的存储: ·  从逻辑上讲,Hbase将数据按照表,行和列进行存储 ·  与hadoop一样,Hbase目标主要依靠横向扩展,通过不断的增加廉价的商 用服务器来增加计算能力和存储能力. H…
过滤器简介 HBase过滤器提供了非常强大的特性来帮助用户提高其处理表中数据的效率. HBase中两种主要的数据读取函数是get和scan,它们都支持直接访问数据和通过指定起止行键访问数据的功能.可以再查询中添加更多的限制条件来减少查询得到的数据量,这些限制可以使指定列族.列.时间戳以及版本号. 所有的过滤器都在服务端生效,叫做谓词下推(predicate push down),这样可以保证被过滤掉的数据不会被传送到客户端.也可以在客户端代码中实现过滤的功能(但会影响系统性能),因为这种情况下服…
1. Hbase基础 1.1 hbase数据库介绍 1.简介 hbase是bigtable的开源java版本.是建立在hdfs之上,提供高可靠性.高性能.列存储.可伸缩.实时读写nosql的数据库系统. 它介于nosql和RDBMS之间,仅能通过主键(row key)和主键的range来检索数据,仅支持单行事务(可通过hive支持来实现多表join等复杂操作). 主要用来存储结构化和半结构化的松散数据. Hbase查询数据功能很简单,不支持join等复杂操作,不支持复杂的事务(行级的事务) Hb…
这两天把要前几天的知识点回顾一下,接下来我会用自己对知识点的理解来写一些东西 一.知识点回顾 1.hbase集群启动:$>start-hbase.sh ===>hbase-daemon.sh start hmaster   +  hbase-daemon.sh start regionserver    hbase集群关闭:$>stop-hbase.sh   ===>hbase-daemon.sh staop hmaster +hbase-daemon.sh stop region…
摘要 本文主要内容是通过合理Hbase 行键(rowkey)设计实现快速的多条件查询,所采用的方法将所有要用于查询中的列经过一些处理后存储在rowkey中,查询时通过rowkey进行查询,提高rowkey的利用率,加快查询速度.行键(rowkey)并不是简单的把所有要查询的列的值直接拼接起来,而是将各个列的数据转成整型(int)数据来存储.之后实现两个自定义的比较器(comparator):一个是相等比较器,用于实现类似于SQL的多条件精确查找功能. select * from table wh…
前言:上篇文章HBase Filter 过滤器概述对HBase过滤器的组成及其家谱进行简单介绍,本篇文章主要对HBase过滤器之比较器作一个补充介绍,也算是HBase Filter学习的必备低阶魂技吧.本篇文中源码基于HBase 1.1.2.2.6.5.0-292 HDP版本. HBase所有的比较器实现类都继承于父类ByteArrayComparable,而ByteArrayComparable又实现了Comparable接口:不同功能的比较器差别在于对父类compareTo()方法的重写逻辑…
前言:本文详细介绍了HBase RowFilter过滤器Java&Shell API的使用,并贴出了相关示例代码以供参考.RowFilter 基于行键进行过滤,在工作中涉及到需要通过HBase Rowkey进行数据过滤时可以考虑使用它.比较器细节及原理请参照之前的更文:HBase Filter 过滤器之比较器 Comparator 原理及源码学习 一.Java Api 头部代码 public class RowFilterDemo { private static boolean isok =…
前言:本文详细介绍了 HBase FamilyFilter 过滤器 Java&Shell API 的使用,并贴出了相关示例代码以供参考.FamilyFilter 基于列族进行过滤,在工作中涉及到需要通过HBase 列族进行数据过滤时可以考虑使用它.比较器细节及原理请参照之前的更文:HBase Filter 过滤器之比较器 Comparator 原理及源码学习 一.Java Api 头部代码 public class FamilyFilterDemo { private static boolea…
前言:本文详细介绍了 HBase QualifierFilter 过滤器 Java&Shell API 的使用,并贴出了相关示例代码以供参考.QualifierFilter 基于列名进行过滤,在工作中涉及到需要通过HBase 列名进行数据过滤时可以考虑使用它.比较器细节及原理请参照之前的更文:HBase Filter 过滤器之比较器 Comparator 原理及源码学习 一.Java Api 头部代码 /** * 用于列名(Qualifier)过滤. */ public class Qualif…
前言:本文详细介绍了 HBase ValueFilter 过滤器 Java&Shell API 的使用,并贴出了相关示例代码以供参考.ValueFilter 基于列值进行过滤,在工作中涉及到需要通过HBase 列值进行数据过滤时可以考虑使用它.比较器细节及原理请参照之前的更文:HBase Filter 过滤器之比较器 Comparator 原理及源码学习 一.Java Api 头部代码 /** * 用于列值过滤. */ public class ValueFilterDemo { private…
环境极其恶劣情况下: import org.apache.spark.SparkContext import org.apache.spark.rdd.RDD import org.apache.spark.sql.{DataFrame, Row, SQLContext} import org.apache.spark.sql.hive.HiveContext val sqlContext = new HiveContext(sc) val sql = sqlContext.sql("selec…
定义: HBase是一个分布式的.面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”.就像Bigtable利用了Google文件系统(File System)所提 供的分布式数据存储一样,HBase在Hadoop之上提供了类似于Bigtable的能力.HBase是Apache的Hadoop项目的子项目.HBase不同于一般的关系数据库,它是一个适合于非结构化数据存储的数据库.另一个不 同的是HBase基于列的而不是基…