public class MiniBatchGroupAggFunction extends MapBundleFunction<RowData,List<RowData>,RowData,RowData>
This function buffers input row in heap HashMap, and aggregates them when minibatch invoked.
ctx
Constructor and Description |
---|
MiniBatchGroupAggFunction(GeneratedAggsHandleFunction genAggsHandler,
GeneratedRecordEqualiser genRecordEqualiser,
LogicalType[] accTypes,
RowType inputType,
int indexOfCountStar,
boolean generateUpdateBefore,
long stateRetentionTime)
Creates a
MiniBatchGroupAggFunction . |
Modifier and Type | Method and Description |
---|---|
List<RowData> |
addInput(List<RowData> value,
RowData input)
Adds the given input to the given value, returning the new bundle value.
|
void |
close() |
void |
finishBundle(Map<RowData,List<RowData>> buffer,
Collector<RowData> out)
Called when a bundle is finished.
|
void |
open(ExecutionContext ctx) |
public MiniBatchGroupAggFunction(GeneratedAggsHandleFunction genAggsHandler, GeneratedRecordEqualiser genRecordEqualiser, LogicalType[] accTypes, RowType inputType, int indexOfCountStar, boolean generateUpdateBefore, long stateRetentionTime)
MiniBatchGroupAggFunction
.genAggsHandler
- The code generated function used to handle aggregates.genRecordEqualiser
- The code generated equaliser used to equal RowData.accTypes
- The accumulator types.inputType
- The input row type.indexOfCountStar
- The index of COUNT(*) in the aggregates. -1 when the input doesn't
contain COUNT(*), i.e. doesn't contain retraction messages. We make sure there is a
COUNT(*) if input stream contains retraction.generateUpdateBefore
- Whether this operator will generate UPDATE_BEFORE messages.stateRetentionTime
- state idle retention time which unit is MILLISECONDS.public void open(ExecutionContext ctx) throws Exception
public List<RowData> addInput(@Nullable List<RowData> value, RowData input) throws Exception
MapBundleFunction
public void finishBundle(Map<RowData,List<RowData>> buffer, Collector<RowData> out) throws Exception
MapBundleFunction
finishBundle
in class MapBundleFunction<RowData,List<RowData>,RowData,RowData>
Exception
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.