Я использую состояние ключа Flink и TTL.
Мое приложение непрерывно получает данные и сохраняет их в состоянии ввода по идентификатору, мне нужна стратегия очистки TTL, которая достигает:
срок действия данных истекает через 2 дня после последнего обновления.
состояние периодически очищается - даже если к некоторому состоянию ключа больше не обращаются, оно будет очищено из кучи и резервной копии в какой-то момент. (контрольная точка / точка сохранения / другое)
на данный момент у меня есть:
static StateTtlConfig ttlConfig = StateTtlConfig
.newBuilder(Time.days(2))
.neverReturnExpired()
.updateTtlOnCreateAndWrite()
.build();
, но я не знаю, следует ли мне использовать:
cleanupFullSnapshot , cleanupIncrementally или другая стратегия?
в настоящее время я использую резервное копирование в RocksDB, но мне нужно очистить состояние от в любом случае, куча.
спасибо