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 赵一旦 <hi...@gmail.com> on 2020/10/30 09:42:22 UTC

Flink反压定位算子

如题,当前Flink任务反压情况下,基于Flink WebUI可以定位到反压算子C1的前一个算子B1。
但是B1的后续如果有很多个算子,比如C1、C2、C3、......、Cn。如何在C1-Cn之间定位问题算子呢?总不能不断拆分任务,去除部分算子排除法吧。


当前希望是通过metrics指标来看。但是,和buffer相关的指标,目前发现有很多指标恒定为0,感觉貌似是没统计,而不是实际值是0。
比如 0.buffers.inPoolUsage这类指标一直都是0。

请问这种case怎么解,怎么进一步定位?以及什么metric有效呢?

Re: Flink反压定位算子

Posted by 赵一旦 <hi...@gmail.com>.
没有人有这方面经验分享下嘛?

赵一旦 <hi...@gmail.com> 于2020年10月30日周五 下午5:59写道:

>
> 我看了下,inputQueueLength和outputQueueLength是有值的。xxxPoolUsage都是0(包括exclusive,floating)。numBuffersInLocal这种也有值。还有的指标本身有值,带个PerSecond没值,这都不合理呀,比如指标A的值在几千,但指标AperSecond却是0。
> 明显存在很多指标固定为0,但是现在混淆在一起,不清楚是指标统计了,值为0,还是就没统计。
>
>
> 赵一旦 <hi...@gmail.com> 于2020年10月30日周五 下午5:52写道:
>
>>
>> 如我上一个email写的内容。inPool这种指标我懂,但是目前按照我的观察,这些指标默认都是0。不像是真实是0,而是貌似这些指标不生效就。flink是不是有什么开关,默认没做这个统计啊。
>>
>> 范瑞 <83...@qq.com> 于2020年10月30日周五 下午5:49写道:
>>
>>> Hi
>>> 可以查看所有 C 算子的 InPoolUsage 这个 Metric 来定位哪个 C有问题了。inPoolUsage高才会导致上游的 B反压
>>> 祝好🤞
>>> fanrui
>>>
>>>
>>>
>>> ---原始邮件---
>>> 发件人: "赵一旦"<hinobleyd@gmail.com&gt;
>>> 发送时间: 2020年10月30日(周五) 下午5:43
>>> 收件人: "user-zh"<user-zh@flink.apache.org&gt;;
>>> 主题: Flink反压定位算子
>>>
>>>
>>> 如题,当前Flink任务反压情况下,基于Flink WebUI可以定位到反压算子C1的前一个算子B1。
>>>
>>> 但是B1的后续如果有很多个算子,比如C1、C2、C3、......、Cn。如何在C1-Cn之间定位问题算子呢?总不能不断拆分任务,去除部分算子排除法吧。
>>>
>>>
>>> 当前希望是通过metrics指标来看。但是,和buffer相关的指标,目前发现有很多指标恒定为0,感觉貌似是没统计,而不是实际值是0。
>>> 比如 0.buffers.inPoolUsage这类指标一直都是0。
>>>
>>> 请问这种case怎么解,怎么进一步定位?以及什么metric有效呢?
>>
>>

Re: Flink反压定位算子

Posted by 赵一旦 <hi...@gmail.com>.
我看了下,inputQueueLength和outputQueueLength是有值的。xxxPoolUsage都是0(包括exclusive,floating)。numBuffersInLocal这种也有值。还有的指标本身有值,带个PerSecond没值,这都不合理呀,比如指标A的值在几千,但指标AperSecond却是0。
明显存在很多指标固定为0,但是现在混淆在一起,不清楚是指标统计了,值为0,还是就没统计。


赵一旦 <hi...@gmail.com> 于2020年10月30日周五 下午5:52写道:

