我有一个在大数据集上运行的截面批处理作业。我的群集由25个节点组成,并作为独立群集运行。关键步骤之一的并行性为70,我希望每个任务经理在该步骤中获得2至3个插槽,而只使用了一半的工人,其中一些人最多可以分配8个插槽(这是最大的插槽他们可以得到)。
除了对数据区域的影响外,另一个副作用是磁盘空间的应变。由于较少的工人正在运行所有插槽,因此与将插槽分布在集群的所有节点相比。
我想念什么吗?有没有办法强迫弗林克在每项工作中分配尽可能多的TMS的插槽?
目前,Flink不支持在一组可用的TaskManagers
上均匀分配任务。原因是Flink认为每个插槽是相等的。将来,Flink社区计划添加更多的调度功能,以解决问题。
目前,我建议将单个操作员的并行性设置为群集中可用插槽的数量。这将确保群集的所有机器都均匀使用。