Package org.apache.iceberg.flink.source
Class StreamingReaderOperator
java.lang.Object
org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
org.apache.iceberg.flink.source.StreamingReaderOperator
- All Implemented Interfaces:
- Serializable,- org.apache.flink.api.common.state.CheckpointListener,- org.apache.flink.streaming.api.operators.Input<FlinkInputSplit>,- org.apache.flink.streaming.api.operators.KeyContext,- org.apache.flink.streaming.api.operators.KeyContextHandler,- org.apache.flink.streaming.api.operators.OneInputStreamOperator<FlinkInputSplit,,- 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.YieldingOperator<org.apache.flink.table.data.RowData>
public class StreamingReaderOperator
extends org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
implements org.apache.flink.streaming.api.operators.OneInputStreamOperator<FlinkInputSplit,org.apache.flink.table.data.RowData> 
The operator that reads the 
splits received from the preceding StreamingMonitorFunction. Contrary to the StreamingMonitorFunction which has a
 parallelism of 1, this operator can have multiple parallelism.
 As soon as a split descriptor is received, it is put in a queue, and use MailboxExecutor read the actual data of the split. This architecture allows the separation of
 the reading thread from the one split processing the checkpoint barriers, thus removing any
 potential back-pressure.
- See Also:
- 
Field SummaryFields inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperatorcombinedWatermark, config, lastRecordAttributes1, lastRecordAttributes2, latencyStats, metrics, output, processingTimeService, stateHandler, stateKeySelector1, stateKeySelector2, timeServiceManager
- 
Method SummaryModifier and TypeMethodDescriptionvoidclose()voidfinish()voidinitializeState(org.apache.flink.runtime.state.StateInitializationContext context) voidprocessElement(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<FlinkInputSplit> element) voidprocessWatermark(org.apache.flink.streaming.api.watermark.Watermark mark) voidsnapshotState(org.apache.flink.runtime.state.StateSnapshotContext context) Methods inherited from class org.apache.flink.streaming.api.operators.AbstractStreamOperatorbeforeInitializeStateHandler, getContainingTask, getCurrentKey, getExecutionConfig, getInternalTimerService, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorName, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getStateKeySelector1, getStateKeySelector2, getTimeServiceManager, getUserCodeClassloader, hasKeyContext1, hasKeyContext2, initializeState, isAsyncStateProcessingEnabled, isUsingCustomRawKeyedState, notifyCheckpointAborted, notifyCheckpointComplete, open, prepareSnapshotPreBarrier, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processRecordAttributes, processRecordAttributes1, processRecordAttributes2, processWatermark, processWatermark1, processWatermark1, processWatermark2, processWatermark2, processWatermarkStatus, processWatermarkStatus, processWatermarkStatus1, processWatermarkStatus2, reportOrForwardLatencyMarker, setCurrentKey, setKeyContextElement1, setKeyContextElement2, setMailboxExecutor, setProcessingTimeService, setup, snapshotState, useSplittableTimersMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface org.apache.flink.api.common.state.CheckpointListenernotifyCheckpointAborted, notifyCheckpointCompleteMethods inherited from interface org.apache.flink.streaming.api.operators.InputprocessLatencyMarker, processRecordAttributes, processWatermark, processWatermarkStatusMethods inherited from interface org.apache.flink.streaming.api.operators.KeyContextgetCurrentKey, setCurrentKeyMethods inherited from interface org.apache.flink.streaming.api.operators.KeyContextHandlerhasKeyContextMethods inherited from interface org.apache.flink.streaming.api.operators.OneInputStreamOperatorsetKeyContextElementMethods inherited from interface org.apache.flink.streaming.api.operators.StreamOperatorgetMetricGroup, getOperatorAttributes, getOperatorID, initializeState, open, prepareSnapshotPreBarrier, setKeyContextElement1, setKeyContextElement2, snapshotState
- 
Method Details- 
initializeStatepublic void initializeState(org.apache.flink.runtime.state.StateInitializationContext context) throws Exception - Specified by:
- initializeStatein interface- org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.CheckpointedStreamOperator
- Overrides:
- initializeStatein class- org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
- Throws:
- Exception
 
- 
snapshotStatepublic void snapshotState(org.apache.flink.runtime.state.StateSnapshotContext context) throws Exception - Specified by:
- snapshotStatein interface- org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.CheckpointedStreamOperator
- Overrides:
- snapshotStatein class- org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
- Throws:
- Exception
 
- 
processElementpublic void processElement(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<FlinkInputSplit> element) - Specified by:
- processElementin interface- org.apache.flink.streaming.api.operators.Input<FlinkInputSplit>
 
- 
processWatermarkpublic void processWatermark(org.apache.flink.streaming.api.watermark.Watermark mark) - Specified by:
- processWatermarkin interface- org.apache.flink.streaming.api.operators.Input<FlinkInputSplit>
- Overrides:
- processWatermarkin class- org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
 
- 
close- Specified by:
- closein interface- org.apache.flink.streaming.api.operators.StreamOperator<org.apache.flink.table.data.RowData>
- Overrides:
- closein class- org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
- Throws:
- Exception
 
- 
finish- Specified by:
- finishin interface- org.apache.flink.streaming.api.operators.StreamOperator<org.apache.flink.table.data.RowData>
- Overrides:
- finishin class- org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
- Throws:
- Exception
 
 
-