org.apache.hadoop.hbase.regionserver
Class IncreasingToUpperBoundRegionSplitPolicy

java.lang.Object
  extended by org.apache.hadoop.conf.Configured
      extended by org.apache.hadoop.hbase.regionserver.RegionSplitPolicy
          extended by org.apache.hadoop.hbase.regionserver.ConstantSizeRegionSplitPolicy
              extended by org.apache.hadoop.hbase.regionserver.IncreasingToUpperBoundRegionSplitPolicy
All Implemented Interfaces:
org.apache.hadoop.conf.Configurable
Direct Known Subclasses:
DelimitedKeyPrefixRegionSplitPolicy, KeyPrefixRegionSplitPolicy

public class IncreasingToUpperBoundRegionSplitPolicy
extends ConstantSizeRegionSplitPolicy

Split size is the number of regions that are on this server that all are of the same table, cubed, times 2x the region flush size OR the maximum region split size, whichever is smaller. For example, if the flush size is 128M, then after two flushes (256MB) we will split which will make two regions that will split when their size is 2^3 * 128M*2 = 2048M. If one of these regions splits, then there are three regions and now the split size is 3^3 * 128M*2 = 6912M, and so on until we reach the configured maximum filesize and then from there on out, we'll use that.


Field Summary
 
Fields inherited from class org.apache.hadoop.hbase.regionserver.RegionSplitPolicy
region
 
Constructor Summary
IncreasingToUpperBoundRegionSplitPolicy()
           
 
Method Summary
protected  void configureForRegion(HRegion region)
          Upon construction, this method will be called with the region to be governed.
protected  long getSizeToCheck(int tableRegionsCount)
           
protected  boolean shouldSplit()
           
 
Methods inherited from class org.apache.hadoop.hbase.regionserver.RegionSplitPolicy
create, getSplitPoint
 
Methods inherited from class org.apache.hadoop.conf.Configured
getConf, setConf
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

IncreasingToUpperBoundRegionSplitPolicy

public IncreasingToUpperBoundRegionSplitPolicy()
Method Detail

configureForRegion

protected void configureForRegion(HRegion region)
Description copied from class: RegionSplitPolicy
Upon construction, this method will be called with the region to be governed. It will be called once and only once.

Overrides:
configureForRegion in class ConstantSizeRegionSplitPolicy

shouldSplit

protected boolean shouldSplit()
Overrides:
shouldSplit in class ConstantSizeRegionSplitPolicy
Returns:
true if the specified region should be split.

getSizeToCheck

protected long getSizeToCheck(int tableRegionsCount)
Returns:
Region max size or count of regions squared * flushsize, which ever is smaller; guard against there being zero regions on this server.


Copyright © 2015 The Apache Software Foundation. All Rights Reserved.