|
||||||||||
| 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
org.apache.accumulo.core.iterators.TypedValueCombiner<V>
public abstract class TypedValueCombiner<V>
A Combiner that decodes each Value to type V before reducing, then encodes the result of typedReduce back to Value.
Subclasses must implement a typedReduce method: public V typedReduce(Key key, Iterator<V> iter);
This typedReduce method will be passed the most recent Key and an iterator over the Values (translated to Vs) for all non-deleted versions of that Key.
Subclasses may implement a switch on the "type" variable to choose an Encoder in their init method.
| Nested Class Summary | |
|---|---|
static interface |
TypedValueCombiner.Encoder<V>
An interface for translating from byte[] to V and back. |
| Nested classes/interfaces inherited from class org.apache.accumulo.core.iterators.Combiner |
|---|
Combiner.ValueIterator |
| Nested classes/interfaces inherited from interface org.apache.accumulo.core.iterators.OptionDescriber |
|---|
OptionDescriber.IteratorOptions |
| Field Summary | |
|---|---|
protected static String |
LOSSY
|
| Fields inherited from class org.apache.accumulo.core.iterators.Combiner |
|---|
ALL_OPTION, COLUMNS_OPTION |
| Constructor Summary | |
|---|---|
TypedValueCombiner()
|
|
| 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. |
|
void |
init(SortedKeyValueIterator<Key,Value> source,
Map<String,String> options,
IteratorEnvironment env)
Initializes the iterator. |
|
Value |
reduce(Key key,
Iterator<Value> iter)
Reduces a list of Values into a single Value. |
|
protected void |
setEncoder(String encoderClass)
Instantiates and sets the Encoder<V> used to translate Values to V and back. |
|
protected void |
setEncoder(TypedValueCombiner.Encoder<V> encoder)
Sets the Encoder<V> used to translate Values to V and back. |
|
static void |
setLossyness(IteratorSetting is,
boolean lossy)
A convenience method to set the "lossy" option on a TypedValueCombiner. |
|
static
|
testEncoder(TypedValueCombiner.Encoder<V> encoder,
V v)
Tests whether v remains the same when encoded and decoded with the given encoder. |
|
protected void |
testEncoder(V v)
Tests whether v remains the same when encoded and decoded with the current encoder. |
|
abstract V |
typedReduce(Key key,
Iterator<V> iter)
Reduces a list of V into a single V. |
|
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.Combiner |
|---|
getTopKey, getTopValue, hasTop, next, seek, setColumns, setCombineAllColumns |
| 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 LOSSY
| Constructor Detail |
|---|
public TypedValueCombiner()
| Method Detail |
|---|
protected void setEncoder(TypedValueCombiner.Encoder<V> encoder)
Encoder<V> used to translate Values to V and back.
protected void setEncoder(String encoderClass)
Encoder<V> used to translate Values to V and back.
IllegalArgumentException - if ClassNotFoundException, InstantiationException, or IllegalAccessException occursprotected void testEncoder(V v)
IllegalStateException - if an encoder has not been set.
IllegalArgumentException - if the test fails.
public static <V> void testEncoder(TypedValueCombiner.Encoder<V> encoder,
V v)
IllegalArgumentException - if the test fails.public SortedKeyValueIterator<Key,Value> deepCopy(IteratorEnvironment env)
SortedKeyValueIterator
deepCopy in interface SortedKeyValueIterator<Key,Value>deepCopy in class Combinerenv - IteratorEnvironment environment in which iterator is being run.
public Value reduce(Key key,
Iterator<Value> iter)
Combiner
reduce in class Combinerkey - 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 Combinersource - 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 OptionDescriber.IteratorOptions describeOptions()
OptionDescriber
describeOptions in interface OptionDescriberdescribeOptions in class Combinerpublic boolean validateOptions(Map<String,String> options)
OptionDescriber
validateOptions in interface OptionDescribervalidateOptions in class Combineroptions - a map of option names to option values
public static void setLossyness(IteratorSetting is,
boolean lossy)
is - iterator settings object to configurelossy - if true the combiner will ignored values which fail to decode; otherwise error.
public abstract V typedReduce(Key key,
Iterator<V> iter)
key - The most recent version of the Key being reduced.iter - An iterator over the V for different versions of the key.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||