Flink作业完成时的保存点



我有一个用例,我需要使用有界S3源播种Flink应用程序(包括RocksDB状态和Broadcast状态),然后在播种完成后读取其他无界/有界S3源。

我试着用两步来实现这个目标:

  1. 种子:触发一个Flink作业,只有种子数据有边界的来源,并在作业完成后获取保存点。
  2. Regular Processing:从新的Flink图上的种子保存点恢复,以处理其他无界/有界S3源。

问题:

  1. 对于步骤1:Flink是否支持在流式模式下完成作业后自动获取保存点。
  2. 如果只支持手动保存点触发器,那么当所有的播种数据都处理完,所有的任务都处理完时,可以使用什么done信号?

任何其他实现播种用例的方法也值得赞赏。注意:我们缓冲常规数据直到处理种子数据的方法对于我的用例是不可行的

感谢
  1. 使用无界源,您可以使用外部化检查点,并且您将能够从检查点启动/恢复作业。启用此功能时,必须有一个进程在作业取消时清除检查点,否则Flink将不会删除检查点。

  2. 你可以使用Flink 1.15中提供的新功能(完成任务的检查点)来做到这一点。

最新更新