@InterfaceAudience.Private public class HFileDataBlockEncoderImpl extends Object implements HFileDataBlockEncoder
DATA_BLOCK_ENCODING| Constructor and Description |
|---|
HFileDataBlockEncoderImpl(DataBlockEncoding encoding)
Do data block encoding with specified options.
|
| Modifier and Type | Method and Description |
|---|---|
void |
beforeWriteToDisk(ByteBuffer in,
boolean includesMemstoreTS,
HFileBlockEncodingContext encodeCtx,
BlockType blockType)
Precondition: a non-encoded buffer.
|
static HFileDataBlockEncoder |
createFromFileInfo(org.apache.hadoop.hbase.io.hfile.HFile.FileInfo fileInfo) |
DataBlockEncoding |
getDataBlockEncoding() |
HFileBlockDecodingContext |
newDataBlockDecodingContext(Compression.Algorithm compressionAlgorithm)
create a encoder specific decoding context for reading.
|
HFileBlockEncodingContext |
newDataBlockEncodingContext(Compression.Algorithm compressionAlgorithm,
byte[] dummyHeader)
Create an encoder specific encoding context object for writing.
|
void |
saveMetadata(HFile.Writer writer)
Save metadata in HFile which will be written to disk
|
String |
toString() |
boolean |
useEncodedScanner()
Decides whether we should use a scanner over encoded blocks.
|
public HFileDataBlockEncoderImpl(DataBlockEncoding encoding)
encoding - What kind of data block encoding will be used.public static HFileDataBlockEncoder createFromFileInfo(org.apache.hadoop.hbase.io.hfile.HFile.FileInfo fileInfo) throws IOException
IOExceptionpublic void saveMetadata(HFile.Writer writer) throws IOException
HFileDataBlockEncodersaveMetadata in interface HFileDataBlockEncoderwriter - writer for a given HFileIOException - on disk problemspublic DataBlockEncoding getDataBlockEncoding()
getDataBlockEncoding in interface HFileDataBlockEncoderpublic void beforeWriteToDisk(ByteBuffer in, boolean includesMemstoreTS, HFileBlockEncodingContext encodeCtx, BlockType blockType) throws IOException
HFileBlockEncodingContext.beforeWriteToDisk in interface HFileDataBlockEncoderin - KeyValues next to each otherencodeCtx - the encoded resultblockType - block typeIOExceptionpublic boolean useEncodedScanner()
HFileDataBlockEncoderuseEncodedScanner in interface HFileDataBlockEncoderpublic HFileBlockEncodingContext newDataBlockEncodingContext(Compression.Algorithm compressionAlgorithm, byte[] dummyHeader)
HFileDataBlockEncodernewDataBlockEncodingContext in interface HFileDataBlockEncodercompressionAlgorithm - compression algorithmdummyHeader - header bytesHFileBlockEncodingContext objectpublic HFileBlockDecodingContext newDataBlockDecodingContext(Compression.Algorithm compressionAlgorithm)
HFileDataBlockEncodernewDataBlockDecodingContext in interface HFileDataBlockEncoderHFileBlockDecodingContext objectCopyright © 2014 The Apache Software Foundation. All Rights Reserved.