Class AsyncStateRowTimeDeduplicateFunction

java.lang.Object
org.apache.flink.api.common.functions.AbstractRichFunction
org.apache.flink.streaming.api.functions.KeyedProcessFunction<K,IN,OUT>
org.apache.flink.table.runtime.operators.deduplicate.DeduplicateFunctionBase<T,K,IN,OUT>
org.apache.flink.table.runtime.operators.deduplicate.asyncprocessing.AsyncStateRowTimeDeduplicateFunction
All Implemented Interfaces:
Serializable, org.apache.flink.api.common.functions.Function, org.apache.flink.api.common.functions.RichFunction

public class AsyncStateRowTimeDeduplicateFunction extends DeduplicateFunctionBase<T,K,IN,OUT>
This function is used to deduplicate on keys and keeps only first or last row on row time.

Different with RowTimeDeduplicateFunction, this function is based on async state api.

See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.apache.flink.streaming.api.functions.KeyedProcessFunction

    org.apache.flink.streaming.api.functions.KeyedProcessFunction.Context, org.apache.flink.streaming.api.functions.KeyedProcessFunction.OnTimerContext
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    protected org.apache.flink.api.common.state.v2.ValueState<org.apache.flink.table.data.RowData>
     

    Fields inherited from class org.apache.flink.table.runtime.operators.deduplicate.DeduplicateFunctionBase

    serializer, stateRetentionTime, typeInfo
  • Constructor Summary

    Constructors
    Constructor
    Description
    AsyncStateRowTimeDeduplicateFunction(InternalTypeInfo<org.apache.flink.table.data.RowData> typeInfo, long minRetentionTime, int rowtimeIndex, boolean generateUpdateBefore, boolean generateInsert, boolean keepLastRow)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    open(org.apache.flink.api.common.functions.OpenContext openContext)
     
    void
    processElement(org.apache.flink.table.data.RowData input, org.apache.flink.streaming.api.functions.KeyedProcessFunction<org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData>.org.apache.flink.streaming.api.functions.KeyedProcessFunction.Context ctx, org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out)
     

    Methods inherited from class org.apache.flink.streaming.api.functions.KeyedProcessFunction

    onTimer

    Methods inherited from class org.apache.flink.api.common.functions.AbstractRichFunction

    close, getIterationRuntimeContext, getRuntimeContext, setRuntimeContext

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

    • state

      protected org.apache.flink.api.common.state.v2.ValueState<org.apache.flink.table.data.RowData> state
  • Constructor Details

    • AsyncStateRowTimeDeduplicateFunction

      public AsyncStateRowTimeDeduplicateFunction(InternalTypeInfo<org.apache.flink.table.data.RowData> typeInfo, long minRetentionTime, int rowtimeIndex, boolean generateUpdateBefore, boolean generateInsert, boolean keepLastRow)
  • Method Details

    • open

      public void open(org.apache.flink.api.common.functions.OpenContext openContext) throws Exception
      Specified by:
      open in interface org.apache.flink.api.common.functions.RichFunction
      Throws:
      Exception
    • processElement

      public void processElement(org.apache.flink.table.data.RowData input, org.apache.flink.streaming.api.functions.KeyedProcessFunction<org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData>.org.apache.flink.streaming.api.functions.KeyedProcessFunction.Context ctx, org.apache.flink.util.Collector<org.apache.flink.table.data.RowData> out) throws Exception
      Specified by:
      processElement in class org.apache.flink.streaming.api.functions.KeyedProcessFunction<org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData,org.apache.flink.table.data.RowData>
      Throws:
      Exception