Я использую семантику времени событий в своем приложении Flink (версия 1.11.1), которое работает в AWS - kinesis analytics. Это приложение имеет источник как поток кинезиса и приемник как Postgres. Интервал контрольной точки составляет 10 секунд, поскольку приемник БД запускается при notifyCheckpointComplete (). Я использую несколько CoProcessFunction вместе с ValueState для подключения разных потоков, прежде чем передать их в Postgres.
Наблюдение заключается в том, что размер данных контрольной точки растет с течением времени, в то время как количество потоков и использование памяти кучи остается постоянным. Загрузка процессора не превышает 30 процентов. Я надеюсь, что размер данных контрольной точки в конечном итоге стабилизируется.
Просматривая документацию по flink для State TTL, кажется, что в настоящее время состояние ttl поддерживается только для семантики времени обработки - Состояние времени жизни (TTL)
Каковы перспективы развития приложения Flink на основе времени событий?