apache-flink - 是否可以配置 Flink 飞行前类型的序列化扫描?
问题描述
Flink 在 Flink 应用程序的预运行阶段执行大量扫描(https://ci.apache.org/projects/flink/flink-docs-stable/dev/types_serialization.html)。创建源、运算符和接收器的行为会导致 Flink 扫描在给定流的拓扑中使用的对象的数据类型,因为显然 Flink 将尝试基于此信息优化作业。
此扫描是否可配置?我可以关闭它并强制 Flink 仅使用 Kryo 序列化而不需要或使用任何这些扫描信息吗?
我在一个自动生成的专有库中有一个非常大、深度嵌套的类,并且 Flink 在扫描它时似乎进入了一个非常大的无限循环,导致运行几个小时后出现内存不足错误(应用程序实际上从未通过env.execute()
,即使我显着增加了堆大小)。该类有许多循环引用,即类及其子类包含对同一类型的其他类的引用,这可能是一个问题吗?
解决方案
推荐阅读
- python-3.x - 为什么我的代码会吐出错误的文本?
- python - 如何将基于文本的程序制作成 GUI?tkinter 会是关键吗?
- python - 无法使用 pyautogui 最大化缩放应用程序
- c++ - 我的代码在查找最大双音子数组的长度时有什么问题
- postgresql - Postgres 无法识别已创建的用户
- javascript - 将键值对分解为具有相同键的单独对象
- git - Heroku 构建成功但有应用程序错误
- postgresql - postgresql,占用内存大,进程多
- node.js - 为什么我的 lambda 无法识别 node_modules 中的依赖关系?
- fp-ts - fp-ts:过滤掉某些左边的值,右边的错误