@InterfaceAudience.Private public class HFileDataBlockEncoderImpl extends Object implements HFileDataBlockEncoder
DATA_BLOCK_ENCODING| Constructor and Description |
|---|
HFileDataBlockEncoderImpl(org.apache.hadoop.hbase.io.encoding.DataBlockEncoding encoding)
Do data block encoding with specified options.
|
| Modifier and Type | Method and Description |
|---|---|
static HFileDataBlockEncoder |
createFromFileInfo(HFile.FileInfo fileInfo) |
int |
encode(org.apache.hadoop.hbase.Cell cell,
org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext encodingCtx,
DataOutputStream out)
Encodes a KeyValue.
|
void |
endBlockEncoding(org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext encodingCtx,
DataOutputStream out,
byte[] uncompressedBytesWithHeader,
org.apache.hadoop.hbase.io.hfile.BlockType blockType)
Ends encoding for a block of KeyValues.
|
org.apache.hadoop.hbase.io.encoding.DataBlockEncoding |
getDataBlockEncoding() |
org.apache.hadoop.hbase.io.encoding.DataBlockEncoding |
getEffectiveEncodingInCache(boolean isCompaction) |
org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext |
newDataBlockDecodingContext(org.apache.hadoop.hbase.io.hfile.HFileContext fileContext)
create a encoder specific decoding context for reading.
|
org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext |
newDataBlockEncodingContext(byte[] dummyHeader,
org.apache.hadoop.hbase.io.hfile.HFileContext fileContext)
Create an encoder specific encoding context object for writing.
|
void |
saveMetadata(HFile.Writer writer)
Save metadata in HFile which will be written to disk
|
void |
startBlockEncoding(org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext encodingCtx,
DataOutputStream out)
Starts encoding for a block of KeyValues.
|
String |
toString() |
boolean |
useEncodedScanner()
Decides whether we should use a scanner over encoded blocks.
|
boolean |
useEncodedScanner(boolean isCompaction) |
public HFileDataBlockEncoderImpl(org.apache.hadoop.hbase.io.encoding.DataBlockEncoding encoding)
encoding - What kind of data block encoding will be used.public static HFileDataBlockEncoder createFromFileInfo(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 org.apache.hadoop.hbase.io.encoding.DataBlockEncoding getDataBlockEncoding()
getDataBlockEncoding in interface HFileDataBlockEncoderpublic boolean useEncodedScanner(boolean isCompaction)
public org.apache.hadoop.hbase.io.encoding.DataBlockEncoding getEffectiveEncodingInCache(boolean isCompaction)
getEffectiveEncodingInCache in interface HFileDataBlockEncoderpublic int encode(org.apache.hadoop.hbase.Cell cell,
org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext encodingCtx,
DataOutputStream out)
throws IOException
HFileDataBlockEncoderencode in interface HFileDataBlockEncoderIOExceptionpublic boolean useEncodedScanner()
HFileDataBlockEncoderuseEncodedScanner in interface HFileDataBlockEncoderpublic org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext newDataBlockEncodingContext(byte[] dummyHeader,
org.apache.hadoop.hbase.io.hfile.HFileContext fileContext)
HFileDataBlockEncodernewDataBlockEncodingContext in interface HFileDataBlockEncoderdummyHeader - header bytesfileContext - HFile meta dataHFileBlockEncodingContext objectpublic org.apache.hadoop.hbase.io.encoding.HFileBlockDecodingContext newDataBlockDecodingContext(org.apache.hadoop.hbase.io.hfile.HFileContext fileContext)
HFileDataBlockEncodernewDataBlockDecodingContext in interface HFileDataBlockEncoderfileContext - - HFile meta dataHFileBlockDecodingContext objectpublic void startBlockEncoding(org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext encodingCtx,
DataOutputStream out)
throws IOException
HFileDataBlockEncoderHFileDataBlockEncoder.endBlockEncoding(HFileBlockEncodingContext, DataOutputStream, byte[], BlockType)
to finish encoding of a block.startBlockEncoding in interface HFileDataBlockEncoderIOExceptionpublic void endBlockEncoding(org.apache.hadoop.hbase.io.encoding.HFileBlockEncodingContext encodingCtx,
DataOutputStream out,
byte[] uncompressedBytesWithHeader,
org.apache.hadoop.hbase.io.hfile.BlockType blockType)
throws IOException
HFileDataBlockEncoderendBlockEncoding in interface HFileDataBlockEncoderIOExceptionCopyright © 2007–2020 The Apache Software Foundation. All rights reserved.