Kinesis Data Analytics Flink:不断增加检查点大小

问题描述

我正在使用AWS Kinesis Data Analytics(KDA)服务运行Flink应用程序。我的KDA Flink应用程序上一个检查点的大小似乎随着时间的推移而稳定增长。在附件图中,您可以看到检查点大小的突然下降与我将更改推送到应用程序,导致它拍摄快照,更新然后从快照还原时相对应。我担心的是,一旦不再积极开发应用程序,更改将不会按常规部署,并且检查点的大小最终可能会变得太大。

有人知道会导致检查点大小无休止地持续增长的原因吗?我在所有重要状态上使用状态TTL,并在不再需要时在应用程序代码删除状态。检查点大小增加是否表明我的代码中存在处理状态的错误,还是此处可能还有其他问题?

Continually Increasing Checkpoint Size

解决方法

AWS Kinesis Data Analytics(KDA)当前基于Flink 1.8,其中适用于状态清除的this documentation

请注意

默认情况下,如果未读取过期状态,则不会将其删除,可能会导致状态不断增长

您还可以在完整快照(似乎正在发生)和background cleanup(听起来像您想要的)期间激活清理。请注意,对于某些工作负载,即使启用了后台清理,后台清理的默认设置也可能不足以跟上清理状态的速率,因此可能需要进行一些调整。

顺便说一句,从Flink 1.10开始默认启用后台清理。

如果这不能回答您的问题,请准确说明状态TTL的配置方式。