public abstract static class GenericUDAFAverage.AbstractGenericUDAFAverageEvaluator<TYPE> extends GenericUDAFEvaluator
GenericUDAFEvaluator.AbstractAggregationBuffer, GenericUDAFEvaluator.AggregationBuffer, GenericUDAFEvaluator.AggregationType, GenericUDAFEvaluator.Mode
Modifier and Type | Field and Description |
---|---|
protected boolean |
avgDistinct |
protected PrimitiveObjectInspector |
copiedOI |
protected PrimitiveObjectInspector |
inputOI |
protected boolean |
isWindowing |
protected Object[] |
partialResult |
protected ObjectInspector |
sumFieldOI |
partitionEvaluator
Constructor and Description |
---|
AbstractGenericUDAFAverageEvaluator() |
Modifier and Type | Method and Description |
---|---|
protected abstract void |
doIterate(org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage.AverageAggregationBuffer<TYPE> aggregation,
PrimitiveObjectInspector inputOI,
Object parameter) |
protected abstract void |
doMerge(org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage.AverageAggregationBuffer<TYPE> aggregation,
Long partialCount,
ObjectInspector sumFieldOI,
Object partialSum) |
protected abstract void |
doMergeAdd(TYPE sum,
ObjectInspectorUtils.ObjectInspectorObject obj) |
protected abstract void |
doReset(org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage.AverageAggregationBuffer<TYPE> aggregation) |
protected abstract Object |
doTerminate(org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage.AverageAggregationBuffer<TYPE> aggregation) |
protected abstract void |
doTerminatePartial(org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage.AverageAggregationBuffer<TYPE> aggregation) |
protected abstract ObjectInspector |
getSumFieldJavaObjectInspector() |
protected abstract ObjectInspector |
getSumFieldWritableObjectInspector() |
ObjectInspector |
init(GenericUDAFEvaluator.Mode m,
ObjectInspector[] parameters)
Initialize the evaluator.
|
boolean |
isWindowingDistinct() |
void |
iterate(GenericUDAFEvaluator.AggregationBuffer aggregation,
Object[] parameters)
Iterate through original data.
|
void |
merge(GenericUDAFEvaluator.AggregationBuffer aggregation,
Object partial)
Merge with partial aggregation result.
|
void |
reset(GenericUDAFEvaluator.AggregationBuffer aggregation)
Reset the aggregation.
|
Object |
terminate(GenericUDAFEvaluator.AggregationBuffer aggregation)
Get final aggregation result.
|
Object |
terminatePartial(GenericUDAFEvaluator.AggregationBuffer aggregation)
Get partial aggregation result.
|
aggregate, close, configure, createPartitionEvaluator, evaluate, getExprString, getNewAggregationBuffer, getPartitionWindowingEvaluator, getWindowingEvaluator, isEstimable
protected boolean isWindowing
protected boolean avgDistinct
protected transient PrimitiveObjectInspector inputOI
protected transient PrimitiveObjectInspector copiedOI
protected ObjectInspector sumFieldOI
protected transient Object[] partialResult
protected abstract ObjectInspector getSumFieldJavaObjectInspector()
protected abstract ObjectInspector getSumFieldWritableObjectInspector()
protected abstract void doIterate(org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage.AverageAggregationBuffer<TYPE> aggregation, PrimitiveObjectInspector inputOI, Object parameter)
protected abstract void doMerge(org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage.AverageAggregationBuffer<TYPE> aggregation, Long partialCount, ObjectInspector sumFieldOI, Object partialSum)
protected abstract void doMergeAdd(TYPE sum, ObjectInspectorUtils.ObjectInspectorObject obj)
protected abstract void doTerminatePartial(org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage.AverageAggregationBuffer<TYPE> aggregation)
protected abstract Object doTerminate(org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage.AverageAggregationBuffer<TYPE> aggregation)
protected abstract void doReset(org.apache.hadoop.hive.ql.udf.generic.GenericUDAFAverage.AverageAggregationBuffer<TYPE> aggregation) throws HiveException
HiveException
public ObjectInspector init(GenericUDAFEvaluator.Mode m, ObjectInspector[] parameters) throws HiveException
GenericUDAFEvaluator
init
in class GenericUDAFEvaluator
m
- The mode of aggregation.parameters
- The ObjectInspector for the parameters: In PARTIAL1 and COMPLETE
mode, the parameters are original data; In PARTIAL2 and FINAL
mode, the parameters are just partial aggregations (in that case,
the array will always have a single element).HiveException
public boolean isWindowingDistinct()
public void reset(GenericUDAFEvaluator.AggregationBuffer aggregation) throws HiveException
GenericUDAFEvaluator
reset
in class GenericUDAFEvaluator
HiveException
public void iterate(GenericUDAFEvaluator.AggregationBuffer aggregation, Object[] parameters) throws HiveException
GenericUDAFEvaluator
iterate
in class GenericUDAFEvaluator
parameters
- The objects of parameters.HiveException
public Object terminatePartial(GenericUDAFEvaluator.AggregationBuffer aggregation) throws HiveException
GenericUDAFEvaluator
terminatePartial
in class GenericUDAFEvaluator
HiveException
public void merge(GenericUDAFEvaluator.AggregationBuffer aggregation, Object partial) throws HiveException
GenericUDAFEvaluator
merge
in class GenericUDAFEvaluator
partial
- The partial aggregation result.HiveException
public Object terminate(GenericUDAFEvaluator.AggregationBuffer aggregation) throws HiveException
GenericUDAFEvaluator
terminate
in class GenericUDAFEvaluator
HiveException
Copyright © 2021 The Apache Software Foundation. All rights reserved.