Watermark задаёт границу обработки опоздавших событий по event time и помогает очищать состояние потоковых операций. Это не просто текущее время минус задержка.
Что такое watermark в Spark Structured Streaming?
Watermark задаёт границу обработки опоздавших событий по event time и помогает очищать состояние потоковых операций. Это не просто текущее время минус задержка.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
Watermark задаёт границу обработки опоздавших событий по event time и помогает очищать состояние потоковых операций. Это не просто текущее время минус задержка.
Для одного входа ориентир — максимальное наблюдённое время события минус допустимое опоздание. Например, withWatermark('event_time', '10 minutes') используется вместе с поддерживаемой операцией с состоянием. Данные с меньшим опозданием гарантированно не отбрасываются из-за watermark; более поздние могут быть обработаны, но гарантии уже нет. При нескольких потоках важна политика общего watermark.
Источник: Документация Apache Kafka.