Interface AggsHandleFunctionBase
- All Superinterfaces:
org.apache.flink.api.common.functions.Function,Serializable
- All Known Subinterfaces:
AggsHandleFunction,TableAggsHandleFunction
public interface AggsHandleFunctionBase
extends org.apache.flink.api.common.functions.Function
The base class for handling aggregate or table aggregate functions.
It is code generated to handle all AggregateFunctions and TableAggregateFunctions together in an aggregation.
It is the entry point for aggregate operators to operate all AggregateFunctions and
TableAggregateFunctions.
-
Method Summary
Modifier and TypeMethodDescriptionvoidaccumulate(org.apache.flink.table.data.RowData input) Accumulates the input values to the accumulators.voidcleanup()Cleanup for the retired accumulators state.voidclose()Tear-down method for this function.org.apache.flink.table.data.RowDataInitializes the accumulators and save them to a accumulators row.org.apache.flink.table.data.RowDataGets the current accumulators (saved in a row) which contains the current aggregated results.voidmerge(org.apache.flink.table.data.RowData accumulators) Merges the other accumulators into current accumulators.voidopen(StateDataViewStore store) Initialization method for the function.voidResets all the accumulators.voidretract(org.apache.flink.table.data.RowData input) Retracts the input values from the accumulators.voidsetAccumulators(org.apache.flink.table.data.RowData accumulators) Set the current accumulators (saved in a row) which contains the current aggregated results.
-
Method Details
-
open
Initialization method for the function. It is called before the actual working methods.- Throws:
Exception
-
accumulate
Accumulates the input values to the accumulators.- Parameters:
input- input values bundled in a row- Throws:
Exception
-
retract
Retracts the input values from the accumulators.- Parameters:
input- input values bundled in a row- Throws:
Exception
-
merge
Merges the other accumulators into current accumulators.- Parameters:
accumulators- The other row of accumulators- Throws:
Exception
-
setAccumulators
Set the current accumulators (saved in a row) which contains the current aggregated results. In streaming: accumulators are store in the state, we need to restore aggregate buffers from state. In batch: accumulators are store in the hashMap, we need to restore aggregate buffers from hashMap.- Parameters:
accumulators- current accumulators- Throws:
Exception
-
resetAccumulators
Resets all the accumulators.- Throws:
Exception
-
getAccumulators
Gets the current accumulators (saved in a row) which contains the current aggregated results.- Returns:
- the current accumulators
- Throws:
Exception
-
createAccumulators
Initializes the accumulators and save them to a accumulators row.- Returns:
- a row of accumulators which contains the aggregated results
- Throws:
Exception
-
cleanup
Cleanup for the retired accumulators state.- Throws:
Exception
-
close
Tear-down method for this function. It can be used for clean up work. By default, this method does nothing.- Throws:
Exception
-