举例说明 如何通过SparkUI和日志定位任务莫名失败?

有一个Task OOM:

  • 通过概览信息,发现Stage 10的Task 36失败了4次导致Job失败。概览信息中显示最后一次失败的退出代码(exit code)是143 ,意味着发生了内存溢出(OOM,即Out of Memory)。

    可以点击Stage链接,查看为什么导致了Executor OOM(Out of Memory)。

  • 通过上述图片发现,大部分Task都成功了,只有一个失败了,这高度怀疑是数据倾斜问题。

    • 如果是Driver逻辑失败导致App失败(例如输入路径不存在、Driver OOM等),应直接查看Driver日志。
    • 如果Driver OOM,可能需要查看Yarn UI。
  • 通过Task日志进一步确认,发现日志中打印的这个Task拉取远程的Shuffle数据远超过上述成功的Task的最大值。明确失败原因为数据倾斜。

Driver fail

  • Driver逻辑导致失败的可能原因包括:

    • 路径没有权限
    • 读取路径为空
    • SparkContext初始化失败
    • 作业代码自己抛出异常等
  • 首先,Spark UI上没有显示失败的Job。

转而查看Driver log:

可以从Driver日志中看到访问目录没有权限:

相关推荐
问君能有几多愁~21 小时前
Git 上库流程培训文档
大数据·git·elasticsearch
CCPC不拿奖不改名21 小时前
提示词工程(Prompt Engineering)全体系知识手册
大数据·人工智能·python·搜索引擎·prompt
ruxshui21 小时前
Inceptor/hive中整数类型分桶键数据倾斜问题及优化方案
大数据·数据库·sql
亚林瓜子21 小时前
AWS中国云中的ETL之从Amazon Glue Data Catalog搬数据到MySQL(Glue版)
python·mysql·spark·etl·aws·glue·py
【赫兹威客】浩哥21 小时前
【赫兹威客】伪分布式Spark测试教程
大数据·分布式·spark
CDA数据分析师干货分享21 小时前
【CDA干货】预测建模——CLV与营收趋势预测——电商用户数据分析全流程:从数据到增长决策
大数据·数据挖掘·数据分析·cda证书·cda数据分析师
what丶k1 天前
MySQL读写分离部署配置全解析(从原理到落地)
数据库·分布式·mysql
rustfs1 天前
RustFS 配置 Cloudflare Tunnel 实现安全访问的详细教程!
分布式·安全·docker·rust·开源
SJLoveIT1 天前
CAP理论,顺便讲下BASE
分布式
yumgpkpm1 天前
在AI语言大模型时代 Cloudera CDP(华为CMP 鲲鹏版)对自有知识的保护
人工智能·hadoop·华为·zookeeper·spark·kafka