>
> 如我上一个email写的内容。inPool这种指标我懂,但是目前按照我的观察,这些指标默认都是0。不像是真实是0,而是貌似这些指标不生效就。flink是不是有什么开关,默认没做这个统计啊。
>
> 范瑞 <83...@qq.com> 于2020年10月30日周五 下午5:49写道:
>
>> Hi
>> 可以查看所有 C 算子的 InPoolUsage 这个 Metric 来定位哪个 C有问题了。inPoolUsage高才会导致上游的 B反压
>> 祝好🤞
>> fanrui
>>
>>
>>
>> ---原始邮件---
>> 发件人: "赵一旦"<hinobleyd@gmail.com&gt;
>> 发送时间: 2020年10月30日(周五) 下午5:43
>> 收件人: "user-zh"<user-zh@flink.apache.org&gt;;
>> 主题: Flink反压定位算子
>>
>>
>> 如题,当前Flink任务反压情况下,基于Flink WebUI可以定位到反压算子C1的前一个算子B1。
>>
>> 但是B1的后续如果有很多个算子,比如C1、C2、C3、......、Cn。如何在C1-Cn之间定位问题算子呢?总不能不断拆分任务,去除部分算子排除法吧。
>>
>>
>> 当前希望是通过metrics指标来看。但是,和buffer相关的指标,目前发现有很多指标恒定为0,感觉貌似是没统计,而不是实际值是0。
>> 比如 0.buffers.inPoolUsage这类指标一直都是0。
>>
>> 请问这种case怎么解,怎么进一步定位?以及什么metric有效呢?
>
>

Re: Flink反压定位算子

Posted by 赵一旦 <hi...@gmail.com>.
如我上一个email写的内容。inPool这种指标我懂,但是目前按照我的观察,这些指标默认都是0。不像是真实是0,而是貌似这些指标不生效就。flink是不是有什么开关,默认没做这个统计啊。

范瑞 <83...@qq.com> 于2020年10月30日周五 下午5:49写道:

> Hi
> 可以查看所有 C 算子的 InPoolUsage 这个 Metric 来定位哪个 C有问题了。inPoolUsage高才会导致上游的 B反压
> 祝好🤞
> fanrui
>
>
>
> ---原始邮件---
> 发件人: "赵一旦"<hinobleyd@gmail.com&gt;
> 发送时间: 2020年10月30日(周五) 下午5:43
> 收件人: "user-zh"<user-zh@flink.apache.org&gt;;
> 主题: Flink反压定位算子
>
>
> 如题,当前Flink任务反压情况下,基于Flink WebUI可以定位到反压算子C1的前一个算子B1。
>
> 但是B1的后续如果有很多个算子,比如C1、C2、C3、......、Cn。如何在C1-Cn之间定位问题算子呢?总不能不断拆分任务,去除部分算子排除法吧。
>
>
> 当前希望是通过metrics指标来看。但是,和buffer相关的指标,目前发现有很多指标恒定为0,感觉貌似是没统计,而不是实际值是0。
> 比如 0.buffers.inPoolUsage这类指标一直都是0。
>
> 请问这种case怎么解,怎么进一步定位?以及什么metric有效呢?

回复:Flink反压定位算子

Posted by 范瑞 <83...@qq.com>.
Hi
可以查看所有 C 算子的 InPoolUsage 这个 Metric 来定位哪个 C有问题了。inPoolUsage高才会导致上游的 B反压
祝好🤞
fanrui



---原始邮件---
发件人: "赵一旦"<hinobleyd@gmail.com&gt;
发送时间: 2020年10月30日(周五) 下午5:43
收件人: "user-zh"<user-zh@flink.apache.org&gt;;
主题: Flink反压定位算子


如题,当前Flink任务反压情况下,基于Flink WebUI可以定位到反压算子C1的前一个算子B1。
但是B1的后续如果有很多个算子,比如C1、C2、C3、......、Cn。如何在C1-Cn之间定位问题算子呢?总不能不断拆分任务,去除部分算子排除法吧。


当前希望是通过metrics指标来看。但是,和buffer相关的指标,目前发现有很多指标恒定为0,感觉貌似是没统计,而不是实际值是0。
比如 0.buffers.inPoolUsage这类指标一直都是0。

请问这种case怎么解,怎么进一步定位?以及什么metric有效呢?