我正在尝试按照documentation在Java 1.8.3中设置一个总体并行度设置
StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();
env.setParallelism(4);
除此之外,我还在接收器和源上进行了setParallelism(2)
调用。
我还可以在flink UI中看到应用了环境设置(长时间运行的会话集群、通过rest API或Flink UI提交的作业):
但是,当我查看各个阶段在Flink UI中运行的并行度时,它们都是以并行度1运行的(源和宿除外,它们都是以预期的并行度设置运行的):
我已经尝试在各个运算符上设置并行度设置,但没有改变任何东西。运算符是法线平面图和过滤器。
为了让所有运算符正确地遵守并行度设置,这里没有正确配置什么?我不能假设设置环境级别并行度会自动将其应用于所有运算符吗?也就是说,在设置并行度设置时,我是否也需要注意其他东西?
发布于 2020-07-09 15:07:22
我没有尝试在flink作业代码中更改并行度设置,而是在启动Flink作业时传递了一个并行度设置,从而“修复”了它。这不仅可以通过CLI实现,也可以通过Rest API和Flink UI实现。现在一切都像预期的那样为我们工作。
发布于 2021-08-18 01:44:49
我最近也遇到了类似的问题,我在使用taskmanager.numberOfTaskSlots
时遇到了一个问题。确保您的任务管理器有足够的空闲时间。
https://stackoverflow.com/questions/62790905
复制相似问题