Class 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:
    Serialized Form
    • 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 Detail

      • BoundedOutOfOrdernessTimestampExtractor

        public BoundedOutOfOrdernessTimestampExtractor​(Duration maxOutOfOrderness)
    • Method Detail

      • 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>