You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure Synapse Notebook执行成功但Spark视图显示失败问题排查

问题原因分析
  1. Spark作业清理阶段异常:Notebook与流水线实际执行成功,但Spark应用视图显示失败,核心原因是作业完成后,Synapse通过Livy API终止对应作业的清理流程出现异常。可能是Livy与Spark集群通信延迟、Livy资源不足,或是作业相关进程/资源已被提前释放,导致清理指令无法正常执行。
  2. Livy依赖缺失:Livy日志中netty-all-4.1.17.Final.jar不存在的警告,说明Livy启动时找不到指定版本的Netty依赖包,这会导致清理阶段依赖加载失败,进而无法正常终止Livy作业,是触发EXCEPTION_DURING_SPARK_JOB_CLEANUP的直接诱因之一。
  3. Hadoop本地库警告(次要):NativeCodeLoader的警告是Hadoop本地库与当前平台不兼容,系统自动使用Java替代类,该警告不影响作业核心功能和清理流程,无需重点关注。
解决方法
  • 修复Livy依赖缺失问题

    • 若使用Synapse托管Spark池,直接重启Spark池,让系统重新加载默认依赖资源,大概率能修复缺失的jar包问题;
    • 若配置了自定义Livy参数,检查livy.rsc.jars配置项,确保路径指向存在的netty-all jar包,且版本与Livy、Spark兼容;
    • 必要时手动上传对应版本的netty-all jar包到Synapse的依赖库,在Notebook中指定加载该依赖。
  • 优化作业清理流程

    • 在Notebook的Spark配置中添加spark.livy.cleanup.timeout=30s(可根据实际情况调整时长),延长清理阶段的超时时间,避免因通信延迟导致清理失败;
    • 调整Livy服务的JVM内存参数,在Spark池的高级配置中修改livy.server.jvmopts,例如设置为-Xmx4g,提升Livy的资源承载能力;
    • 在Notebook代码末尾添加短暂延迟,比如Python中执行time.sleep(5),确保作业资源完全稳定后再进入清理阶段。
  • 忽略Hadoop本地库警告
    该警告不影响作业执行和流水线运行,Synapse托管池由微软维护,无需手动干预;若使用自托管集群,可确保Hadoop本地库与操作系统平台匹配,但非必要操作。

内容的提问来源于stack exchange,提问作者JTD2021

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 22:01:38