|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |
java.lang.Object org.apache.accumulo.core.iterators.WrappingIterator org.apache.accumulo.core.iterators.Combiner
public abstract class Combiner
A SortedKeyValueIterator that combines the Values for different versions of a Key into a single Value. Combiner will replace one or more versions of a Key
and their Values with the most recent Key and a Value which is the result of the reduce method.
Subclasses must implement a reduce method: public Value reduce(Key key, Iterator<Value> iter)
.
This reduce method will be passed the most recent Key and an iterator over the Values for all non-deleted versions of that Key.
Nested Class Summary | |
---|---|
static class |
Combiner.ValueIterator
A Java Iterator that iterates over the Values for a given Key from a source SortedKeyValueIterator. |
Nested classes/interfaces inherited from interface org.apache.accumulo.core.iterators.OptionDescriber |
---|
OptionDescriber.IteratorOptions |
Field Summary | |
---|---|
protected static String |
ALL_OPTION
|
protected static String |
COLUMNS_OPTION
|
Constructor Summary | |
---|---|
Combiner()
|
Method Summary | |
---|---|
SortedKeyValueIterator<Key,Value> |
deepCopy(IteratorEnvironment env)
Creates a deep copy of this iterator as though seek had not yet been called. |
OptionDescriber.IteratorOptions |
describeOptions()
Gets an iterator options object that contains information needed to configure this iterator. |
Key |
getTopKey()
Returns top key. |
Value |
getTopValue()
Returns top value. |
boolean |
hasTop()
Returns true if the iterator has more elements. |
void |
init(SortedKeyValueIterator<Key,Value> source,
Map<String,String> options,
IteratorEnvironment env)
Initializes the iterator. |
void |
next()
Advances to the next K,V pair. |
abstract Value |
reduce(Key key,
Iterator<Value> iter)
Reduces a list of Values into a single Value. |
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. |
static void |
setColumns(IteratorSetting is,
List<IteratorSetting.Column> columns)
A convenience method to set which columns a combiner should be applied to. |
static void |
setCombineAllColumns(IteratorSetting is,
boolean combineAllColumns)
A convenience method to set the "all columns" option on a Combiner. |
boolean |
validateOptions(Map<String,String> options)
Check to see if an options map contains all options required by an iterator and that the option values are in the expected formats. |
Methods inherited from class org.apache.accumulo.core.iterators.WrappingIterator |
---|
getSource, setSource |
Methods inherited from class java.lang.Object |
---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
Field Detail |
---|
protected static final String COLUMNS_OPTION
protected static final String ALL_OPTION
Constructor Detail |
---|
public Combiner()
Method Detail |
---|
public Key getTopKey()
SortedKeyValueIterator
getTopKey
in interface SortedKeyValueIterator<Key,Value>
getTopKey
in class WrappingIterator
public Value getTopValue()
SortedKeyValueIterator
getTopValue
in interface SortedKeyValueIterator<Key,Value>
getTopValue
in class WrappingIterator
public boolean hasTop()
SortedKeyValueIterator
hasTop
in interface SortedKeyValueIterator<Key,Value>
hasTop
in class WrappingIterator
public void next() throws IOException
SortedKeyValueIterator
next
in interface SortedKeyValueIterator<Key,Value>
next
in class WrappingIterator
IOException
- if an I/O error occurs.public void seek(Range range, Collection<ByteSequence> columnFamilies, boolean inclusive) throws IOException
SortedKeyValueIterator
seek
in interface SortedKeyValueIterator<Key,Value>
seek
in class WrappingIterator
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.public abstract Value reduce(Key key, Iterator<Value> iter)
key
- The most recent version of the Key being reduced.iter
- An iterator over the Values for different versions of the key.
public void init(SortedKeyValueIterator<Key,Value> source, Map<String,String> options, IteratorEnvironment env) throws IOException
SortedKeyValueIterator
init
in interface SortedKeyValueIterator<Key,Value>
init
in class WrappingIterator
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.public SortedKeyValueIterator<Key,Value> deepCopy(IteratorEnvironment env)
SortedKeyValueIterator
deepCopy
in interface SortedKeyValueIterator<Key,Value>
deepCopy
in class WrappingIterator
env
- IteratorEnvironment environment in which iterator is being run.
public OptionDescriber.IteratorOptions describeOptions()
OptionDescriber
describeOptions
in interface OptionDescriber
public boolean validateOptions(Map<String,String> options)
OptionDescriber
validateOptions
in interface OptionDescriber
options
- a map of option names to option values
public static void setColumns(IteratorSetting is, List<IteratorSetting.Column> columns)
is
- iterator settings object to configurecolumns
- a list of columns to encode as the value for the combiner column configurationpublic static void setCombineAllColumns(IteratorSetting is, boolean combineAllColumns)
is
- iterator settings object to configurecombineAllColumns
- if true, the columns option is ignored and the Combiner will be applied to all columns
|
||||||||||
PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD |