Class SinkOperator

java.lang.Object
org.apache.flink.streaming.api.operators.AbstractStreamOperator<OUT>
org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator<Object,org.apache.flink.streaming.api.functions.sink.legacy.SinkFunction<org.apache.flink.table.data.RowData>>
org.apache.flink.table.runtime.operators.sink.SinkOperator
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,Object>, org.apache.flink.streaming.api.operators.OutputTypeConfigurable<Object>, org.apache.flink.streaming.api.operators.StreamOperator<Object>, org.apache.flink.streaming.api.operators.StreamOperatorStateHandler.CheckpointedStreamOperator, org.apache.flink.streaming.api.operators.UserFunctionProvider<org.apache.flink.streaming.api.functions.sink.legacy.SinkFunction<org.apache.flink.table.data.RowData>>, org.apache.flink.streaming.api.operators.YieldingOperator<Object>

public class SinkOperator extends org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator<Object,org.apache.flink.streaming.api.functions.sink.legacy.SinkFunction<org.apache.flink.table.data.RowData>> implements org.apache.flink.streaming.api.operators.OneInputStreamOperator<org.apache.flink.table.data.RowData,Object>
A StreamOperator for executing SinkFunctions. This operator also checks writing null values into NOT NULL columns.
See Also:
  • 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
    SinkOperator(org.apache.flink.streaming.api.functions.sink.legacy.SinkFunction<org.apache.flink.table.data.RowData> sinkFunction, int rowtimeFieldIndex)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
     
    void
    processElement(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<org.apache.flink.table.data.RowData> element)
     
    void
    processWatermark(org.apache.flink.streaming.api.watermark.Watermark mark)
     
    protected void
    reportOrForwardLatencyMarker(org.apache.flink.streaming.runtime.streamrecord.LatencyMarker marker)
     

    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, isAsyncStateProcessingEnabled, isUsingCustomRawKeyedState, prepareSnapshotPreBarrier, processLatencyMarker, processLatencyMarker1, processLatencyMarker2, processRecordAttributes, processRecordAttributes1, processRecordAttributes2, processWatermark, processWatermark1, processWatermark1, processWatermark2, processWatermark2, processWatermarkStatus, processWatermarkStatus, processWatermarkStatus1, processWatermarkStatus2, 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, 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, getOperatorAttributes, getOperatorID, initializeState, prepareSnapshotPreBarrier, setKeyContextElement1, setKeyContextElement2, snapshotState
  • Constructor Details

    • SinkOperator

      public SinkOperator(org.apache.flink.streaming.api.functions.sink.legacy.SinkFunction<org.apache.flink.table.data.RowData> sinkFunction, int rowtimeFieldIndex)
  • Method Details

    • open

      public void open() throws Exception
      Specified by:
      open in interface org.apache.flink.streaming.api.operators.StreamOperator<Object>
      Overrides:
      open in class org.apache.flink.streaming.api.operators.AbstractUdfStreamOperator<Object,org.apache.flink.streaming.api.functions.sink.legacy.SinkFunction<org.apache.flink.table.data.RowData>>
      Throws:
      Exception
    • processElement

      public void processElement(org.apache.flink.streaming.runtime.streamrecord.StreamRecord<org.apache.flink.table.data.RowData> element) throws Exception
      Specified by:
      processElement in interface org.apache.flink.streaming.api.operators.Input<org.apache.flink.table.data.RowData>
      Throws:
      Exception
    • reportOrForwardLatencyMarker

      protected void reportOrForwardLatencyMarker(org.apache.flink.streaming.runtime.streamrecord.LatencyMarker marker)
      Overrides:
      reportOrForwardLatencyMarker in class org.apache.flink.streaming.api.operators.AbstractStreamOperator<Object>
    • processWatermark

      public void processWatermark(org.apache.flink.streaming.api.watermark.Watermark mark) throws Exception
      Specified by:
      processWatermark in interface org.apache.flink.streaming.api.operators.Input<org.apache.flink.table.data.RowData>
      Overrides:
      processWatermark in class org.apache.flink.streaming.api.operators.AbstractStreamOperator<Object>
      Throws:
      Exception