public class HeapMemoryManager
extends java.lang.Object
HeapMemoryTuner
. Most part of the heap memory is
split between Memstores and BlockCache. This manager helps in tuning sizes of both these
dynamically, as per the R/W load on the servers.Modifier and Type | Class and Description |
---|---|
static interface |
HeapMemoryManager.HeapMemoryTuneObserver
Every class that wants to observe heap memory tune actions must implement this interface.
|
static class |
HeapMemoryManager.TunerContext
POJO to pass all the relevant information required to do the heap memory tuning.
|
static class |
HeapMemoryManager.TunerResult
POJO which holds the result of memory tuning done by HeapMemoryTuner implementation.
|
Modifier and Type | Field and Description |
---|---|
static java.lang.String |
BLOCK_CACHE_SIZE_MAX_RANGE_KEY |
static java.lang.String |
BLOCK_CACHE_SIZE_MIN_RANGE_KEY |
static java.lang.String |
HBASE_RS_HEAP_MEMORY_TUNER_CLASS |
static int |
HBASE_RS_HEAP_MEMORY_TUNER_DEFAULT_PERIOD |
static java.lang.String |
HBASE_RS_HEAP_MEMORY_TUNER_PERIOD |
static float |
HEAP_OCCUPANCY_ERROR_VALUE |
static java.lang.String |
MEMSTORE_SIZE_MAX_RANGE_KEY |
static java.lang.String |
MEMSTORE_SIZE_MIN_RANGE_KEY |
Modifier and Type | Method and Description |
---|---|
static HeapMemoryManager |
create(Configuration conf,
FlushRequester memStoreFlusher,
Server server,
RegionServerAccounting regionServerAccounting) |
float |
getHeapOccupancyPercent() |
void |
registerTuneObserver(HeapMemoryManager.HeapMemoryTuneObserver observer) |
void |
start(ChoreService service) |
void |
stop() |
public static final java.lang.String BLOCK_CACHE_SIZE_MAX_RANGE_KEY
public static final java.lang.String BLOCK_CACHE_SIZE_MIN_RANGE_KEY
public static final java.lang.String MEMSTORE_SIZE_MAX_RANGE_KEY
public static final java.lang.String MEMSTORE_SIZE_MIN_RANGE_KEY
public static final java.lang.String HBASE_RS_HEAP_MEMORY_TUNER_PERIOD
public static final int HBASE_RS_HEAP_MEMORY_TUNER_DEFAULT_PERIOD
public static final java.lang.String HBASE_RS_HEAP_MEMORY_TUNER_CLASS
public static final float HEAP_OCCUPANCY_ERROR_VALUE
public static HeapMemoryManager create(Configuration conf, FlushRequester memStoreFlusher, Server server, RegionServerAccounting regionServerAccounting)
public void start(ChoreService service)
public void stop()
public void registerTuneObserver(HeapMemoryManager.HeapMemoryTuneObserver observer)
public float getHeapOccupancyPercent()