T
- final result type of the aggregationACC
- intermediate result type during the aggregation@PublicEvolving public abstract class ImperativeAggregateFunction<T,ACC> extends UserDefinedFunction
AggregateFunction
and TableAggregateFunction
.
This class is used for unified handling of imperative aggregating functions. Concrete
implementations should extend from AggregateFunction
or TableAggregateFunction
.
Constructor and Description |
---|
ImperativeAggregateFunction() |
Modifier and Type | Method and Description |
---|---|
abstract ACC |
createAccumulator()
Creates and initializes the accumulator for this
ImperativeAggregateFunction . |
TypeInformation<ACC> |
getAccumulatorType()
Deprecated.
This method uses the old type system and is based on the old reflective
extraction logic. The method will be removed in future versions and is only called when
using the deprecated
TableEnvironment.registerFunction(...) method. The new
reflective extraction logic (possibly enriched with DataTypeHint and FunctionHint ) should be powerful enough to cover most use cases. For advanced users, it
is possible to override UserDefinedFunction.getTypeInference(DataTypeFactory) . |
TypeInformation<T> |
getResultType()
Deprecated.
This method uses the old type system and is based on the old reflective
extraction logic. The method will be removed in future versions and is only called when
using the deprecated
TableEnvironment.registerFunction(...) method. The new
reflective extraction logic (possibly enriched with DataTypeHint and FunctionHint ) should be powerful enough to cover most use cases. For advanced users, it
is possible to override UserDefinedFunction.getTypeInference(DataTypeFactory) . |
close, functionIdentifier, getTypeInference, open, toString
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
getKind, getRequirements, isDeterministic
public abstract ACC createAccumulator()
ImperativeAggregateFunction
.
The accumulator is an intermediate data structure that stores the aggregated values until a final aggregation result is computed.
@Deprecated public TypeInformation<T> getResultType()
TableEnvironment.registerFunction(...)
method. The new
reflective extraction logic (possibly enriched with DataTypeHint
and FunctionHint
) should be powerful enough to cover most use cases. For advanced users, it
is possible to override UserDefinedFunction.getTypeInference(DataTypeFactory)
.TypeInformation
of the ImperativeAggregateFunction
's result.TypeInformation
of the ImperativeAggregateFunction
's result or
null
if the result type should be automatically inferred.@Deprecated public TypeInformation<ACC> getAccumulatorType()
TableEnvironment.registerFunction(...)
method. The new
reflective extraction logic (possibly enriched with DataTypeHint
and FunctionHint
) should be powerful enough to cover most use cases. For advanced users, it
is possible to override UserDefinedFunction.getTypeInference(DataTypeFactory)
.TypeInformation
of the ImperativeAggregateFunction
's accumulator.TypeInformation
of the ImperativeAggregateFunction
's accumulator
or null
if the accumulator type should be automatically inferred.Copyright © 2014–2023 The Apache Software Foundation. All rights reserved.