Flink:执行管道java.util.concurrent.TimeoutException时出错:[10000毫秒]后期货超时

Flink:执行管道java.util.concurrent.TimeoutException时出错:[10000毫秒]后期货超时,java,batch-processing,apache-flink,Java,Batch Processing,Apache Flink,我使用的是flinkv1.4.0 我正在利用Flink的原生图形API(Gelly),我正在使用它处理1200万个数据点(边)。我目前正在通过IntelliJ使用Flink微型集群运行作业,该集群在同一JVM中执行所有TaskManager和JobManager 当我加载数据,有效地生成边时,就在我运行Flink作业之前,我总是遇到以下异常: ... Connected to JobManager at Actor[akka://flink/user/jobmanager_1#XXXXXXXXX

我使用的是
flinkv1.4.0

我正在利用Flink的原生图形API(Gelly),我正在使用它处理1200万个数据点(边)。我目前正在通过
IntelliJ
使用
Flink
微型集群运行作业,该集群在同一JVM中执行所有TaskManager和JobManager

当我加载数据,有效地生成边时,就在我运行
Flink
作业之前,我总是遇到以下异常:

...
Connected to JobManager at Actor[akka://flink/user/jobmanager_1#XXXXXXXXXX] with leader session id XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX.
322062 [main] ERROR com.somecompany.some.domain.name.some.javaClass- Error executing pipeline
java.util.concurrent.TimeoutException: Futures timed out after [10000 milliseconds]
            at scala.concurrent.impl.Promise$DefaultPromise.ready(Promise.scala:223)
            at scala.concurrent.impl.Promise$DefaultPromise.ready(Promise.scala:157)
            at scala.concurrent.Await$$anonfun$ready$1.apply(package.scala:169)
            at scala.concurrent.Await$$anonfun$ready$1.apply(package.scala:169)
            at scala.concurrent.BlockContext$DefaultBlockContext$.blockOn(BlockContext.scala:53)

我确保通过
IntelliJ
编辑运行配置以添加:

-Dakka.client.timeout:600s
-Dakka.ask.timeout:600s
但例外情况依然存在,至于是什么导致了这种情况,我没有其他线索。当我减小数据大小时,一切正常

当我试图通过
Flink UI
提交相同的作业以在集群上安装的
Flink
本地版本上运行时,也会出现相同的问题。在这种情况下,作业永远不会启动,我甚至无法预览自动生成的运算符DAG。当我减少要处理的数据量时,问题再次消失。我还更新了
flink-conf.yaml
以包含相同的
akka
配置属性,但没有任何区别


如何解决此问题?

在IntelliJ中运行Flink作业时,依赖Flink迷你集群。迷你集群不同于在独立、纱线或Mesos上运行Flink,因为它依赖于单个JVM。此外,微型集群是以多种方式预先配置的,改变这种配置并不总是可能的(至少在某些设置方面)

在将作业提交到集群时(而不是在通过小型集群运行作业时),我必须更改的一件事是分配给作业管理器的堆内存的大小。这是必要的,因为加载要处理的数据并不是我想要运行的Flink作业的一部分(这不是Flink中的标准实践,这样做实际上是错误的)。通过增加作业管理器的堆,我可以让我的作业运行,但最终我必须为我的Flink作业定义一种新的输入格式,以避免作业管理器必须预加载数据以执行—无论如何,这不应该是它的责任

对于眼前的问题:无法通过IntelliJ(据我所知)将堆内存分配给作业管理器,因此作业总是会失败