public class CollapsingReducer extends ObjectReducer implements DateRangeConfigurable, java.io.Serializable
AbstractPartitionCollapsingIncrementalJob and its derived classes.
An implementation of Accumulator is used to perform aggregation and produce the
output value.
| Modifier and Type | Field and Description |
|---|---|
protected long |
_beginTime |
protected long |
_endTime |
| Constructor and Description |
|---|
CollapsingReducer() |
| Modifier and Type | Method and Description |
|---|---|
Accumulator<org.apache.avro.generic.GenericRecord,org.apache.avro.generic.GenericRecord> |
getNewAccumulator() |
Accumulator<org.apache.avro.generic.GenericRecord,org.apache.avro.generic.GenericRecord> |
getOldAccumulator() |
boolean |
getReuseOutput()
Gets whether previous output is being reused.
|
void |
reduce(java.lang.Object keyObj,
java.lang.Iterable<java.lang.Object> values,
org.apache.hadoop.mapreduce.ReduceContext<java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object> context) |
void |
setAccumulator(Accumulator<org.apache.avro.generic.GenericRecord,org.apache.avro.generic.GenericRecord> acc) |
void |
setOldRecordMerger(Merger<org.apache.avro.generic.GenericRecord> merger) |
void |
setOutputDateRange(DateRange dateRange)
Sets the date range for the output.
|
void |
setRecordMerger(Merger<org.apache.avro.generic.GenericRecord> merger) |
void |
setReuseOutput(boolean reuseOutput)
Sets whether previous output is being reused.
|
void |
setSchemas(PartitionCollapsingSchemas schemas)
Sets the Avro schemas.
|
close, getContext, setContextpublic void reduce(java.lang.Object keyObj,
java.lang.Iterable<java.lang.Object> values,
org.apache.hadoop.mapreduce.ReduceContext<java.lang.Object,java.lang.Object,java.lang.Object,java.lang.Object> context)
throws java.io.IOException,
java.lang.InterruptedException
reduce in class ObjectReducerjava.io.IOExceptionjava.lang.InterruptedExceptionpublic void setSchemas(PartitionCollapsingSchemas schemas)
schemas - the schemaspublic boolean getReuseOutput()
public void setReuseOutput(boolean reuseOutput)
reuseOutput - true if previous output is reusedpublic void setAccumulator(Accumulator<org.apache.avro.generic.GenericRecord,org.apache.avro.generic.GenericRecord> acc)
public Accumulator<org.apache.avro.generic.GenericRecord,org.apache.avro.generic.GenericRecord> getNewAccumulator()
public Accumulator<org.apache.avro.generic.GenericRecord,org.apache.avro.generic.GenericRecord> getOldAccumulator()
public void setRecordMerger(Merger<org.apache.avro.generic.GenericRecord> merger)
public void setOldRecordMerger(Merger<org.apache.avro.generic.GenericRecord> merger)
public void setOutputDateRange(DateRange dateRange)
DateRangeConfigurablesetOutputDateRange in interface DateRangeConfigurabledateRange - output date range