Class UnalignedWindowTableFunctionOperator
java.lang.Object
org.apache.flink.streaming.api.operators.AbstractStreamOperator<OUT>
org.apache.flink.table.runtime.operators.TableStreamOperator<org.apache.flink.table.data.RowData>
org.apache.flink.table.runtime.operators.window.tvf.operator.WindowTableFunctionOperatorBase
org.apache.flink.table.runtime.operators.window.tvf.operator.UnalignedWindowTableFunctionOperator
- All Implemented Interfaces:
Serializable,org.apache.flink.api.common.state.CheckpointListener,org.apache.flink.streaming.api.operators.Input<org.apache.flink.table.data.RowData>,org.apache.flink.streaming.api.operators.KeyContext,org.apache.flink.streaming.api.operators.KeyContextHandler,org.apache.flink.streaming.api.operators.OneInputStreamOperator<org.apache.flink.table.data.RowData,,org.apache.flink.table.data.RowData> org.apache.flink.streaming.api.operators.StreamOperator<org.apache.flink.table.data.RowData>,org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.CheckpointedStreamOperator,org.apache.flink.streaming.api.operators.Triggerable<org.apache.flink.table.data.RowData,,TimeWindow> org.apache.flink.streaming.api.operators.YieldingOperator<org.apache.flink.table.data.RowData>
public class UnalignedWindowTableFunctionOperator
extends WindowTableFunctionOperatorBase
implements org.apache.flink.streaming.api.operators.Triggerable<org.apache.flink.table.data.RowData,TimeWindow>
The operator for unaligned window table function.
See more details about aligned window and unaligned window in WindowAggOperator.
Note: The operator only applies for Window TVF with set semantics (e.g SESSION) instead of row semantics (e.g TUMBLE/HOP/CUMULATE).
This operator emits result at the end of window instead of per record.
This operator will not compact changelog records.
This operator will keep the original order of input records when outputting.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class org.apache.flink.table.runtime.operators.TableStreamOperator
TableStreamOperator.ContextImpl -
Field Summary
Fields inherited from class org.apache.flink.table.runtime.operators.window.tvf.operator.WindowTableFunctionOperatorBase
numNullRowTimeRecordsDropped, rowtimeIndex, shiftTimeZone, windowAssignerFields inherited from class org.apache.flink.table.runtime.operators.TableStreamOperator
ctx, currentWatermarkFields 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
ConstructorsConstructorDescriptionUnalignedWindowTableFunctionOperator(GroupWindowAssigner<TimeWindow> windowAssigner, org.apache.flink.api.common.typeutils.TypeSerializer<TimeWindow> windowSerializer, org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData> inputSerializer, int rowtimeIndex, ZoneId shiftTimeZone) -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()org.apache.flink.metrics.Counterorg.apache.flink.metrics.Gauge<Long>voidonEventTime(org.apache.flink.streaming.api.operators.InternalTimer<org.apache.flink.table.data.RowData, TimeWindow> timer) voidonProcessingTime(org.apache.flink.streaming.api.operators.InternalTimer<org.apache.flink.table.data.RowData, TimeWindow> timer) voidopen()voidprocessElement(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<org.apache.flink.table.data.RowData> element) Methods inherited from class org.apache.flink.table.runtime.operators.window.tvf.operator.WindowTableFunctionOperatorBase
collect, getNumNullRowTimeRecordsDroppedMethods inherited from class org.apache.flink.table.runtime.operators.TableStreamOperator
computeMemorySize, processWatermark, useSplittableTimersMethods inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperator
beforeInitializeStateHandler, finish, getContainingTask, getCurrentKey, getExecutionConfig, getInternalTimerService, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorName, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getStateKeySelector1, getStateKeySelector2, getTimeServiceManager, getUserCodeClassloader, hasKeyContext1, hasKeyContext2, initializeState, initializeState, isAsyncStateProcessingEnabled, isUsingCustomRawKeyedState, notifyCheckpointAborted, notifyCheckpointComplete, prepareSnapshotPreBarrier, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processRecordAttributes, processRecordAttributes1, processRecordAttributes2, processWatermark, processWatermark1, processWatermark1, processWatermark2, processWatermark2, processWatermarkStatus, processWatermarkStatus, processWatermarkStatus1, processWatermarkStatus2, reportOrForwardLatencyMarker, setCurrentKey, setKeyContextElement1, setKeyContextElement2, setMailboxExecutor, setProcessingTimeService, setup, snapshotState, snapshotStateMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.flink.api.common.state.CheckpointListener
notifyCheckpointAborted, notifyCheckpointCompleteMethods inherited from interface org.apache.flink.streaming.api.operators.Input
processLatencyMarker, processRecordAttributes, processWatermark, processWatermark, processWatermarkStatusMethods inherited from interface org.apache.flink.streaming.api.operators.KeyContext
getCurrentKey, setCurrentKeyMethods inherited from interface org.apache.flink.streaming.api.operators.KeyContextHandler
hasKeyContextMethods inherited from interface org.apache.flink.streaming.api.operators.OneInputStreamOperator
setKeyContextElementMethods inherited from interface org.apache.flink.streaming.api.operators.StreamOperator
finish, getMetricGroup, getOperatorAttributes, getOperatorID, initializeState, prepareSnapshotPreBarrier, setKeyContextElement1, setKeyContextElement2, snapshotState
-
Constructor Details
-
UnalignedWindowTableFunctionOperator
public UnalignedWindowTableFunctionOperator(GroupWindowAssigner<TimeWindow> windowAssigner, org.apache.flink.api.common.typeutils.TypeSerializer<TimeWindow> windowSerializer, org.apache.flink.api.common.typeutils.TypeSerializer<org.apache.flink.table.data.RowData> inputSerializer, int rowtimeIndex, ZoneId shiftTimeZone)
-
-
Method Details
-
open
- Specified by:
openin interfaceorg.apache.flink.streaming.api.operators.StreamOperator<org.apache.flink.table.data.RowData>- Overrides:
openin classWindowTableFunctionOperatorBase- Throws:
Exception
-
close
- Specified by:
closein interfaceorg.apache.flink.streaming.api.operators.StreamOperator<org.apache.flink.table.data.RowData>- Overrides:
closein classWindowTableFunctionOperatorBase- Throws:
Exception
-
processElement
public void processElement(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<org.apache.flink.table.data.RowData> element) throws Exception - Specified by:
processElementin interfaceorg.apache.flink.streaming.api.operators.Input<org.apache.flink.table.data.RowData>- Throws:
Exception
-
onEventTime
public void onEventTime(org.apache.flink.streaming.api.operators.InternalTimer<org.apache.flink.table.data.RowData, TimeWindow> timer) throws Exception- Specified by:
onEventTimein interfaceorg.apache.flink.streaming.api.operators.Triggerable<org.apache.flink.table.data.RowData,TimeWindow> - Throws:
Exception
-
onProcessingTime
public void onProcessingTime(org.apache.flink.streaming.api.operators.InternalTimer<org.apache.flink.table.data.RowData, TimeWindow> timer) throws Exception- Specified by:
onProcessingTimein interfaceorg.apache.flink.streaming.api.operators.Triggerable<org.apache.flink.table.data.RowData,TimeWindow> - Throws:
Exception
-
getNumLateRecordsDropped
@VisibleForTesting public org.apache.flink.metrics.Counter getNumLateRecordsDropped() -
getWatermarkLatency
-