欢迎光临
我们一直在努力

HBase中Compact和Split是什么

这篇文章给大家分享的是有关HBase中Compact和Split是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

Compact

HStore存储是HBase存储的核心,其中由两部分组成,一部分是MemStore,一部分是StoreFiles。
MemStore是Sorted Memory Buffer,用户写入的数据首先会放入MemStore,当MemStore满了以后会Flush成一个StoreFile(底层实现是HFile),当StoreFile文件数量增长到一定阈值,会触发Compact合并操作,将多个StoreFiles合并成一个StoreFile,合并过程中会进行版本合并和数据删除,
因此可以看出HBase其实只有增加数据,所有的更新和删除操作都是在后续的compact过程中进行的,
这使得用户的写操作只要进入内存中就可以立即返回,保证了HBase I/O的高性能。

split

当StoreFiles Compact后,会逐步形成越来越大的StoreFile,当单个StoreFile大小超过一定阈值后,会
触发Split操作,同时把当前Region Split成2个Region,父Region会下线,新Split出的2个孩子Region
会被HMaster分配到相应的HRegionServer上,使得原先1个Region的压力得以分流到2个Region上。

下图描述了Compaction和Split的过程:

感谢各位的阅读!关于“HBase中Compact和Split是什么”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。