@InterfaceAudience.Private public abstract class StoreEngine<SF extends StoreFlusher,CP extends CompactionPolicy,C extends Compactor,SFM extends StoreFileManager> extends Object
| Modifier and Type | Field and Description | 
|---|---|
protected CP | 
compactionPolicy  | 
protected C | 
compactor  | 
private static Class<? extends StoreEngine<?,?,?,?>> | 
DEFAULT_STORE_ENGINE_CLASS  | 
static String | 
STORE_ENGINE_CLASS_KEY
The name of the configuration parameter that specifies the class of
 a store engine that is used to manage and compact HBase store files. 
 | 
protected SFM | 
storeFileManager  | 
protected SF | 
storeFlusher  | 
| Constructor and Description | 
|---|
StoreEngine()  | 
| Modifier and Type | Method and Description | 
|---|---|
static StoreEngine<?,?,?,?> | 
create(HStore store,
      org.apache.hadoop.conf.Configuration conf,
      CellComparator cellComparator)
Create the StoreEngine configured for the given Store. 
 | 
abstract CompactionContext | 
createCompaction()
Creates an instance of a compaction context specific to this engine. 
 | 
protected abstract void | 
createComponents(org.apache.hadoop.conf.Configuration conf,
                HStore store,
                CellComparator cellComparator)
Create the StoreEngine's components. 
 | 
private void | 
createComponentsOnce(org.apache.hadoop.conf.Configuration conf,
                    HStore store,
                    CellComparator cellComparator)  | 
CompactionPolicy | 
getCompactionPolicy()  | 
Compactor | 
getCompactor()  | 
StoreFileManager | 
getStoreFileManager()  | 
StoreFlusher | 
getStoreFlusher()  | 
abstract boolean | 
needsCompaction(List<HStoreFile> filesCompacting)  | 
protected SF extends StoreFlusher storeFlusher
protected CP extends CompactionPolicy compactionPolicy
protected SFM extends StoreFileManager storeFileManager
public static final String STORE_ENGINE_CLASS_KEY
private static final Class<? extends StoreEngine<?,?,?,?>> DEFAULT_STORE_ENGINE_CLASS
public StoreEngine()
public CompactionPolicy getCompactionPolicy()
public Compactor getCompactor()
public StoreFileManager getStoreFileManager()
public StoreFlusher getStoreFlusher()
public abstract boolean needsCompaction(List<HStoreFile> filesCompacting)
filesCompacting - Files currently compactingpublic abstract CompactionContext createCompaction() throws IOException
IOExceptionprotected abstract void createComponents(org.apache.hadoop.conf.Configuration conf, HStore store, CellComparator cellComparator) throws IOException
IOExceptionprivate void createComponentsOnce(org.apache.hadoop.conf.Configuration conf, HStore store, CellComparator cellComparator) throws IOException
IOExceptionpublic static StoreEngine<?,?,?,?> create(HStore store, org.apache.hadoop.conf.Configuration conf, CellComparator cellComparator) throws IOException
store - The store. An unfortunate dependency needed due to it
              being passed to coprocessors via the compactor.conf - Store configuration.cellComparator - CellComparator for storeFileManager.IOExceptionCopyright © 2007–2020 The Apache Software Foundation. All rights reserved.