Class TwoInputNonBroadcastWindowProcessOperator<K,IN1,IN2,OUT,W extends org.apache.flink.streaming.api.windowing.windows.Window>
- java.lang.Object
-
- org.apache.flink.streaming.api.operators.AbstractStreamOperator<OUT>
-
- org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncKeyOrderedStreamOperator<OUT>
-
- org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateStreamOperator<OUT>
-
- org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateUdfStreamOperator<OUT,org.apache.flink.datastream.api.function.TwoInputNonBroadcastStreamProcessFunction<IN1,IN2,OUT>>
-
- org.apache.flink.datastream.impl.operators.TwoInputNonBroadcastProcessOperator<IN1,IN2,OUT>
-
- org.apache.flink.datastream.impl.operators.BaseKeyedTwoInputNonBroadcastProcessOperator<K,IN1,IN2,OUT>
-
- org.apache.flink.datastream.impl.extension.window.operators.TwoInputNonBroadcastWindowProcessOperator<K,IN1,IN2,OUT,W>
-
- All Implemented Interfaces:
Serializable,org.apache.flink.api.common.state.CheckpointListener,org.apache.flink.streaming.api.operators.BoundedMultiInput,org.apache.flink.streaming.api.operators.KeyContext,org.apache.flink.streaming.api.operators.KeyContextHandler,org.apache.flink.streaming.api.operators.OutputTypeConfigurable<OUT>,org.apache.flink.streaming.api.operators.StreamOperator<OUT>,org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.CheckpointedStreamOperator,org.apache.flink.streaming.api.operators.Triggerable<K,W>,org.apache.flink.streaming.api.operators.TwoInputStreamOperator<IN1,IN2,OUT>,org.apache.flink.streaming.api.operators.UserFunctionProvider<org.apache.flink.datastream.api.function.TwoInputNonBroadcastStreamProcessFunction<IN1,IN2,OUT>>,org.apache.flink.streaming.api.operators.YieldingOperator<OUT>,org.apache.flink.streaming.runtime.operators.asyncprocessing.AsyncKeyOrderedProcessing,org.apache.flink.streaming.runtime.operators.asyncprocessing.AsyncKeyOrderedProcessingOperator
public class TwoInputNonBroadcastWindowProcessOperator<K,IN1,IN2,OUT,W extends org.apache.flink.streaming.api.windowing.windows.Window> extends BaseKeyedTwoInputNonBroadcastProcessOperator<K,IN1,IN2,OUT> implements org.apache.flink.streaming.api.operators.Triggerable<K,W>
Operator forTwoInputNonBroadcastWindowStreamProcessFunctioninKeyedPartitionStream.- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected longallowedLatenessThe allowed lateness for elements.protected org.apache.flink.streaming.api.operators.InternalTimerService<W>internalTimerService-
Fields inherited from class org.apache.flink.datastream.impl.operators.BaseKeyedTwoInputNonBroadcastProcessOperator
keySet, outKeySelector
-
Fields inherited from class org.apache.flink.datastream.impl.operators.TwoInputNonBroadcastProcessOperator
collector, context, eventTimeWatermarkHandler, nonPartitionedContext, partitionedContext, watermarkDeclarationMap
-
Fields inherited from class org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateUdfStreamOperator
declarationContext, userFunction
-
-
Constructor Summary
Constructors Constructor Description TwoInputNonBroadcastWindowProcessOperator(InternalTwoInputWindowStreamProcessFunction<IN1,IN2,OUT,W> windowFunction, org.apache.flink.streaming.api.windowing.assigners.WindowAssigner<? super org.apache.flink.util.TaggedUnion<IN1,IN2>,W> windowAssigner, org.apache.flink.streaming.api.windowing.triggers.Trigger<? super org.apache.flink.util.TaggedUnion<IN1,IN2>,? super W> trigger, org.apache.flink.api.common.typeutils.TypeSerializer<W> windowSerializer, org.apache.flink.api.common.state.v2.StateDescriptor<IN1> leftWindowStateDescriptor, org.apache.flink.api.common.state.v2.StateDescriptor<IN2> rightWindowStateDescriptor, long allowedLateness)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected MergingWindowSet<W>getMergingWindowSet()Retrieves theMergingWindowSetfor the currently active key.protected org.apache.flink.datastream.api.context.ProcessingTimeManagergetProcessingTimeManager()voidonEventTime(org.apache.flink.streaming.api.operators.InternalTimer<K,W> timer)voidonProcessingTime(org.apache.flink.streaming.api.operators.InternalTimer<K,W> timer)voidopen()voidprocessElement1(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<IN1> element)voidprocessElement2(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<IN2> element)-
Methods inherited from class org.apache.flink.datastream.impl.operators.BaseKeyedTwoInputNonBroadcastProcessOperator
currentKey, getNonPartitionedContext, getOutputCollector, isAsyncKeyOrderedProcessingEnabled, newKeySelected
-
Methods inherited from class org.apache.flink.datastream.impl.operators.TwoInputNonBroadcastProcessOperator
close, endInput, getEventTimeSupplier, getProcessorWithKey, getTimerService, processWatermark1Internal, processWatermark2Internal
-
Methods inherited from class org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateUdfStreamOperator
finish, getUserFunction, initializeState, notifyCheckpointAborted, notifyCheckpointComplete, setOutputType, setup, snapshotState
-
Methods inherited from class org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncStateStreamOperator
createAsyncExecutionController, getKeySelectorForAsyncKeyedContext
-
Methods inherited from class org.apache.flink.runtime.asyncprocessing.operators.AbstractAsyncKeyOrderedStreamOperator
asyncProcessWithKey, beforeInitializeStateHandler, drainStateRequests, getAsyncKeyedStateBackend, getCurrentKey, getDeclarationManager, getElementOrder, getInternalTimerService, getOrCreateKeyedState, getRecordProcessor, handleAsyncException, postProcessElement, postProcessWatermark, prepareSnapshotPreBarrier, preProcessWatermark, preserveRecordOrderAndProcess, processNonRecord, processRecordAttributes, processRecordAttributes1, processRecordAttributes2, processWatermark, processWatermark, processWatermark1, processWatermark2, processWatermarkInternal, processWatermarkStatus, processWatermarkStatus, reportOrForwardLatencyMarker, setAsyncKeyedContextElement, setKeyContextElement1, setKeyContextElement2
-
Methods inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperator
getContainingTask, getExecutionConfig, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorName, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getStateKeySelector1, getStateKeySelector2, getTimeServiceManager, getUserCodeClassloader, hasKeyContext1, hasKeyContext2, initializeState, isUsingCustomRawKeyedState, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processWatermark1, processWatermark2, processWatermarkStatus1, processWatermarkStatus2, setCurrentKey, 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.streaming.runtime.operators.asyncprocessing.AsyncKeyOrderedProcessing
getRecordProcessor
-
Methods inherited from interface org.apache.flink.streaming.runtime.operators.asyncprocessing.AsyncKeyOrderedProcessingOperator
asyncProcessWithKey, getDeclarationManager, getElementOrder, postProcessElement, preserveRecordOrderAndProcess, setAsyncKeyedContextElement
-
Methods inherited from interface org.apache.flink.api.common.state.CheckpointListener
notifyCheckpointAborted, notifyCheckpointComplete
-
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.StreamOperator
finish, getMetricGroup, getOperatorAttributes, getOperatorID, initializeState, prepareSnapshotPreBarrier, setKeyContextElement1, setKeyContextElement2, snapshotState
-
Methods inherited from interface org.apache.flink.streaming.api.operators.TwoInputStreamOperator
processLatencyMarker1, processLatencyMarker2, processRecordAttributes1, processRecordAttributes2, processWatermark1, processWatermark1, processWatermark2, processWatermark2, processWatermarkStatus1, processWatermarkStatus2
-
-
-
-
Field Detail
-
allowedLateness
protected final long allowedLateness
The allowed lateness for elements. This is used for:- Deciding if an element should be dropped from a window due to lateness.
- Clearing the state of a window if the time out-of the
window.maxTimestamp + allowedLatenesslandmark.
-
internalTimerService
protected transient org.apache.flink.streaming.api.operators.InternalTimerService<W extends org.apache.flink.streaming.api.windowing.windows.Window> internalTimerService
-
-
Constructor Detail
-
TwoInputNonBroadcastWindowProcessOperator
public TwoInputNonBroadcastWindowProcessOperator(InternalTwoInputWindowStreamProcessFunction<IN1,IN2,OUT,W> windowFunction, org.apache.flink.streaming.api.windowing.assigners.WindowAssigner<? super org.apache.flink.util.TaggedUnion<IN1,IN2>,W> windowAssigner, org.apache.flink.streaming.api.windowing.triggers.Trigger<? super org.apache.flink.util.TaggedUnion<IN1,IN2>,? super W> trigger, org.apache.flink.api.common.typeutils.TypeSerializer<W> windowSerializer, org.apache.flink.api.common.state.v2.StateDescriptor<IN1> leftWindowStateDescriptor, org.apache.flink.api.common.state.v2.StateDescriptor<IN2> rightWindowStateDescriptor, long allowedLateness)
-
-
Method Detail
-
open
public void open() throws Exception
-
processElement1
public void processElement1(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<IN1> element) throws Exception
- Specified by:
processElement1in interfaceorg.apache.flink.streaming.api.operators.TwoInputStreamOperator<K,IN1,IN2>- Overrides:
processElement1in classTwoInputNonBroadcastProcessOperator<IN1,IN2,OUT>- Throws:
Exception
-
processElement2
public void processElement2(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<IN2> element) throws Exception
- Specified by:
processElement2in interfaceorg.apache.flink.streaming.api.operators.TwoInputStreamOperator<K,IN1,IN2>- Overrides:
processElement2in classTwoInputNonBroadcastProcessOperator<IN1,IN2,OUT>- Throws:
Exception
-
onEventTime
public void onEventTime(org.apache.flink.streaming.api.operators.InternalTimer<K,W> timer) throws Exception
-
onProcessingTime
public void onProcessingTime(org.apache.flink.streaming.api.operators.InternalTimer<K,W> timer) throws Exception
-
getProcessingTimeManager
protected org.apache.flink.datastream.api.context.ProcessingTimeManager getProcessingTimeManager()
- Overrides:
getProcessingTimeManagerin classTwoInputNonBroadcastProcessOperator<IN1,IN2,OUT>
-
getMergingWindowSet
protected MergingWindowSet<W> getMergingWindowSet() throws Exception
Retrieves theMergingWindowSetfor the currently active key. The caller must ensure that the correct key is set in the state backend.The caller must also ensure to properly persist changes to state using
MergingWindowSet.persist().- Throws:
Exception
-
-