public class IndexSummaryManager extends java.lang.Object implements IndexSummaryManagerMBean
Modifier and Type | Field and Description |
---|---|
static IndexSummaryManager |
instance |
static java.lang.String |
MBEAN_NAME |
Modifier and Type | Method and Description |
---|---|
double |
getAverageIndexInterval() |
java.util.Map<java.lang.String,java.lang.Integer> |
getIndexIntervals()
Returns a map of SSTable filenames to their current effective index interval.
|
long |
getMemoryPoolCapacityInMB() |
double |
getMemoryPoolSizeInMB()
Returns the actual space consumed by index summaries for all sstables.
|
int |
getResizeIntervalInMinutes() |
void |
redistributeSummaries() |
static java.util.List<SSTableReader> |
redistributeSummaries(java.util.List<SSTableReader> compacting,
java.util.Map<java.util.UUID,LifecycleTransaction> transactions,
long memoryPoolBytes)
Attempts to fairly distribute a fixed pool of memory for index summaries across a set of SSTables based on
their recent read rates.
|
void |
setMemoryPoolCapacityInMB(long memoryPoolCapacityInMB) |
void |
setResizeIntervalInMinutes(int resizeIntervalInMinutes) |
public static final java.lang.String MBEAN_NAME
public static final IndexSummaryManager instance
public int getResizeIntervalInMinutes()
getResizeIntervalInMinutes
in interface IndexSummaryManagerMBean
public void setResizeIntervalInMinutes(int resizeIntervalInMinutes)
setResizeIntervalInMinutes
in interface IndexSummaryManagerMBean
public long getMemoryPoolCapacityInMB()
getMemoryPoolCapacityInMB
in interface IndexSummaryManagerMBean
public java.util.Map<java.lang.String,java.lang.Integer> getIndexIntervals()
IndexSummaryManagerMBean
getIndexIntervals
in interface IndexSummaryManagerMBean
public double getAverageIndexInterval()
getAverageIndexInterval
in interface IndexSummaryManagerMBean
public void setMemoryPoolCapacityInMB(long memoryPoolCapacityInMB)
setMemoryPoolCapacityInMB
in interface IndexSummaryManagerMBean
public double getMemoryPoolSizeInMB()
getMemoryPoolSizeInMB
in interface IndexSummaryManagerMBean
public void redistributeSummaries() throws java.io.IOException
redistributeSummaries
in interface IndexSummaryManagerMBean
java.io.IOException
public static java.util.List<SSTableReader> redistributeSummaries(java.util.List<SSTableReader> compacting, java.util.Map<java.util.UUID,LifecycleTransaction> transactions, long memoryPoolBytes) throws java.io.IOException
transactions
- containing the sstables we are to redistribute the memory pool acrossmemoryPoolBytes
- a size (in bytes) that the total index summary space usage should stay close to or
under, if possiblejava.io.IOException
Copyright © 2015 The Apache Software Foundation