首页 > 解决方案 > Flink 进程函数背压问题

问题描述

我在 Flink 作业中实现了一个流程功能,当注入大量(1000 万条记录)时,流程功能似乎已锁定并导致其前后的操作员暂停并等待刷新、交换间隔。

过程功能性能

这似乎 Flink 源一直在等待,直到后来的操作员从忙碌中解脱出来。这是 Flink 中的背压处理吗,无论如何我们可以配置让流在没有这种间隔等待的情况下流动?

标签: apache-flinkflink-streaming

解决方案


如果process被阻塞,数据将流向哪里?背压并不是 Flink 所做的明确的事情(据我所知)。相反,这是下游运营商无法接受更多数据的自然结果。

听起来你需要做的是看看如何让你的工作更加并行。这可能就像简单地增加并行度一样简单,但是如果您的数据是键控的,并且问题实际上是键在单位时间内接收的数据多于有效处理的数据,则可能会更复杂。在这种情况下,您可能需要让您的密钥实际上是这样的,以便您的数据被拆分到多个分区中。

但是在不知道您的应用程序的细节的情况下,这一切都只是猜测。


推荐阅读