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()