【Hbase学习】regionserver分裂策略

regionserver分裂策略

默认的是:
org.apache.hadoop.hbase.regionserver.SteppingSplitPolicy

其他常用的还有
BusyRegionSplitPolicy

ConstantSizeRegionSplitPolicy,
公司用的
按固定长度分割region,固定长度取值优先获取table的“MAX_FILESIZE” 值,若没有设定该属性,则采用在hbase-site.xml中配置的hbase.hregion.max.filesize值,在0.94版本中这个值的缺省值已经被调整为:10 * 1024 * 1024 * 1024L 也就是10G,网上很多关于 hbase.hregion.max.filesize 默认值 1G的文章应该都是基于0.92的hbase的。这个在使用中需要明确具体的hbase版本号。这个策略是0.94版本之前默认使用的,采用该策略后,当table的某一region中的某一store大小超过了预定的最大固定长度时,对该region进行split。splitPoint算法的选择还是依据“数据对半”原则,找到该region的最大store的中间长度的rowkey进行split。

DisabledRegionSplitPolicy
关闭策略,手动split

DelimitedKeyPrefixRegionSplitPolicy

KeyPrefixRegionSplitPolicy
指定rowkey前缀位数划分region,通过读取table的prefix_split_key_policy.prefix_length属性,该属性为数字类型,表示前缀长度,
在进行split时,按此长度对splitPoint进行截取。个人理解是rowkey前缀不相等,则划分region。此种策略比较适合固定前缀的rowkey。当table中没有设置prefix_split_key_policy.prefix_length属性,或prefix_split_key_policy.prefix_length属性不为Integer类型时,指定此策略效果等同与使用IncreasingToUpperBoundRegionSplitPolicy。

你可能感兴趣的:(大数据,hbase)