Class BoundedOutOfOrdernessTimestampExtractor<T>

java.lang.Object
org.apache.flink.streaming.api.functions.timestamps.BoundedOutOfOrdernessTimestampExtractor<T>
All Implemented Interfaces:
Serializable, org.apache.flink.api.common.eventtime.TimestampAssigner<T>, org.apache.flink.api.common.eventtime.TimestampAssignerSupplier<T>, org.apache.flink.api.common.eventtime.WatermarkGeneratorSupplier<T>, org.apache.flink.api.common.eventtime.WatermarkStrategy<T>, org.apache.flink.streaming.runtime.operators.util.WatermarkStrategyWithPeriodicWatermarks<T>

public abstract class BoundedOutOfOrdernessTimestampExtractor<T> extends Object implements org.apache.flink.streaming.runtime.operators.util.WatermarkStrategyWithPeriodicWatermarks<T>
This is a WatermarkStrategyWithPeriodicWatermarks used to emit Watermarks that lag behind the element with the maximum timestamp (in event time) seen so far by a fixed amount of time, t_late. This can help reduce the number of elements that are ignored due to lateness when computing the final result for a given window, in the case where we know that elements arrive no later than t_late units of time after the watermark that signals that the system event-time has advanced past their (event-time) timestamp.
See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from interface org.apache.flink.api.common.eventtime.TimestampAssignerSupplier

    org.apache.flink.api.common.eventtime.TimestampAssignerSupplier.Context, org.apache.flink.api.common.eventtime.TimestampAssignerSupplier.SupplierFromSerializableTimestampAssigner<T extends Object>

    Nested classes/interfaces inherited from interface org.apache.flink.api.common.eventtime.WatermarkGeneratorSupplier

    org.apache.flink.api.common.eventtime.WatermarkGeneratorSupplier.Context
  • Field Summary

    Fields inherited from interface org.apache.flink.api.common.eventtime.TimestampAssigner

    NO_TIMESTAMP
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    abstract long
    Extracts the timestamp from the given element.
    final long
    extractTimestamp(T element, long previousElementTimestamp)
     
    final org.apache.flink.streaming.api.watermark.Watermark
     
    long
     

    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.eventtime.WatermarkStrategy

    getAlignmentParameters, withIdleness, withTimestampAssigner, withTimestampAssigner, withWatermarkAlignment, withWatermarkAlignment

    Methods inherited from interface org.apache.flink.streaming.runtime.operators.util.WatermarkStrategyWithPeriodicWatermarks

    createTimestampAssigner, createWatermarkGenerator
  • Constructor Details

    • BoundedOutOfOrdernessTimestampExtractor

      public BoundedOutOfOrdernessTimestampExtractor(Duration maxOutOfOrderness)
  • Method Details

    • getMaxOutOfOrdernessInMillis

      public long getMaxOutOfOrdernessInMillis()
    • extractTimestamp

      public abstract long extractTimestamp(T element)
      Extracts the timestamp from the given element.
      Parameters:
      element - The element that the timestamp is extracted from.
      Returns:
      The new timestamp.
    • getCurrentWatermark

      public final org.apache.flink.streaming.api.watermark.Watermark getCurrentWatermark()
      Specified by:
      getCurrentWatermark in interface org.apache.flink.streaming.runtime.operators.util.WatermarkStrategyWithPeriodicWatermarks<T>
    • extractTimestamp

      public final long extractTimestamp(T element, long previousElementTimestamp)
      Specified by:
      extractTimestamp in interface org.apache.flink.api.common.eventtime.TimestampAssigner<T>