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

因此,你会看到失败的任务或被删除的执行单元:

作业失败

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

  • 自动缩放:在这种情况下,这是预期的,而不是错误。 请参阅启用自动缩放
  • 现成 VM 实例丢失:云提供商正在回收你的 VM。 可在此处了解有关现成 VM 实例的详细信息。
  • 执行程序内存不足

作业失败

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

失败原因

您可能会遇到通用错误。 单击说明中的链接以查看是否可以获取详细信息:

失败说明

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

失败任务数

执行程序失败

若要了解执行程序失败的原因,首先需要检查计算的 事件日志 ,以查看执行程序失败的原因是否有任何解释。 例如,可以使用现成实例,而云提供商会将其带回。

事件日志

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

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

“执行程序”选项卡

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

失败的执行程序示例

下一步

如果你已经到达这里,最可能的解释是内存问题。 下一步是深入分析内存问题。 请参阅 Spark 内存问题