Hbase深入学习

Memstore&StoreFile
client写入->存入MemStore,一直到MemStore满->flush成为一个StoreFile,直到增长到一定的阀值->compact合并操作->将多个storefile合并成一个storefile,同时进行版本合并和数据的删除->当storefile compact后,逐步形成越来越大的storefile->单个storefile大小超过一定的阀值后,触发split操作,把当前Region Split成2个Region,Region会下线,新split出的2个子Region会被HMaster分配到相应的HRegionServer上,使得原先的1个Region的压力得以分流到2个Region上.
Hbase只是增加数据,有所得更新和删除操作,都是在compact阶段做的,所以,用户写操作值需要进入到内存即可立即返回,从而保证了IO的高性能.
HLog文件
WAL意为Write ahead log,类似mysql的binlog,用来做灾难恢复,Hlog记录数据的所有变更,一旦有数据的修改,就可以从log中恢复。每个HRegionServer维护一个Hlog,而不是每个HRegion一个。这样不同的region(来自不同的表)的日志会混在一起,这样做的目的是不断追加单个文件相对于同时写多个文件而言,可以减少磁盘的寻址次数,提高了对表的写性能.这样的弊端:如果一台HregionServer下线,为了恢复其上的region,需要将HRegionServer上的log进行拆分分发到其他的HRegionServer上进行恢复.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值