我有一个flink作业(2个任务管理器),作业并行度为64,任务槽为64。
我将其中一个运算符的并行度设置为16。该运算符(16个并行度)插槽未在两个任务管理器中均匀分布。它通常需要更高的任务位,比如一个任务管理器中的10/11和其他任务管理器中的5/6。
我使用的是flink版本1.11.2。我试着添加了一个集群。平均地-分散-展开-插槽:是真的,但它不起作用。任何解决方案都非常受欢迎。
发布于 2021-03-23 16:27:15
我不相信你还能做什么。Flink调度器将尝试将消费者任务与其生产者放在同一位置,以便利用网络堆栈中的优化。(只要两个通信任务在同一JVM中,就使用共享内存而不是网络内存。)据我所知,cluster.evenly-spread-out-slots: true实际上只与没有输入首选项的源相关。
通常情况下,降低部分作业的并行度会适得其反,因为它会强制网络洗牌(可能会阻止操作员链接),并在任务槽上造成负载偏差。
https://stackoverflow.com/questions/66757295
复制相似问题