首页 > 其他 > 详细

Hbase列族个数建议设在1~3之间

时间:2019-08-16 10:10:04      阅读:95      评论:0      收藏:0      [点我收藏+]

列族数对Flush的影响

在Hbase中,调用API往对应的表中插入数据是会写到MenStore的。而MenStore是一种内存结构。每个列族对应一个MenStore和多个HFile。

技术分享图片

列族越多,会导致内存中存在越多的MrenStore。存储在MenStore中的数据在满足一定条件下将会促发Flush操作,这样每次Flush的时候都会在磁盘中生成一个HFile文件,并且,Flush操作涉及到一定IO操作,也会阻塞客户端的读写操作。

技术分享图片这样会导致越多的列族最终持久化到磁盘的HFile越多。然而,当前的Flush操作是Region级别的,也就是说,Region中某个MenStore被Flush,同一个Region的其他Menstore也会进行Flush操作。当表有很多列族,而且列族之间数据不均匀,比如一个列族数据有100w条,另一个列族只有10w条数据,这样,Flush操作的时候就会有更多的小文件产生。

Hbase列族个数建议设在1~3之间

原文:https://www.cnblogs.com/ww5566/p/11361979.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!