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>
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.
Modifier and Type | Method and Description |
---|---|
void |
close() |
void |
finish() |
void |
initializeState(org.apache.flink.runtime.state.StateInitializationContext context) |
void |
processElement(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<FlinkInputSplit> element) |
void |
processWatermark(org.apache.flink.streaming.api.watermark.Watermark mark) |
void |
snapshotState(org.apache.flink.runtime.state.StateSnapshotContext context) |
getChainingStrategy, getContainingTask, getCurrentKey, getExecutionConfig, getInternalTimerService, getKeyedStateBackend, getKeyedStateStore, getMetricGroup, getOperatorConfig, getOperatorID, getOperatorName, getOperatorStateBackend, getOrCreateKeyedState, getPartitionedState, getPartitionedState, getProcessingTimeService, getRuntimeContext, getTimeServiceManager, getUserCodeClassloader, initializeState, isUsingCustomRawKeyedState, notifyCheckpointAborted, notifyCheckpointComplete, open, prepareSnapshotPreBarrier, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processWatermark1, processWatermark2, processWatermarkStatus, processWatermarkStatus1, processWatermarkStatus2, reportOrForwardLatencyMarker, setChainingStrategy, setCurrentKey, setKeyContextElement1, setKeyContextElement2, setProcessingTimeService, setup, snapshotState
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
setKeyContextElement
getMetricGroup, getOperatorID, initializeState, open, prepareSnapshotPreBarrier, setKeyContextElement1, setKeyContextElement2, snapshotState
notifyCheckpointAborted, notifyCheckpointComplete
public void initializeState(org.apache.flink.runtime.state.StateInitializationContext context) throws java.lang.Exception
initializeState
in interface org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.CheckpointedStreamOperator
initializeState
in class org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
java.lang.Exception
public void snapshotState(org.apache.flink.runtime.state.StateSnapshotContext context) throws java.lang.Exception
snapshotState
in interface org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.CheckpointedStreamOperator
snapshotState
in class org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
java.lang.Exception
public void processElement(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<FlinkInputSplit> element)
processElement
in interface org.apache.flink.streaming.api.operators.Input<FlinkInputSplit>
public void processWatermark(org.apache.flink.streaming.api.watermark.Watermark mark)
processWatermark
in interface org.apache.flink.streaming.api.operators.Input<FlinkInputSplit>
processWatermark
in class org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
public void close() throws java.lang.Exception
close
in interface org.apache.flink.streaming.api.operators.StreamOperator<org.apache.flink.table.data.RowData>
close
in class org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
java.lang.Exception
public void finish() throws java.lang.Exception
finish
in interface org.apache.flink.streaming.api.operators.StreamOperator<org.apache.flink.table.data.RowData>
finish
in class org.apache.flink.streaming.api.operators.AbstractStreamOperator<org.apache.flink.table.data.RowData>
java.lang.Exception