checkpoint文件大小不断增加的原因是由于任务的状态不断累积导致的;所以如果任务状态很大的情况下,比如Group by 的字段过多等等,可以考虑开启增量state.backend.incremental,同时可以考虑任务的类型,如果任务是按天进行聚合指标的情况可以考虑设置状态过期清理时间idlestate.retention.time为一天等方式来防止chekcpoint保留状态数据的不断增加,或者增加速度过快导致任务的内存不够而被Kill掉;
但是看您的描述,并不是设置State TTL不生效,而是要考虑状态时间戳的更新方式,因为状态时间戳被更新存在两种模式StateTtlConfig.UpdateType.OnCreateAndWrite - 只在创建和写的时候更新(默认),StateTtlConfig.UpdateType.OnReadAndWrite - 在读和写的时候更新,所以可以考虑您的任务情况采用哪种设定状态的更新模式;
同时过期数据的清理策略和您设定的checkpoint保留是增量、全量或者增量RocksDB保留的策略都有关了,您可以综合考虑自己的checkpoint保留策略和任务类型合理设定状态过期清理时间idlestate.retention.time 和状态时间戳的更新方式以及任务的checkpoint的保留策略*来自志愿者整理的FLINK邮件归档
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。