|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.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 WrappingIteratorpublic Value getTopValue()
SortedKeyValueIterator
getTopValue in interface SortedKeyValueIterator<Key,Value>getTopValue in class WrappingIteratorpublic 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 WrappingIteratorIOException - 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 WrappingIteratorrange - 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 WrappingIteratorsource - 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 WrappingIteratorenv - IteratorEnvironment environment in which iterator is being run.
public OptionDescriber.IteratorOptions describeOptions()
OptionDescriber
describeOptions in interface OptionDescriberpublic boolean validateOptions(Map<String,String> options)
OptionDescriber
validateOptions in interface OptionDescriberoptions - 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 configuration
public 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 | |||||||||