文档章节

HBase scan setBatch和setCaching的区别

Zero零_度
 Zero零_度
发布于 2017/05/21 10:08
字数 358
阅读 78
收藏 0

HBase的查询实现只提供两种方式:

1、按指定RowKey获取唯一一条记录,get方法(org.apache.hadoop.hbase.client.Get)

2、按指定的条件获取一批记录,scan方法(org.apache.Hadoop.Hbase.client.Scan)

 

实现条件查询功能使用的就是scan方式,scan在使用时有以下几点值得注意:
1、scan可以通过setCaching与setBatch方法提高速度(以空间换时间);
2、scan可以通过setStartRow与setEndRow来限定范围([start,end)start是闭区间,end是开区间)。范围越小,性能越高。
通过巧妙的RowKey设计使我们批量获取记录集合中的元素挨在一起(应该在同一个Region下),可以在遍历结果时获得很好的性能。
3、scan可以通过setFilter方法添加过滤器,这也是分页、多条件查询的基础。

 

scan中的setCaching与setBatch方法的区别是什么呢?

setCaching设置的值为每次rpc的请求记录数,默认是1;cache大可以优化性能,但是太大了会花费很长的时间进行一次传输。

setBatch设置每次取的column size;有些row特别大,所以需要分开传给client,就是一次传一个row的几个column。

batch和caching和hbase table column size共同决意了rpc的次数。

 

通过下表可以看出caching/batch/rpc次数的关系:

 

10 rows, 2 families, 10column per family,total:200 cell

 

 

本文转载自:http://blog.csdn.net/caoli98033/article/details/44650497

Zero零_度
粉丝 69
博文 1267
码字总数 263854
作品 0
程序员
私信 提问
Hbase多列范围查找(效率)

Hbase索引表的结构   在HBase中,表格的Rowkey按照字典排序,Region按照RowKey设置split point进行shard,通过这种方式实现的全局、分布式索引,成为了其成功的最大的砝码   每一个索引建...

为了美好的明天
04/30
0
0
HBase条件查询(多条件查询)

Author:Pirate Leo myBlog: http://blog.csdn.net/pirateleo/ myEmail: codeevoship@gmail.com 转载请注明出处,谢谢。 文中可能涉及到的API: Hadoop/HDFS:http://hadoop.apache.org/commo......

Zero零_度
2015/11/05
294
0
实现HBase与Hive之间数据互通互导

今天主要给大家讲解一下,如何使用Hive来查询及操作HBase里面的数据,也就是实现二者的数据互通互导。 首先不了解HBase的同学可以看一下我之前写过的一片博文: 一、那么看完之后我们先来简单...

马修
2018/08/27
0
0
Hbase Java API详解

HBase是Hadoop的数据库,能够对大数据提供随机、实时读写访问。他是开源的,分布式的,多版本的,面向列的,存储模型。 在讲解的时候我首先给大家讲解一下HBase的整体结构,如下图: HBase ...

凡16
2013/12/26
197
0
SHC:使用 Spark SQL 高效地读写 HBase

Apache Spark 和 Apache HBase 是两个使用比较广泛的大数据组件。很多场景需要使用 Spark 分析/查询 HBase 中的数据,而目前 Spark 内置是支持很多数据源的,其中就包括了 HBase,但是内置的...

HBase
04/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

代理模式之JDK动态代理 — “JDK Dynamic Proxy“

动态代理的原理是什么? 所谓的动态代理,他是一个代理机制,代理机制可以看作是对调用目标的一个包装,这样我们对目标代码的调用不是直接发生的,而是通过代理完成,通过代理可以有效的让调...

code-ortaerc
今天
5
0
学习记录(day05-标签操作、属性绑定、语句控制、数据绑定、事件绑定、案例用户登录)

[TOC] 1.1.1标签操作v-text&v-html v-text:会把data中绑定的数据值原样输出。 v-html:会把data中值输出,且会自动解析html代码 <!--可以将指定的内容显示到标签体中--><标签 v-text=""></......

庭前云落
今天
8
0
VMware vSphere的两种RDM磁盘

在VMware vSphere vCenter中创建虚拟机时,可以添加一种叫RDM的磁盘。 RDM - Raw Device Mapping,原始设备映射,那么,RDM磁盘是不是就可以称作为“原始设备映射磁盘”呢?这也是一种可以热...

大别阿郎
今天
12
0
【AngularJS学习笔记】02 小杂烩及学习总结

本文转载于:专业的前端网站☞【AngularJS学习笔记】02 小杂烩及学习总结 表格示例 <div ng-app="myApp" ng-controller="customersCtrl"> <table> <tr ng-repeat="x in names | orderBy ......

前端老手
昨天
16
0
Linux 内核的五大创新

在科技行业,创新这个词几乎和革命一样到处泛滥,所以很难将那些夸张的东西与真正令人振奋的东西区分开来。Linux内核被称为创新,但它又被称为现代计算中最大的奇迹,一个微观世界中的庞然大...

阮鹏
昨天
20
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部