我希望得到一些简单的规则或指导方针,以确定operator或job并行度应设置为什么值。对我来说,它似乎应该是一个小于等于可用任务槽数量的数字?
例如,假设我有两台task manager机器,每台机器上有4个任务槽。假设在集群上没有其他作业正在运行,在像filter和map这样的操作中,我应将并行度设置为8吗?如果不是,什么数量是合理的?
如果您请求的并行度超过了任务槽数量会发生什么?在上面的例子中,如果我在操作中将并行度设置为12,会发生什么?我认为它会尽可能使用所有可用资源?
此外,似乎您不希望将并行度硬编码到源代码中,因为您希望在提交作业时大致了解可用任务槽的情况?您应该将所有运算符的并行度设置为大致相同的值还是不同的值,并且这个决定会受到什么的指导?
谢谢!