作业失败或执行程序已被删除

因此,你会看到失败的作业或移除的执行程序:

作业失败

执行程序被删除的最常见原因是:

  • 自动缩放:在这种情况下,这是预期的,不是错误。 请参阅启用自动缩放

  • 现成 VM 实例丢失:云提供商正在回收你的 VM。 可在此处了解有关现成 VM 实例的详细信息。

  • 执行程序内存不足

作业失败

如果看到任何失败的作业,请单击它们以转到相应页面。 然后向下滚动以查看失败的阶段和失败原因:

失败原因

你可能会收到一般错误。 单击说明中的链接查看是否可以获取详细信息:

失败说明

如果在此页面中向下滚动,可以看到每个任务失败的原因。 在这种情况下,很明显存在内存问题:

失败任务数

执行程序失败

若要了解执行程序失败的原因,首先需要检查计算的事件日志,以查看是否有任何针对执行程序失败原因的解释。 例如,你可能正在使用点实例,而云提供商将收回它们。

事件日志

看看是否有任何事件解释了执行程序丢失的原因。 例如,可能有消息指出群集正在调整大小或现成 VM 实例正在丢失。

如果未在事件日志中看到任何信息,请导航回 Spark UI,然后单击“执行程序”选项卡:

“执行程序”选项卡

在此处可以获取失败的执行程序的日志:

失败的执行程序示例

下一步

如果你已遇到此情况,最可能的解释是内存问题。 下一步是深入分析内存问题。 请参阅 Spark 内存问题