可以 savepoint 到 HDFS,然后配置 checkpoint 的地址为 对象存储。
我们就是 flink 支持对象存储和 HDFS。 Hangxiang Yu <master...@gmail.com> 于2023年8月2日周三 14:03写道: > Hi, 我理解可以有两种方式: > 1. 设定从某个存储集群上恢复并向另一个存储集群上快照,即设置[1]为 HDFS地址,[2] 为后面的对象存储地址 > 2. 还是在HDFS集群上启停作业,设置 savepoint 目录[3]到对象存储 > > 关于 state processor api,目前 sql 作业确实操作起来比较困难,只能从日志里获取 uid 等信息,以及理解 sql > 实际产生的状态才能使用; > > [1] > > https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/deployment/config/#execution-savepoint-path > [2] > > https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/deployment/config/#state-checkpoints-dir > [3] > > https://nightlies.apache.org/flink/flink-docs-release-1.17/docs/deployment/config/#state-savepoints-dir > > On Sat, Jul 29, 2023 at 11:09 AM casel.chen <casel_c...@126.com> wrote: > > > 我们要将当前在Hadoop Yarn上运行的flink > > sql作业迁移到K8S上,状态存储介质要从HDFS更换到对象存储,以便作业能够从之前保存点恢复,升级对用户无感。 > > 又因为flink作业状态文件内容中包含有绝对路径,所以不能通过物理直接复制文件的办法实现。 > > > > > > 查了一下官网flink state processor api目前读取状态需要传参uid和flink状态类型,但问题是flink > > sql作业的uid是自动生成的,状态类型我们也无法得知,请问有没有遍历目录下保存的所有状态并将其另存到另一个文件系统目录下的API ? > 感觉state > > processor api更适合stream api写的作业,sql作业几乎无法处理。是这样么? > > > > -- > Best, > Hangxiang. > -- ************************************** tivanli **************************************