什么原因可能导致阶段在 Spark 中重试

What can cause a stage to reattempt in Spark

提问人:Some Name 提问时间:11/10/2018 最后编辑:Some Name 更新时间:4/21/2023 访问量:3429

问:

我在Spark网页(与yarn一起使用)中具有以下阶段:

enter image description here

我对重试 1、重试 2 感到惊讶的事情。是什么原因导致了这样的事情?Stage 0

我试图自己重现它并杀死了我的一台集群机器上的所有执行器进程(),但我得到的只是一些失败的任务,并带有描述。CoarseGrainedExecutorBackendResubmitted (resubmitted due to lost executor)

整个阶段重试的原因是什么?我很好奇的是,在每个阶段尝试中读取的记录数量是不同的:

enter image description here

enter image description here

请注意 in 和 中的 。阶段重试是否会导致 Spark 重新读取某些记录两次?3011506Attempt 1195907736Attempt 0

scala apache-spark

评论


答:

5赞 Shiva Garg 6/5/2020 #1

阶段失败可能是由于 Spark 中的 FetchFailure 造成的

提取失败:Reduce任务无法执行随机读取,即无法在磁盘上找到随机文件写入的随机映射任务。

如果 stageFailureCount < maxStageFailures,Spark 将重试该阶段,否则将中止该阶段和相应的作业。

https://youtu.be/rpKjcMoega0?t=1309

1赞 Fei YuanXing 4/21/2023 #2

Fetch Failure:Reduce任务无法执行shuffle Read,即无法在磁盘上找到shuffle文件写入的shuffle映射任务。