Как я могу справиться с бездельем в источнике кафки для водяных знаков с помощью таблицы или SQL api?

#apache-flink #flink-streaming #flink-sql

Вопрос:

Мы можем справиться с бездействием в api потока данных с помощью этого блока кода:

 WatermarkStrategy
        .<Tuple2<Long,String>>forBoundedOutOfOrderness(Duration.ofSeconds(20))
        .withIdleness(Duration.ofMinutes(1));
 

Но возможно ли что-то подобное в flink table/SQL api?

Ответ №1:

Вы можете установить table.exec.source.idle-timeout . Видишь https://nightlies.apache.org/flink/flink-docs-stable/docs/dev/table/config/#table-exec-source-idle-timeout для получения дополнительной информации.

Комментарии:

1. Привет, знаете ли вы о каких-либо обновлениях для этого параметра в Flink SQL между Flink 1.12 и Flink 1.13? Я не могу заставить его работать в Flink 1.12, но он работает в 1.13. В примечаниях к выпуску, похоже, ничего нет по этому поводу 🙁

2. Дэвид Андерсон закрывает ли окно table.exec.source.idle.timeout и перемещается вперед или позволяет окну других источников продолжить и пометить тему в режиме ожидания и продолжать увеличивать окно этого источника, но не позволит беспокоить другие источники? Я хочу больше понять, что делает эта конфигурация?