Flink CK和SP不设置自动清理的话,系统会怎样处理,一直堆积下去吗?
如果Flink的Checkpoint(CK)和Savepoint(SP)没有设置自动清理,系统不会一直堆积下去。相反,Flink会定期执行垃圾回收操作来释放不再需要的CK和SP文件。
在Flink中,每个CK和SP文件都会关联一个过期时间。当系统检测到某个CK或SP文件的过期时间已过,且该文件没有被作业引用时,它会被标记为垃圾文件,等待垃圾回收器的处理。
Flink的垃圾回收器会根据配置的策略定期扫描并清理过期的CK和SP文件。默认情况下,Flink会每隔一段时间(例如30分钟)执行一次垃圾回收操作。这个时间间隔可以通过调整state.backend.rocksdb.cleanup-delay
参数来进行调整。
因此,即使没有设置自动清理,Flink也不会让CK和SP文件无限期地堆积下去。它会通过定期执行垃圾回收操作来释放不再需要的CK和SP文件,以保持系统的可用空间和性能。
在Flink中,Checkpoint(CK)和Savepoint(SP)是用于数据一致性和故障恢复的重要机制。
如果不设置自动清理,随着时间的推移,Checkpoint和Savepoint的数据可能会一直堆积,导致存储空间逐渐被占满。这可能会引发以下问题:
为了避免这些问题,通常建议设置自动清理策略,定期清理旧的Checkpoint和Savepoint数据。这样既能保证足够的存储空间,又能确保系统性能和数据一致性。
CK系统默认保留1个,这个还好,SP的话如果你配置了自动生成,但是没有配置自动清理会一直在OSS里面保留。此回答整理自钉群“实时计算Flink产品交流群”
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。