public static class TFile.Reader extends Object implements Closeable
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)
).限定符和类型 | 类和说明 |
---|---|
static class |
TFile.Reader.Scanner
The TFile Scanner.
|
构造器和说明 |
---|
TFile.Reader(FSDataInputStream fsdis,
long fileLength,
Configuration conf)
Constructor
|
限定符和类型 | 方法和说明 |
---|---|
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)
已过时。
Use
createScannerByKey(byte[], byte[]) instead. |
TFile.Reader.Scanner |
createScanner(RawComparable beginKey,
RawComparable endKey)
已过时。
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?
|
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
public void close() throws IOException
close
在接口中 Closeable
close
在接口中 AutoCloseable
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
Copyright © 2009 The Apache Software Foundation