flink对task分配slot问题

classic Classic list List threaded Threaded
3 messages Options
Reply | Threaded
Open this post in threaded view
|

flink对task分配slot问题

liuhongyang
Dear,
    请教一个问题,当前同一个job下的多个task(不在一个算子链)中,都会存在某一个subTask任务过重,这些subTask会分配到同一个slot下吗?
    flink在对subTask分配slot时候,会先判断slot当前存在的任务数,磁盘IO之类的吗?

Thanks,
Hongyang
Reply | Threaded
Open this post in threaded view
|

Re: flink对task分配slot问题

Xintong Song
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
>
Reply | Threaded
Open this post in threaded view
|

Re: Re: flink对task分配slot问题

liuhongyang
明白了,非常感谢您的回复!

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
>