Class PartitionAggregateOperator<IN,ACC,OUT>
- java.lang.Object
-
- org.apache.flink.streaming.api.operators.AbstractStreamOperator<OUT>
-
- org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator<OUT,org.apache.flink.api.common.functions.AggregateFunction<IN,ACC,OUT>>
-
- org.apache.flink.streaming.api.operators.PartitionAggregateOperator<IN,ACC,OUT>
-
- All Implemented Interfaces:
Serializable,org.apache.flink.api.common.state.CheckpointListener,BoundedOneInput,Input<IN>,KeyContext,KeyContextHandler,OneInputStreamOperator<IN,OUT>,org.apache.flink.streaming.api.operators.OutputTypeConfigurable<OUT>,StreamOperator<OUT>,StreamOperatorStateHandler.CheckpointedStreamOperator,UserFunctionProvider<org.apache.flink.api.common.functions.AggregateFunction<IN,ACC,OUT>>,YieldingOperator<OUT>
@Internal public class PartitionAggregateOperator<IN,ACC,OUT> extends AbstractUdfStreamOperator<OUT,org.apache.flink.api.common.functions.AggregateFunction<IN,ACC,OUT>> implements OneInputStreamOperator<IN,OUT>, BoundedOneInput
ThePartitionAggregateOperatoris used to apply the aggregate transformation on all records of each partition. Each partition contains all records of a subtask.- See Also:
- Serialized Form
-
-
Field Summary
-
Fields inherited from class org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator
userFunction
-
Fields inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperator
combinedWatermark, config, lastRecordAttributes1, lastRecordAttributes2, latencyStats, LOG, metrics, output, processingTimeService, stateHandler, stateKeySelector1, stateKeySelector2, timeServiceManager
-
-
Constructor Summary
Constructors Constructor Description PartitionAggregateOperator(org.apache.flink.api.common.functions.AggregateFunction<IN,ACC,OUT> aggregateFunction)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidendInput()It is notified that no more data will arrive from the input.OperatorAttributesgetOperatorAttributes()Called to get the OperatorAttributes of the operator.voidopen()This method is called immediately before any elements are processed, it should contain the operator's initialization logic, e.g. state initialization.voidprocessElement(StreamRecord<IN> element)Processes one element that arrived on this input of theMultipleInputStreamOperator.-
Methods inherited from class org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator
close, finish, getUserFunction, getUserFunctionParameters, initializeState, notifyCheckpointAborted, notifyCheckpointComplete, setOutputType, setup, snapshotState
-
Methods inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperator
beforeInitializeStateHandler, getContainingTask, getCurrentKey, getExecutionConfig, getInternalTimerService, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorName, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getStateKeySelector1, getStateKeySelector2, getTimeServiceManager, getUserCodeClassloader, hasKeyContext1, hasKeyContext2, initializeState, isAsyncKeyOrderedProcessingEnabled, isUsingCustomRawKeyedState, prepareSnapshotPreBarrier, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processRecordAttributes, processRecordAttributes1, processRecordAttributes2, processWatermark, processWatermark, processWatermark1, processWatermark1, processWatermark2, processWatermark2, processWatermarkStatus, processWatermarkStatus, processWatermarkStatus1, processWatermarkStatus2, reportOrForwardLatencyMarker, setCurrentKey, setKeyContextElement1, setKeyContextElement2, setMailboxExecutor, setProcessingTimeService, snapshotState, useSplittableTimers
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface org.apache.flink.api.common.state.CheckpointListener
notifyCheckpointAborted, notifyCheckpointComplete
-
Methods inherited from interface org.apache.flink.streaming.api.operators.Input
processLatencyMarker, processRecordAttributes, processWatermark, processWatermark, processWatermarkStatus
-
Methods inherited from interface org.apache.flink.streaming.api.operators.KeyContext
getCurrentKey, setCurrentKey
-
Methods inherited from interface org.apache.flink.streaming.api.operators.KeyContextHandler
hasKeyContext
-
Methods inherited from interface org.apache.flink.streaming.api.operators.OneInputStreamOperator
setKeyContextElement
-
Methods inherited from interface org.apache.flink.streaming.api.operators.StreamOperator
close, finish, getMetricGroup, getOperatorID, initializeState, prepareSnapshotPreBarrier, setKeyContextElement1, setKeyContextElement2, snapshotState
-
-
-
-
Method Detail
-
open
public void open() throws ExceptionDescription copied from class:AbstractStreamOperatorThis method is called immediately before any elements are processed, it should contain the operator's initialization logic, e.g. state initialization.The default implementation does nothing.
- Specified by:
openin interfaceStreamOperator<IN>- Overrides:
openin classAbstractUdfStreamOperator<OUT,org.apache.flink.api.common.functions.AggregateFunction<IN,ACC,OUT>>- Throws:
Exception- An exception in this method causes the operator to fail.
-
processElement
public void processElement(StreamRecord<IN> element) throws Exception
Description copied from interface:InputProcesses one element that arrived on this input of theMultipleInputStreamOperator. This method is guaranteed to not be called concurrently with other methods of the operator.- Specified by:
processElementin interfaceInput<IN>- Throws:
Exception
-
endInput
public void endInput() throws ExceptionDescription copied from interface:BoundedOneInputIt is notified that no more data will arrive from the input.Stateful operators need to be aware that a restart with rescaling may occur after receiving this notification. A changed source split assignment may imply that the same subtask of this operator that received endInput, has its state after endInput snapshotted, and will receive new data after restart. Hence, the state should not contain any finalization that would make it impossible to process new data.
WARNING: It is not safe to use this method to commit any transactions or other side effects! You can use this method to flush any buffered data that can later on be committed e.g. in a
CheckpointListener.notifyCheckpointComplete(long).NOTE: Given it is semantically very similar to the
StreamOperator.finish()method. It might be dropped in favour of the other method at some point in time.- Specified by:
endInputin interfaceBoundedOneInput- Throws:
Exception
-
getOperatorAttributes
public OperatorAttributes getOperatorAttributes()
Description copied from interface:StreamOperatorCalled to get the OperatorAttributes of the operator. If there is no defined attribute, a default OperatorAttributes is built.- Specified by:
getOperatorAttributesin interfaceStreamOperator<IN>- Returns:
- OperatorAttributes of the operator.
-
-