T
- The type of the emitted records.@Internal public interface TimestampsAndWatermarks<T>
SourceReader
.
Implementations of this class may or may not actually perform certain tasks, like watermark generation. For example, the batch-oriented implementation typically skips all watermark generation logic.
Modifier and Type | Interface and Description |
---|---|
static class |
TimestampsAndWatermarks.TimestampsAndWatermarksContextProvider |
static interface |
TimestampsAndWatermarks.WatermarkUpdateListener
Lets the owner/creator of the output know about latest emitted watermark.
|
Modifier and Type | Method and Description |
---|---|
ReaderOutput<T> |
createMainOutput(PushingAsyncDataInput.DataOutput<T> output,
TimestampsAndWatermarks.WatermarkUpdateListener watermarkCallback)
Creates the ReaderOutput for the source reader, than internally runs the timestamp extraction
and watermark generation.
|
static <E> TimestampsAndWatermarks<E> |
createNoOpEventTimeLogic(WatermarkStrategy<E> watermarkStrategy,
MetricGroup metrics,
RelativeClock inputActivityClock) |
static <E> TimestampsAndWatermarks<E> |
createProgressiveEventTimeLogic(WatermarkStrategy<E> watermarkStrategy,
MetricGroup metrics,
ProcessingTimeService timeService,
long periodicWatermarkIntervalMillis,
RelativeClock mainInputActivityClock,
Clock clock,
TaskIOMetricGroup taskIOMetricGroup) |
void |
emitImmediateWatermark(long wallClockTimestamp)
Emit a watermark immediately.
|
void |
pauseOrResumeSplits(Collection<String> splitsToPause,
Collection<String> splitsToResume) |
void |
startPeriodicWatermarkEmits()
Starts emitting periodic watermarks, if this implementation produces watermarks, and if
periodic watermarks are configured.
|
void |
stopPeriodicWatermarkEmits()
Stops emitting periodic watermarks.
|
ReaderOutput<T> createMainOutput(PushingAsyncDataInput.DataOutput<T> output, TimestampsAndWatermarks.WatermarkUpdateListener watermarkCallback)
void startPeriodicWatermarkEmits()
Periodic watermarks are produced by periodically calling the WatermarkGenerator.onPeriodicEmit(WatermarkOutput)
method of the underlying Watermark Generators.
void stopPeriodicWatermarkEmits()
void emitImmediateWatermark(long wallClockTimestamp)
void pauseOrResumeSplits(Collection<String> splitsToPause, Collection<String> splitsToResume)
static <E> TimestampsAndWatermarks<E> createProgressiveEventTimeLogic(WatermarkStrategy<E> watermarkStrategy, MetricGroup metrics, ProcessingTimeService timeService, long periodicWatermarkIntervalMillis, RelativeClock mainInputActivityClock, Clock clock, TaskIOMetricGroup taskIOMetricGroup)
static <E> TimestampsAndWatermarks<E> createNoOpEventTimeLogic(WatermarkStrategy<E> watermarkStrategy, MetricGroup metrics, RelativeClock inputActivityClock)
Copyright © 2014–2024 The Apache Software Foundation. All rights reserved.