public class LeveledCompactionStrategy extends AbstractCompactionStrategy
AbstractCompactionStrategy.ScannerList
cfs, COMPACTION_ENABLED, DEFAULT_TOMBSTONE_COMPACTION_INTERVAL, DEFAULT_TOMBSTONE_THRESHOLD, DEFAULT_UNCHECKED_TOMBSTONE_COMPACTION_OPTION, disableTombstoneCompactions, isActive, ONLY_PURGE_REPAIRED_TOMBSTONES, options, TOMBSTONE_COMPACTION_INTERVAL_OPTION, TOMBSTONE_THRESHOLD_OPTION, tombstoneCompactionInterval, tombstoneThreshold, UNCHECKED_TOMBSTONE_COMPACTION_OPTION, uncheckedTombstoneCompaction
Constructor and Description |
---|
LeveledCompactionStrategy(ColumnFamilyStore cfs,
java.util.Map<java.lang.String,java.lang.String> options) |
Modifier and Type | Method and Description |
---|---|
void |
addSSTable(SSTableReader added) |
int[] |
getAllLevelSize() |
AbstractCompactionTask |
getCompactionTask(LifecycleTransaction txn,
int gcBefore,
long maxSSTableBytes) |
int |
getEstimatedRemainingTasks() |
int |
getLevelSize(int i) |
java.util.Collection<AbstractCompactionTask> |
getMaximalTask(int gcBefore,
boolean splitOutput) |
long |
getMaxSSTableBytes() |
AbstractCompactionTask |
getNextBackgroundTask(int gcBefore)
the only difference between background and maximal in LCS is that maximal is still allowed
(by explicit user request) even when compaction is disabled.
|
AbstractCompactionStrategy.ScannerList |
getScanners(java.util.Collection<SSTableReader> sstables,
Range<Token> range)
Returns a list of KeyScanners given sstables and a range on which to scan.
|
AbstractCompactionTask |
getUserDefinedTask(java.util.Collection<SSTableReader> sstables,
int gcBefore) |
java.util.Collection<java.util.Collection<SSTableReader>> |
groupSSTablesForAntiCompaction(java.util.Collection<SSTableReader> ssTablesToGroup)
Leveled compaction strategy has guarantees on the data contained within each level so we
have to make sure we only create groups of SSTables with members from the same level.
|
void |
removeSSTable(SSTableReader sstable) |
void |
replaceSSTables(java.util.Collection<SSTableReader> removed,
java.util.Collection<SSTableReader> added) |
java.lang.String |
toString() |
static java.util.Map<java.lang.String,java.lang.String> |
validateOptions(java.util.Map<java.lang.String,java.lang.String> options) |
createSSTableMultiWriter, disable, enable, filterSuspectSSTables, getDirectories, getMemtableReservedSize, getName, getScanners, isAffectedByMeteredFlusher, pause, replaceFlushed, resume, shouldBeEnabled, shouldDefragment, shutdown, startup, worthDroppingTombstones
public LeveledCompactionStrategy(ColumnFamilyStore cfs, java.util.Map<java.lang.String,java.lang.String> options)
public int getLevelSize(int i)
public int[] getAllLevelSize()
public AbstractCompactionTask getNextBackgroundTask(int gcBefore)
getNextBackgroundTask
in class AbstractCompactionStrategy
gcBefore
- throw away tombstones older than thispublic java.util.Collection<AbstractCompactionTask> getMaximalTask(int gcBefore, boolean splitOutput)
getMaximalTask
in class AbstractCompactionStrategy
gcBefore
- throw away tombstones older than thispublic AbstractCompactionTask getUserDefinedTask(java.util.Collection<SSTableReader> sstables, int gcBefore)
getUserDefinedTask
in class AbstractCompactionStrategy
sstables
- SSTables to compact. Must be marked as compacting.gcBefore
- throw away tombstones older than thispublic AbstractCompactionTask getCompactionTask(LifecycleTransaction txn, int gcBefore, long maxSSTableBytes)
getCompactionTask
in class AbstractCompactionStrategy
public java.util.Collection<java.util.Collection<SSTableReader>> groupSSTablesForAntiCompaction(java.util.Collection<SSTableReader> ssTablesToGroup)
groupSSTablesForAntiCompaction
in class AbstractCompactionStrategy
ssTablesToGroup
- public int getEstimatedRemainingTasks()
getEstimatedRemainingTasks
in class AbstractCompactionStrategy
public long getMaxSSTableBytes()
getMaxSSTableBytes
in class AbstractCompactionStrategy
public AbstractCompactionStrategy.ScannerList getScanners(java.util.Collection<SSTableReader> sstables, Range<Token> range)
AbstractCompactionStrategy
getScanners
in class AbstractCompactionStrategy
public void replaceSSTables(java.util.Collection<SSTableReader> removed, java.util.Collection<SSTableReader> added)
replaceSSTables
in class AbstractCompactionStrategy
public void addSSTable(SSTableReader added)
addSSTable
in class AbstractCompactionStrategy
public void removeSSTable(SSTableReader sstable)
removeSSTable
in class AbstractCompactionStrategy
public java.lang.String toString()
toString
in class java.lang.Object
public static java.util.Map<java.lang.String,java.lang.String> validateOptions(java.util.Map<java.lang.String,java.lang.String> options) throws ConfigurationException
ConfigurationException
Copyright © 2015 The Apache Software Foundation