|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoderImpl
public class HFileDataBlockEncoderImpl
Do different kinds of data block encoding according to column family options.
Field Summary |
---|
Fields inherited from interface org.apache.hadoop.hbase.io.hfile.HFileDataBlockEncoder |
---|
DATA_BLOCK_ENCODING |
Constructor Summary | |
---|---|
HFileDataBlockEncoderImpl(DataBlockEncoding encoding)
|
|
HFileDataBlockEncoderImpl(DataBlockEncoding onDisk,
DataBlockEncoding inCache)
Do data block encoding with specified options. |
Method Summary | |
---|---|
Pair<ByteBuffer,BlockType> |
beforeWriteToDisk(ByteBuffer in,
boolean includesMemstoreTS,
byte[] dummyHeader)
Precondition: a non-encoded buffer. |
static HFileDataBlockEncoder |
createFromFileInfo(org.apache.hadoop.hbase.io.hfile.HFile.FileInfo fileInfo,
DataBlockEncoding preferredEncodingInCache)
|
HFileBlock |
diskToCacheFormat(HFileBlock block,
boolean isCompaction)
Converts a block from the on-disk format to the in-cache format. |
DataBlockEncoding |
getEffectiveEncodingInCache(boolean isCompaction)
|
DataBlockEncoding |
getEncodingInCache()
|
DataBlockEncoding |
getEncodingOnDisk()
|
void |
saveMetadata(HFile.Writer writer)
Save metadata in HFile which will be written to disk |
String |
toString()
|
boolean |
useEncodedScanner(boolean isCompaction)
Decides whether we should use a scanner over encoded blocks. |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public HFileDataBlockEncoderImpl(DataBlockEncoding encoding)
public HFileDataBlockEncoderImpl(DataBlockEncoding onDisk, DataBlockEncoding inCache)
onDisk
- What kind of data block encoding will be used before writing
HFileBlock to disk. This must be either the same as inCache or
DataBlockEncoding.NONE
.inCache
- What kind of data block encoding will be used in block
cache.Method Detail |
---|
public static HFileDataBlockEncoder createFromFileInfo(org.apache.hadoop.hbase.io.hfile.HFile.FileInfo fileInfo, DataBlockEncoding preferredEncodingInCache) throws IOException
IOException
public void saveMetadata(HFile.Writer writer) throws IOException
HFileDataBlockEncoder
saveMetadata
in interface HFileDataBlockEncoder
writer
- writer for a given HFile
IOException
- on disk problemspublic DataBlockEncoding getEncodingOnDisk()
getEncodingOnDisk
in interface HFileDataBlockEncoder
public DataBlockEncoding getEncodingInCache()
getEncodingInCache
in interface HFileDataBlockEncoder
public DataBlockEncoding getEffectiveEncodingInCache(boolean isCompaction)
getEffectiveEncodingInCache
in interface HFileDataBlockEncoder
public HFileBlock diskToCacheFormat(HFileBlock block, boolean isCompaction)
HFileDataBlockEncoder
diskToCacheFormat
in interface HFileDataBlockEncoder
block
- a block in an on-disk format (read from HFile or freshly
generated).
public Pair<ByteBuffer,BlockType> beforeWriteToDisk(ByteBuffer in, boolean includesMemstoreTS, byte[] dummyHeader)
beforeWriteToDisk
in interface HFileDataBlockEncoder
in
- KeyValues next to each otherdummyHeader
- A dummy header to be written as a placeholder
public boolean useEncodedScanner(boolean isCompaction)
HFileDataBlockEncoder
useEncodedScanner
in interface HFileDataBlockEncoder
isCompaction
- whether we are in a compaction.
public String toString()
toString
in class Object
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |