深入理解HBASE

深入理解HBASE(3.1)RegionServer-简介

2019-03-23  本文已影响0人  宋大壮

RegionServer作用与组件

• 响应client的读写请求,进行I/O操作(直接绕过HMaster)
• 与HDFS交互,管理table数据
• 当Region的大小到达阀值时切分Region
• 管理一个或者多个region


BlockCache、WAL、Region

BlockCache

• 读缓存,数据被读取之后仍然缓存在内存中
• 有LruBlockCache(效率较高,GC压力大)和BucketCache(效率较低,没有GC压力)两种BlockCache,默
认为LruBlockCache
• 每个RegionServer中只有一个BlockCache实例

Block

WAL:Write Ahead Log

• 为一个文件
• 0.94之前叫做HLog,存储在/hbase/.logs/目录中
• 0.94之后存储在HDFS上的/hbase/WALs/{HRegionServer_name}中
• 记录RegionServer上的所有编辑信息(Puts/Deletes操作,属于哪个Region),在写到memstore之前
• 理论上一个RegionServer上只有一个WAL实例,数据操作为串行,造成性能瓶颈
多WAL实例
HBase1.0 之后,通过使用底层HDFS的多管道实现了多WAL并行写入,提高了吞吐量
并行化是通过对多个Region进行分区实现的,如果只有一个Region,那么该方案无效
通过在hbase-site.xml中配置,然后重启RegionServer

用于RegionServer失效时,通过Replay恢复RegionServer上memstore中尚未持久化的数据

Region

Region是表获取和分布的基本元素,由每个列族的一个Store组成,稍后单独再表

上一篇 下一篇

猜你喜欢

热点阅读