|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Objectorg.apache.hadoop.hbase.io.hfile.AbstractHFileReader
org.apache.hadoop.hbase.io.hfile.HFileReaderV1
public class HFileReaderV1
HFile
reader for version 1.
Nested Class Summary | |
---|---|
protected static class |
HFileReaderV1.ScannerV1
Implementation of HFileScanner interface. |
Nested classes/interfaces inherited from class org.apache.hadoop.hbase.io.hfile.AbstractHFileReader |
---|
AbstractHFileReader.BlockIndexNotLoadedException, AbstractHFileReader.NotSeekedException, AbstractHFileReader.Scanner |
Field Summary |
---|
Fields inherited from class org.apache.hadoop.hbase.io.hfile.AbstractHFileReader |
---|
avgKeyLen, avgValueLen, blockLoads, cacheConf, cacheHits, closeIStream, comparator, compressAlgo, dataBlockIndexReader, fileInfo, fileSize, fsBlockReader, istream, lastKey, metaBlockIndexReader, metaLoads, name, path, trailer |
Constructor Summary | |
---|---|
HFileReaderV1(org.apache.hadoop.fs.Path path,
FixedFileTrailer trailer,
org.apache.hadoop.fs.FSDataInputStream fsdis,
long size,
boolean closeIStream,
CacheConfig cacheConf)
Opens a HFile. |
Method Summary | |
---|---|
protected int |
blockContainingKey(byte[] key,
int offset,
int length)
|
void |
close()
|
void |
close(boolean evictOnClose)
Close method with optional evictOnClose |
DataInput |
getBloomFilterMetadata()
Retrieves Bloom filter metadata as appropriate for each HFile
version. |
byte[] |
getLastKey()
|
ByteBuffer |
getMetaBlock(String metaBlockName,
boolean cacheBlock)
|
HFileScanner |
getScanner(boolean cacheBlocks,
boolean pread,
boolean isCompaction)
Create a Scanner on this file. |
boolean |
isFileInfoLoaded()
|
org.apache.hadoop.hbase.io.hfile.HFile.FileInfo |
loadFileInfo()
Read in the index and file info. |
byte[] |
midkey()
|
HFileBlock |
readBlock(long offset,
long onDiskBlockSize,
boolean cacheBlock,
boolean pread,
boolean isCompaction)
|
Methods inherited from class org.apache.hadoop.hbase.io.hfile.AbstractHFileReader |
---|
getColumnFamilyName, getComparator, getCompressionAlgorithm, getDataBlockIndexReader, getEntries, getFirstKey, getFirstRowKey, getLastRowKey, getName, getPath, getScanner, getTrailer, indexSize, length, parseCfNameFromPath, toString, toStringFirstKey, toStringLastKey |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
Constructor Detail |
---|
public HFileReaderV1(org.apache.hadoop.fs.Path path, FixedFileTrailer trailer, org.apache.hadoop.fs.FSDataInputStream fsdis, long size, boolean closeIStream, CacheConfig cacheConf)
loadFileInfo()
.
fsdis
- input stream. Caller is responsible for closing the passed
stream.size
- Length of the stream.cacheConf
- cache references and configurationMethod Detail |
---|
public org.apache.hadoop.hbase.io.hfile.HFile.FileInfo loadFileInfo() throws IOException
loadFileInfo
in interface HFile.Reader
loadFileInfo
in class AbstractHFileReader
IOException
HFile.Writer.appendFileInfo(byte[], byte[])
public HFileScanner getScanner(boolean cacheBlocks, boolean pread, boolean isCompaction)
HFileScanner.seekTo(byte[])
to position an start the read. There is
nothing to clean up in a Scanner. Letting go of your references to the
scanner is sufficient.
cacheBlocks
- True if we should cache blocks read in by this scanner.pread
- Use positional read rather than seek+read if true (pread is
better for random reads, seek+read is better scanning).isCompaction
- is scanner being used for a compaction?
protected int blockContainingKey(byte[] key, int offset, int length)
key
- Key to search.
public ByteBuffer getMetaBlock(String metaBlockName, boolean cacheBlock) throws IOException
metaBlockName
- cacheBlock
- Add block to cache, if found
IOException
public byte[] getLastKey()
public byte[] midkey() throws IOException
IOException
public void close() throws IOException
IOException
public void close(boolean evictOnClose) throws IOException
HFile.Reader
IOException
public HFileBlock readBlock(long offset, long onDiskBlockSize, boolean cacheBlock, boolean pread, boolean isCompaction)
public DataInput getBloomFilterMetadata() throws IOException
HFile.Reader
HFile
version. Knows nothing about how that metadata is structured.
IOException
public boolean isFileInfoLoaded()
isFileInfoLoaded
in class AbstractHFileReader
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |