Flink保存点一般存在哪里?

Flink保存点一般存在哪里?

展开
收起
真的很搞笑 2024-04-09 07:50:45 64 分享 版权
阿里云 AI 助理回答

Flink保存点(Savepoint)的存储位置主要取决于配置和使用的存储系统。以下是详细的说明:

1. 默认存储路径

Flink保存点通常存储在分布式文件系统中,例如阿里云OSS(对象存储服务)。具体的存储路径可以通过savepointLocation参数查看或配置。
- 示例路径:https://oss/bucket/flink/flink-jobs/namespaces/vvp-team/deployments/5a19a71b-1c42-4f34-94fd-86cf60782c81/checkpoints/sp-3285

2. 存算分离模式下的存储

在存算分离模式下,保存点的存储位置可能会根据配置动态调整: - 本地存储优先:当state.backend.gemini.file.cache.type设置为LIMITED时,状态数据首先存储在本地磁盘。如果本地磁盘空间不足(低于state.backend.gemini.file.cache.preserved-space配置的阈值,默认为2 GB),数据会被转移到分布式文件系统(DFS)中。 - 直接存储到DFS:如果state.backend.gemini.file.cache.type设置为INFINITE,则状态数据仅存储在本地磁盘,不会转移到DFS。

3. OSS作为存储系统时的注意事项

当使用OSS作为分布式文件系统时,需要注意以下问题: - OSS Client SDK会先将文件完整写入本地磁盘,然后再上传到OSS。这可能导致本地磁盘空间被大量占用,尤其是在创建大体积的未压缩文件时。 - 解决方法:通过增加并发数量等方式减少单节点的状态大小,从而缓解本地磁盘压力。

4. 结合Tag功能的长期存储

为了确保保存点的长期可用性,可以结合Paimon的Tag功能: - 在触发保存点的同时,自动创建对应的Tag(格式为savepoint-${savepointID})。 - Tag能够长期保留某个快照的状态,避免因快照过期清理导致无法恢复作业的问题。

5. 手动指定存储路径

用户可以在创建保存点时手动指定存储路径。例如,在停止作业时选择“停止前创建一次快照”,系统会将保存点存储到指定位置。

重要提醒

  • 手动创建的保存点只能手动删除,无法通过自动清理规则删除。
  • 如果使用OSS存储,请确保本地磁盘有足够的空间以应对临时文件的写入需求。
  • 建议定期检查保存点的存储位置和状态,以确保其可用性和完整性。

通过以上配置和注意事项,您可以灵活管理Flink保存点的存储位置,并确保其在业务恢复和状态管理中的可靠性。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答

实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。

还有其他疑问?
咨询AI助理