region分裂策略

0.94版本之前 分裂的策略采用ConstantSizeRegionSplitPolicy的,在这个情况下只要将配置文件中的hbase.hregion.max.filesize设置为一个超大值则可以将自动分裂关闭。
0.94版本之后 默认策略是IncreasingToUpperBoundRegionSplitPolicy,这个策略是当在一个RS中同一个表的region数量小于9时,如果storefile的最大大小大于Min (R^2 “hbase.hregion.memstore.flush.size”, “hbase.hregion.max.filesize”)则将该region分裂,而当region数量到达了9后则采用ConstantSizeRegionSplitPolicy策略。 使用这种新策略在前期会加快split的频率,防止热点。在后期当region个数到达30个时,30 30 * 128 = 107648M = 105.1G,即在此时,region的切分大小已经超过了我们原先在ConstantSizeRegionSplitPolicy策略中默认设置的100G大小,在后期会减少split频率。好处显而易见。

如果想手动分裂那该如何做呢?
1、将hbase.hregion.max.filesize配置的足够大
2、在hbase-site.xml配置文件中,添加:

name为hbase.regionserver.region.split.policy

value为org.apache.hadoop.hbase.regionserver.ConstantSizeRegionSplitPolicy

这样我们就能够按照0.94之前版本的分裂策略来控制region的分裂了。

没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试