You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user-zh@flink.apache.org by yidan zhao <hi...@gmail.com> on 2021/10/12 08:24:38 UTC

关于slot分配

我以前采用分配到多个TM的机制,最近尝试了下默认的优先单个TM的机制。
但是发现个问题,我当前每个TM是10个slot,我有个任务40并发,然后实际占用了5个TM,10+10+10+2+8。这个是啥情况呢?

我更期望要么就彻底平均(配置spread那个参数),要么就单个TM这样用。
前者:期望机器之间均衡。
后者:期间任务之间完全隔离,我的任务并发会设置单TMslot数量(10)的倍数。

Re: 关于slot分配

Posted by yidan zhao <hi...@gmail.com>.
目前从概率上来看,默认cluster.evenly-spread-out-slots 设为
false的情况下,都是单TM用完才下一个TM,只有少数时候不清楚啥情况就出现这种问题了。

这种情况下,我是想彻底隔离任务,一旦某个TM的slot没用完,会导致提交其他任务可能也用到该TM,这样任务隔离性不够。
然后有时候机器出问题,或者任务出问题重启导致TM失败等会导致更多的任务重启。

Caizhi Weng <ts...@gmail.com> 于2021年10月13日周三 上午10:20写道:

> Hi!
>
> “默认的优先单个 TM 的机制”我记得没有这样的参数。你的意思是把 cluster.evenly-spread-out-slots 设为 false
> 吗?如果是这样,那么会在所有 slot 中任意选择,而不是优先单个 TM。
>
> 想知道优先单个 TM 是出于什么样的需求呢?因为这样做可能会造成集群内部分机器很忙,但部分机器空闲的情况,忙机器上的并发会被拖慢。
>
> yidan zhao <hi...@gmail.com> 于2021年10月12日周二 下午4:25写道:
>
> > 我以前采用分配到多个TM的机制,最近尝试了下默认的优先单个TM的机制。
> > 但是发现个问题,我当前每个TM是10个slot,我有个任务40并发,然后实际占用了5个TM,10+10+10+2+8。这个是啥情况呢?
> >
> > 我更期望要么就彻底平均(配置spread那个参数),要么就单个TM这样用。
> > 前者:期望机器之间均衡。
> > 后者:期间任务之间完全隔离,我的任务并发会设置单TMslot数量(10)的倍数。
> >
>

Re: 关于slot分配

Posted by Caizhi Weng <ts...@gmail.com>.
Hi!

“默认的优先单个 TM 的机制”我记得没有这样的参数。你的意思是把 cluster.evenly-spread-out-slots 设为 false
吗?如果是这样,那么会在所有 slot 中任意选择,而不是优先单个 TM。

想知道优先单个 TM 是出于什么样的需求呢?因为这样做可能会造成集群内部分机器很忙,但部分机器空闲的情况,忙机器上的并发会被拖慢。

yidan zhao <hi...@gmail.com> 于2021年10月12日周二 下午4:25写道:

> 我以前采用分配到多个TM的机制,最近尝试了下默认的优先单个TM的机制。
> 但是发现个问题,我当前每个TM是10个slot,我有个任务40并发,然后实际占用了5个TM,10+10+10+2+8。这个是啥情况呢?
>
> 我更期望要么就彻底平均(配置spread那个参数),要么就单个TM这样用。
> 前者:期望机器之间均衡。
> 后者:期间任务之间完全隔离,我的任务并发会设置单TMslot数量(10)的倍数。
>