|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.hadoop.io.file.tfile.TFile.Reader
@InterfaceStability.Evolving public static class TFile.Reader
TFile Reader. Users may only read TFiles by creating TFile.Reader.Scanner.
objects. A scanner may scan the whole TFile (createScanner()
) , a portion of TFile based on byte offsets (
createScannerByByteRange(long, long)
), or a portion of TFile with keys
fall in a certain key range (for sorted TFile only,
createScannerByKey(byte[], byte[])
or
createScannerByKey(RawComparable, RawComparable)
).
Nested Class Summary | |
---|---|
static class |
TFile.Reader.Scanner
The TFile Scanner. |
Constructor Summary | |
---|---|
TFile.Reader(FSDataInputStream fsdis,
long fileLength,
Configuration conf)
Constructor |
Method Summary | |
---|---|
void |
close()
Close the reader. |
TFile.Reader.Scanner |
createScanner()
Get a scanner than can scan the whole TFile. |
TFile.Reader.Scanner |
createScanner(byte[] beginKey,
byte[] endKey)
Deprecated. Use createScannerByKey(byte[], byte[]) instead. |
TFile.Reader.Scanner |
createScanner(RawComparable beginKey,
RawComparable endKey)
Deprecated. Use createScannerByKey(RawComparable, RawComparable)
instead. |
TFile.Reader.Scanner |
createScannerByByteRange(long offset,
long length)
Get a scanner that covers a portion of TFile based on byte offsets. |
TFile.Reader.Scanner |
createScannerByKey(byte[] beginKey,
byte[] endKey)
Get a scanner that covers a portion of TFile based on keys. |
TFile.Reader.Scanner |
createScannerByKey(RawComparable beginKey,
RawComparable endKey)
Get a scanner that covers a specific key range. |
TFile.Reader.Scanner |
createScannerByRecordNum(long beginRecNum,
long endRecNum)
Create a scanner that covers a range of records. |
Comparator<RawComparable> |
getComparator()
Get an instance of the RawComparator that is constructed based on the string comparator representation. |
String |
getComparatorName()
Get the string representation of the comparator. |
Comparator<TFile.Reader.Scanner.Entry> |
getEntryComparator()
Get a Comparator object to compare Entries. |
long |
getEntryCount()
Get the number of key-value pair entries in TFile. |
RawComparable |
getFirstKey()
Get the first key in the TFile. |
RawComparable |
getKeyNear(long offset)
Get a sample key that is within a block whose starting offset is greater than or equal to the specified offset. |
RawComparable |
getLastKey()
Get the last key in the TFile. |
DataInputStream |
getMetaBlock(String name)
Stream access to a meta block.`` |
long |
getRecordNumNear(long offset)
Get the RecordNum for the first key-value pair in a compressed block whose byte offset in the TFile is greater than or equal to the specified offset. |
boolean |
isSorted()
Is the TFile sorted? |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Constructor Detail |
---|
public TFile.Reader(FSDataInputStream fsdis, long fileLength, Configuration conf) throws IOException
fsdis
- FS input stream of the TFile.fileLength
- The length of TFile. This is required because we have no easy
way of knowing the actual size of the input file through the
File input stream.conf
-
IOException
Method Detail |
---|
public void close() throws IOException
close
in interface Closeable
IOException
public String getComparatorName()
public boolean isSorted()
public long getEntryCount()
public RawComparable getFirstKey() throws IOException
IOException
public RawComparable getLastKey() throws IOException
IOException
public Comparator<TFile.Reader.Scanner.Entry> getEntryComparator()
public Comparator<RawComparable> getComparator()
public DataInputStream getMetaBlock(String name) throws IOException, MetaBlockDoesNotExist
name
- The name of the meta block.
IOException
- on I/O error.
MetaBlockDoesNotExist
- If the meta block with the name does not exist.public long getRecordNumNear(long offset) throws IOException
offset
- the user supplied offset.
IOException
public RawComparable getKeyNear(long offset) throws IOException
offset
- The file offset.
IOException
public TFile.Reader.Scanner createScanner() throws IOException
IOException
public TFile.Reader.Scanner createScannerByByteRange(long offset, long length) throws IOException
offset
- The beginning byte offset in the TFile.length
- The length of the region.
IOException
@Deprecated public TFile.Reader.Scanner createScanner(byte[] beginKey, byte[] endKey) throws IOException
createScannerByKey(byte[], byte[])
instead.
beginKey
- Begin key of the scan (inclusive). If null, scan from the first
key-value entry of the TFile.endKey
- End key of the scan (exclusive). If null, scan up to the last
key-value entry of the TFile.
IOException
public TFile.Reader.Scanner createScannerByKey(byte[] beginKey, byte[] endKey) throws IOException
beginKey
- Begin key of the scan (inclusive). If null, scan from the first
key-value entry of the TFile.endKey
- End key of the scan (exclusive). If null, scan up to the last
key-value entry of the TFile.
IOException
@Deprecated public TFile.Reader.Scanner createScanner(RawComparable beginKey, RawComparable endKey) throws IOException
createScannerByKey(RawComparable, RawComparable)
instead.
beginKey
- Begin key of the scan (inclusive). If null, scan from the first
key-value entry of the TFile.endKey
- End key of the scan (exclusive). If null, scan up to the last
key-value entry of the TFile.
IOException
public TFile.Reader.Scanner createScannerByKey(RawComparable beginKey, RawComparable endKey) throws IOException
beginKey
- Begin key of the scan (inclusive). If null, scan from the first
key-value entry of the TFile.endKey
- End key of the scan (exclusive). If null, scan up to the last
key-value entry of the TFile.
IOException
public TFile.Reader.Scanner createScannerByRecordNum(long beginRecNum, long endRecNum) throws IOException
beginRecNum
- The RecordNum for the first record (inclusive).endRecNum
- The RecordNum for the last record (exclusive). To scan the whole
file, either specify endRecNum==-1 or endRecNum==getEntryCount().
IOException
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |