一个Region Server的region个数少点比较好,一般从20到几百个。0.90.x中upper-bound of regionsize是4GB,0.92.x中因为HFile v2,可以支持到更大,如20GB。一个Region Server保持较小的Region Server原因如下:
1、MSLAB每个memstore需要2mb。如果有2个 families,1000 regions则需要3.9GB of heap。
2、如果在region上写入的量差不多,region server整体的内存使用会导致tiny flush,然后会产生compactions。数据会被重写多次。
例如有1000个regions,每个有一个family,内存总量为5GB。当内存使用到5GB时,大概会有5MB数据被flush。
3、master对于大量的regions比较过敏,会花费很多时间分配和移动regions。因为对zk的大量使用。
4、在旧版本的HBase里面,大量的regions可能导致store file索引加大内存的使用量。
本文探讨了HBase中RegionServer的最佳实践,包括合理的region数量、内存管理和优化配置以提高性能。通过限制region的数量,可以有效减少内存使用,降低flush频率,并减轻Master的压力。
6888

被折叠的 条评论
为什么被折叠?



