org.apache.hadoop.hbase.regionserver.compactions
Class StripeCompactionPolicy
java.lang.Object
org.apache.hadoop.hbase.regionserver.compactions.CompactionPolicy
org.apache.hadoop.hbase.regionserver.compactions.StripeCompactionPolicy
@InterfaceAudience.Private
public class StripeCompactionPolicy
- extends CompactionPolicy
Stripe store implementation of compaction policy.
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
StripeCompactionPolicy
public StripeCompactionPolicy(org.apache.hadoop.conf.Configuration conf,
StoreConfigInformation storeConfigInfo,
StripeStoreConfig config)
preSelectFilesForCoprocessor
public List<StoreFile> preSelectFilesForCoprocessor(StripeCompactionPolicy.StripeInformationProvider si,
List<StoreFile> filesCompacting)
createEmptyRequest
public StripeCompactionPolicy.StripeCompactionRequest createEmptyRequest(StripeCompactionPolicy.StripeInformationProvider si,
CompactionRequest request)
selectFlush
public StripeStoreFlusher.StripeFlushRequest selectFlush(StripeCompactionPolicy.StripeInformationProvider si,
int kvCount)
selectCompaction
public StripeCompactionPolicy.StripeCompactionRequest selectCompaction(StripeCompactionPolicy.StripeInformationProvider si,
List<StoreFile> filesCompacting,
boolean isOffpeak)
throws IOException
- Throws:
IOException
needsCompactions
public boolean needsCompactions(StripeCompactionPolicy.StripeInformationProvider si,
List<StoreFile> filesCompacting)
isMajorCompaction
public boolean isMajorCompaction(Collection<StoreFile> filesToCompact)
throws IOException
- Specified by:
isMajorCompaction
in class CompactionPolicy
- Parameters:
filesToCompact
- Files to compact. Can be null.
- Returns:
- True if we should run a major compaction.
- Throws:
IOException
throttleCompaction
public boolean throttleCompaction(long compactionSize)
- Specified by:
throttleCompaction
in class CompactionPolicy
- Parameters:
compactionSize
- Total size of some compaction
- Returns:
- whether this should be a large or small compaction
needsSingleStripeCompaction
protected boolean needsSingleStripeCompaction(StripeCompactionPolicy.StripeInformationProvider si)
- Parameters:
si
- StoreFileManager.
- Returns:
- Whether any stripe potentially needs compaction.
selectSingleStripeCompaction
protected StripeCompactionPolicy.StripeCompactionRequest selectSingleStripeCompaction(StripeCompactionPolicy.StripeInformationProvider si,
boolean includeL0,
boolean canDropDeletesWithoutL0,
boolean isOffpeak)
throws IOException
- Throws:
IOException
getTotalFileSize
public static long getTotalFileSize(Collection<StoreFile> candidates)
Copyright © 2007–2016 The Apache Software Foundation. All rights reserved.