Hbase读写流程和寻址机制

写操作流程

(1) Client通过Zookeeper的调度,向RegionServer发出写数据请求,在Region中写数据。

(2) 数据被写入RegionMemStore,直到MemStore达到预设阈值。

(3) MemStore中的数据被Flush成一个StoreFile

(4) 随着StoreFile文件的不断增多,当其数量增长到一定阈值后,触发Compact合并操作,将多个StoreFile合并成一个StoreFile,同时进行版本合并和数据删除。

(5) StoreFiles通过不断的Compact合并操作,逐步形成越来越大的StoreFile

(6) 单个StoreFile大小超过一定阈值后,触发Split操作,把当前Region Split2个新的Region。父Region会下线,新Split出的2个子Region会被HMaster分配到相应的RegionServer上,使得原先1Region的压力得以分流到2Region上。

可以看出HBase只有增添数据,所有的更新和删除操作都是在后续的Compact历程中举行的,使得用户的写操作只要进入内存就可以立刻返回,实现了HBase I/O的高机能

读操作流程

(1) Client访问Zookeeper,查找-ROOT-表,获取.META.表信息。

(2) .META.表查找,获取存放目标数据的Region信息,从而找到对应的RegionServer

(3) 通过RegionServer获取需要查找的数据。

(4) Regionserver的内存分为MemStoreBlockCache两部分,MemStore主要用于写数据,BlockCache主要用于读数据。读请求先到MemStore中查数据,查不到就到BlockCache中查,再查不到就会到StoreFile上读,并把读的结果放入BlockCache

寻址过程:client-->Zookeeper-->-ROOT--->.META.-->RegionServer-->Region-->client

Hbase寻址机制

 

转载于:https://www.cnblogs.com/dummyly/p/10099395.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值