org.apache.hadoop.hbase.regionserver
Class DateTieredStoreEngine

java.lang.Object
  extended by org.apache.hadoop.hbase.regionserver.StoreEngine<DefaultStoreFlusher,DateTieredCompactionPolicy,DateTieredCompactor,org.apache.hadoop.hbase.regionserver.DefaultStoreFileManager>
      extended by org.apache.hadoop.hbase.regionserver.DateTieredStoreEngine

@InterfaceAudience.Private
public class DateTieredStoreEngine
extends StoreEngine<DefaultStoreFlusher,DateTieredCompactionPolicy,DateTieredCompactor,org.apache.hadoop.hbase.regionserver.DefaultStoreFileManager>

HBASE-15400 This store engine allows us to store data in date tiered layout with exponential sizing so that the more recent data has more granularity. Time-range scan will perform the best with most recent data. When data reach maxAge, they are compacted in fixed-size time windows for TTL and archiving. Please refer to design spec for more details. https://docs.google.com/document/d/1_AmlNb2N8Us1xICsTeGDLKIqL6T-oHoRLZ323MG_uy8/edit#heading=h.uk6y5pd3oqgx


Field Summary
 
Fields inherited from class org.apache.hadoop.hbase.regionserver.StoreEngine
compactionPolicy, compactor, STORE_ENGINE_CLASS_KEY, storeFileManager, storeFlusher
 
Constructor Summary
DateTieredStoreEngine()
           
 
Method Summary
 CompactionContext createCompaction()
          Creates an instance of a compaction context specific to this engine.
protected  void createComponents(org.apache.hadoop.conf.Configuration conf, Store store, KeyValue.KVComparator kvComparator)
          Create the StoreEngine's components.
 boolean needsCompaction(List<StoreFile> filesCompacting)
           
 
Methods inherited from class org.apache.hadoop.hbase.regionserver.StoreEngine
create, getCompactionPolicy, getCompactor, getStoreFileManager, getStoreFlusher
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

DateTieredStoreEngine

public DateTieredStoreEngine()
Method Detail

needsCompaction

public boolean needsCompaction(List<StoreFile> filesCompacting)
Specified by:
needsCompaction in class StoreEngine<DefaultStoreFlusher,DateTieredCompactionPolicy,DateTieredCompactor,org.apache.hadoop.hbase.regionserver.DefaultStoreFileManager>
Parameters:
filesCompacting - Files currently compacting
Returns:
whether a compaction selection is possible

createCompaction

public CompactionContext createCompaction()
                                   throws IOException
Description copied from class: StoreEngine
Creates an instance of a compaction context specific to this engine. Doesn't actually select or start a compaction. See CompactionContext class comment.

Specified by:
createCompaction in class StoreEngine<DefaultStoreFlusher,DateTieredCompactionPolicy,DateTieredCompactor,org.apache.hadoop.hbase.regionserver.DefaultStoreFileManager>
Returns:
New CompactionContext object.
Throws:
IOException

createComponents

protected void createComponents(org.apache.hadoop.conf.Configuration conf,
                                Store store,
                                KeyValue.KVComparator kvComparator)
                         throws IOException
Description copied from class: StoreEngine
Create the StoreEngine's components.

Specified by:
createComponents in class StoreEngine<DefaultStoreFlusher,DateTieredCompactionPolicy,DateTieredCompactor,org.apache.hadoop.hbase.regionserver.DefaultStoreFileManager>
Throws:
IOException


Copyright © 2007–2016 The Apache Software Foundation. All rights reserved.