spark 应用程序状态中的 FAILED 和 ERROR 有什么区别

What is the difference between FAILED AND ERROR in spark application states

我正在尝试创建已提交的 Spark 应用程序的状态图。我有点迷失了申请被视为失败的时间。

状态来自这里:https://github.com/apache/spark/blob/d6dc12ef0146ae409834c78737c116050961f350/core/src/main/scala/org/apache/spark/deploy/master/DriverState.scala

这个阶段非常重要,因为在大数据方面,Spark 很棒,但让我们面对现实吧,我们还没有解决问题![​​=12 =]


当 task/job 失败时,Spark 重新启动它(回想一下 Spark 提供的主要抽象 RDD 是一个 Resilient 分布式数据集,这不是我们想要的正在寻找这里,但它会给直觉)。

我使用 Spark 1.6.2,我的集群在标记为 FAILED 时重新启动 job/task 3 次。

例如,我最近的一项工作必须重新启动整个阶段:

在 cluster/app 中,可以看到尝试 ID,这里是应用程序的第 3 次也是最后一次尝试:

如果该尝试被标记为 FAILED(无论出于何种原因,例如内存不足、DNS 错误、GC 分配内存、磁盘故障、节点未响应4 次心跳(可能已关闭)等),然后 Spark 重新启动作业。