【发布时间】:2021-09-08 01:34:17
【问题描述】:
我使用 state-processor-api,因为它被发布来引导我的 flink 状态。我使用 RocksDBStateBackend 并且它有效。 我们最近去了 flink 1.13,RocksDBStateBackend 被弃用,取而代之的是 EmbeddedRocksDBStateBackend。
我的问题:
由于 API 的变化和我开发的新引导作业,我得到了以下异常:
Caused by: java.io.IOException: Size of the state is large than the 最大允许的内存支持状态。尺寸=85356498,最大尺寸=5242880 .考虑使用不同的状态后端,例如文件系统状态 后端。
在这里我声明我的 statebackend:
val backend = new EmbeddedRocksDBStateBackend(true)
我在这里创建我的保存点:
Savepoint
.create(backend, MAX_PARALLELISM)
.withOperator("my_operator", transformMyOperator)
.write(savepointPath)
另外,我的 flink 集群配置为使用 RocksDB 状态后端, 和所有其他 flink 拓扑都使用 RocksDB 后端。
所以我想知道为什么我得到一个异常说我不应该使用内存状态后端,因为我使用的是 RocksDB。欢迎任何帮助。
【问题讨论】:
标签: apache-flink