public interface SortedKeyValueIterator<K extends org.apache.hadoop.io.WritableComparable<?>,V extends org.apache.hadoop.io.Writable>
Modifier and Type | Method and Description |
---|---|
SortedKeyValueIterator<K,V> |
deepCopy(IteratorEnvironment env)
Creates a deep copy of this iterator as though seek had not yet been called.
|
K |
getTopKey()
Returns top key.
|
V |
getTopValue()
Returns top value.
|
boolean |
hasTop()
Returns true if the iterator has more elements.
|
void |
init(SortedKeyValueIterator<K,V> source,
Map<String,String> options,
IteratorEnvironment env)
Initializes the iterator.
|
void |
next()
Advances to the next K,V pair.
|
void |
seek(Range range,
Collection<ByteSequence> columnFamilies,
boolean inclusive)
Seeks to the first key in the Range, restricting the resulting K,V pairs to those with the specified columns.
|
void init(SortedKeyValueIterator<K,V> source, Map<String,String> options, IteratorEnvironment env) throws IOException
source
- SortedKeyValueIterator source to read data from.options
- Map map of string option names to option values.env
- IteratorEnvironment environment in which iterator is being run.IOException
- unused.IllegalArgumentException
- if there are problems with the options.UnsupportedOperationException
- if not supported.boolean hasTop()
IllegalStateException
- if called before seek.void next() throws IOException
IOException
- if an I/O error occurs.IllegalStateException
- if called before seek.NoSuchElementException
- if next element doesn't exist.void seek(Range range, Collection<ByteSequence> columnFamilies, boolean inclusive) throws IOException
init(org.apache.accumulo.core.iterators.SortedKeyValueIterator<K, V>, java.util.Map<java.lang.String, java.lang.String>, org.apache.accumulo.core.iterators.IteratorEnvironment)
is called.
Iterators that examine groups of adjacent key/value pairs (e.g. rows) to determine their top key and value should be sure that they properly handle a seek
to a key in the middle of such a group (e.g. the middle of a row). Even if the client always seeks to a range containing an entire group (a,c), the tablet
server could send back a batch of entries corresponding to (a,b], then reseek the iterator to range (b,c) when the scan is continued.range
- Range of keys to iterate over.columnFamilies
- Collection of column families to include or exclude.inclusive
- boolean that indicates whether to include (true) or exclude (false) column families.IOException
- if an I/O error occurs.IllegalArgumentException
- if there are problems with the parameters.K getTopKey()
IllegalStateException
- if called before seek.NoSuchElementException
- if top element doesn't exist.V getTopValue()
IllegalStateException
- if called before seek.NoSuchElementException
- if top element doesn't exist.SortedKeyValueIterator<K,V> deepCopy(IteratorEnvironment env)
env
- IteratorEnvironment environment in which iterator is being run.UnsupportedOperationException
- if not supported.Copyright © 2012 The Apache Software Foundation. All Rights Reserved.