@InterfaceAudience.Private public class StripeCompactionPolicy extends CompactionPolicy
| Modifier and Type | Class and Description | 
|---|---|
| private static class  | StripeCompactionPolicy.BoundaryStripeCompactionRequestRequest for stripe compactor that will cause it to split the source files into several
 separate files at the provided boundaries. | 
| private static class  | StripeCompactionPolicy.SplitStripeCompactionRequestRequest for stripe compactor that will cause it to split the source files into several
 separate files into based on key-value count, as well as file count limit. | 
| static class  | StripeCompactionPolicy.StripeCompactionRequestStripe compaction request wrapper. | 
| static interface  | StripeCompactionPolicy.StripeInformationProviderThe information about stripes that the policy needs to do its stuff | 
| Modifier and Type | Field and Description | 
|---|---|
| private StripeStoreConfig | config | 
| private static org.slf4j.Logger | LOG | 
| private ExploringCompactionPolicy | stripePolicy | 
comConf, storeConfigInfo| Constructor and Description | 
|---|
| StripeCompactionPolicy(org.apache.hadoop.conf.Configuration conf,
                      StoreConfigInformation storeConfigInfo,
                      StripeStoreConfig config) | 
getConf, setConfprivate static final org.slf4j.Logger LOG
private ExploringCompactionPolicy stripePolicy
private StripeStoreConfig config
public StripeCompactionPolicy(org.apache.hadoop.conf.Configuration conf, StoreConfigInformation storeConfigInfo, StripeStoreConfig config)
public List<HStoreFile> preSelectFilesForCoprocessor(StripeCompactionPolicy.StripeInformationProvider si, List<HStoreFile> filesCompacting)
public StripeCompactionPolicy.StripeCompactionRequest createEmptyRequest(StripeCompactionPolicy.StripeInformationProvider si, CompactionRequestImpl request)
public StripeStoreFlusher.StripeFlushRequest selectFlush(CellComparator comparator, StripeCompactionPolicy.StripeInformationProvider si, int kvCount)
public StripeCompactionPolicy.StripeCompactionRequest selectCompaction(StripeCompactionPolicy.StripeInformationProvider si, List<HStoreFile> filesCompacting, boolean isOffpeak) throws IOException
IOExceptionpublic boolean needsCompactions(StripeCompactionPolicy.StripeInformationProvider si, List<HStoreFile> filesCompacting)
public boolean shouldPerformMajorCompaction(Collection<HStoreFile> filesToCompact) throws IOException
shouldPerformMajorCompaction in class CompactionPolicyfilesToCompact - Files to compact. Can be null.IOExceptionpublic boolean throttleCompaction(long compactionSize)
throttleCompaction in class CompactionPolicycompactionSize - Total size of some compactionprotected boolean needsSingleStripeCompaction(StripeCompactionPolicy.StripeInformationProvider si)
si - StoreFileManager.protected StripeCompactionPolicy.StripeCompactionRequest selectSingleStripeCompaction(StripeCompactionPolicy.StripeInformationProvider si, boolean includeL0, boolean canDropDeletesWithoutL0, boolean isOffpeak) throws IOException
IOExceptionprivate List<HStoreFile> selectSimpleCompaction(List<HStoreFile> sfs, boolean allFilesOnly, boolean isOffpeak)
sfs - Files.allFilesOnly - Whether a compaction of all-or-none files is needed.private StripeCompactionPolicy.StripeCompactionRequest selectNewStripesCompaction(StripeCompactionPolicy.StripeInformationProvider si)
private StripeCompactionPolicy.StripeCompactionRequest selectExpiredMergeCompaction(StripeCompactionPolicy.StripeInformationProvider si, boolean canDropDeletesNoL0)
private static long getTotalKvCount(Collection<HStoreFile> candidates)
public static long getTotalFileSize(Collection<HStoreFile> candidates)
private Pair<Long,Integer> estimateTargetKvs(Collection<HStoreFile> files, double splitCount)
Copyright © 2007–2021 The Apache Software Foundation. All rights reserved.