第4章 HBase的读写基本操作_第1页
第4章 HBase的读写基本操作_第2页
第4章 HBase的读写基本操作_第3页
第4章 HBase的读写基本操作_第4页
第4章 HBase的读写基本操作_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

HBase的读写流程第4章学习目标1.深入了解RegionServer架构2.了解HBase写流程3.了解HBase读流程4.了解Hbase自动优化过程HBaseContents目录读流程3RegionServer架构

写流程

21自动优化过程44.1RegionServer架构4.1RegionServer架构Store一个Region由多个Store组成,一个Store对应一个CF(列族)Store中包含位于内存中的Memstore文件和位于磁盘的Storefile文件。Memstore与Storefile写操作先写入Memstore,当Memstore中的数据达到某个阈值,会将其刷写到磁盘中,生成一个Storefile文件。因此,在一张表刚刚创建之时,系统里只会有Memstore文件,当数据达到一定量或插入数据一段时间后,才会出现Storefile文件。4.1RegionServer架构WAL(writeaheadlog)由于数据要先写入MemStore后才能刷写到HFile,储存在内存也会面临一定风险。为了解决这个问题,数据会先写在一个叫做Hlog的文件中,之后再写入MemStore。该文件包含详细的写入信息,包括Region位置,写入数据,写入时间等等。若写入时出现系统故障,可以通过这个日志文件重建数据。Block

Cache读缓存,每次查询出的数据都会缓存在BlockCache中,作为热点数据,方便下次查询。4.2写流程4.2写流程写流程:1)Client访问zookeeper,获取meta表(存储每张表RowKey的分布情况)位置;2)访问meta表,根据写请求的RowKey,查询出数据应当位于哪个Region中;3)与目标RegionServer进行通讯;4)将数据顺序写入(追加)到WAL中;5)将数据写入对应的MemStore,返回写入成功信息;6)当MemStore中的数据大小达到阈值或距离上次溢写达到一定时间,将MemStore溢写至磁盘中形成StoreFile;7)将meta表的位置信息缓存,方便下次访问。4.3读流程4.3读流程读流程1)Client访问zookeeper,获取meta表(存储每张表RowKey的分布情况)位置;2)访问meta表,根据写请求的Row

Key,查询出数据应当位于哪个Region中;3)与目标RegionServer进行通讯;4)先后在BlockCache、MemStore、StoreFile中,根据RowKey寻找数据,如有不同时间戳版本,将所有数据进整合;5)将查询到的新的数据块信息缓存到BlockCache作为热点信息;6)将合并后的最终结果返回给客户端;7)将meta表的位置信息缓存,方便下次访问。4.4

HBase自优化StoreFileCompaction(合并)由于memstore每次刷写都会生成一个新的HFile,且同一个字段的不同版本(timestamp)和不同类型(Put/Delete操作)有可能会分布在不同的HFile中,因此查询时需要遍历所有的HFile。为了减少HFile的个数,以及清理掉过期和删除的数据,会进行StoreFileCompaction。Compaction分为两种,分别是MinorCompaction和MajorCompaction。MinorCompaction会将临近的若干个较小的HFile合并成一个较大的HFile,并清理掉部分过期和删除的数据。MajorCompaction会将一个Store下的所有的HFile合并成一个大HFile,并且会清理掉所有过期和删除的数据。4.4HBase自优化4.4HBase自优化RegionSplit(切割)

默认情况下,每个Table初始有一个Region。随着数据的不断写入,Region会自动进行拆分。刚拆分时,两个子Region都位于当前的RegionServer,但处于负载均衡的考虑,HMaster有可能会将某个Region转移给其他的RegionServer。RegionSplit时机:当1个region中的某个Store下所有StoreFile的总大小超过Min(initialSize*R^3,hbase.hregion.max.filesize"),该Region就会进行拆分。依照默认设置,具体如下:第一次split阈值

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论