明白了,非常感谢您的回复!
Thanks,
Hongyang
[hidden email]
发件人: Xintong Song
发送时间: 2020-07-03 13:02
收件人: user-zh
主题: Re: flink对task分配slot问题
Flink 在进行 slot sharing 的时候,不会考虑当前 slot 的任务数、磁盘 IO 这些,而是会遵循“相同 task 的多个
subtask 不能分配到同一个 slot 中”这样的一个规则。
举个例子:
如果作业中有 A, B 两个 vertex,并发为 2,那就有 A1, A2, B1, B2 这 4 个 subtask。
那么 A1 和 A2 不能放到一个 slot 中,B1 和 B2 不能够放到一个 slot 中。
所以,slot sharing 的结果只能是 (A1, B1), (A2, B2) 或 (A1, B2), (A2, B1) 这两种情况。
通常情况下,A 和 B 之间的负载可能存在较大差异,而 A1 和 A2、B1 和 B2 之间通常不会有太大差异。
因此,slot sharing 的规则使得每个 slot 中都分配了一个 A 和一个 B,各个 slot 之间的负载大体上是均衡的。
Thank you~
Xintong Song
On Fri, Jul 3, 2020 at 11:12 AM
[hidden email] <
[hidden email]>
wrote:
> Dear,
>
> 请教一个问题,当前同一个job下的多个task(不在一个算子链)中,都会存在某一个subTask任务过重,这些subTask会分配到同一个slot下吗?
> flink在对subTask分配slot时候,会先判断slot当前存在的任务数,磁盘IO之类的吗?
>
> Thanks,
> Hongyang
>