1. 异常说明

spark提交任务后,前N个Stage运行顺利,到达某一个Stage后,卡住,通过spark界面可以看到,executor运行正常,卡住的Stage的task已经分配至executor,但duration time一直增加,task却不结束,同时log中也无异常报出。

  1. 解决方案

1,分析没有异常说明程序本身没有问题,框架运行也运行正常,很有可能是因为该stage操作较为复杂,将CPU打满。

2,通过spark监控界面找到task被分配到的机器,并登陆,通过jps -ml 打印出具体的java进程和main class信息(具体java命令行工具见java下文档)

3,得到pid之后,使用top -p 观察该process,发现确实CPU占用非常高,说明某项操作将CPU占满,此时task并未失败,而是一直在进行

4,通过top -Hp {pid}将该进程内部线程信息打印,获得哪条线程占用CPU高

5,通过jstack {pid} 将进程堆栈打印,并将上一轮操作中获取的线程号在jstack文件中查询,定位线程(获取的线程号为十进制,需将获取的线程id转换为十六进制,再进行对照)

上步完成之后,对照代码,即可

  1. 具体问题具体分析

上述只是问题可能解决方案的一种,也有可能是其他原因造成task等待,task执行卡住,暂时能想到的可能的原因就是操作过于复杂将CPU打满,或者等某种IO资源(网络或者磁盘都有可能)

转:https://wx.zsxq.com/dweb/#/index/142881841542

spark运行正常,某一个Stage卡住,停止不前异常分析相关推荐

  1. spark启动的worker节点是localhost_Spark大数据在线培训:Spark运行原理解析

    在大数据技术框架当中,Spark是继Hadoop之后的又一代表性框架,也是学习大数据当中必学的重点技术框架.在这些年的发展当中,Spark所占据的市场地位,也在不断拓展.今天的Spark大数据在线培训 ...

  2. Spark 的核心 RDD 以及 Stage 划分细节,运行模式总结

    精选30+云产品,助力企业轻松上云!>>> 阅读文本大概需要 5 分钟. 以下内容,部分参考网络资料,也有自己的理解, 图片 99% 为自己制作.如有错误,欢迎留言指出,一起交流. ...

  3. Spark任务的某个Stage卡住不动问题

    有时候Spark任务莫名会在某个Stage卡住,然后一直停在那里,如果任务重新跑的话又是没有问题的,在实际项目中如果这样的任务出现了,需要仔细分析Spark的log,这样的情况一般是数据不均衡导致的某 ...

  4. 理解spark中的job、stage、task

    什么是Spark? Spark是处理大数据常用的计算引擎.Spark是一个用来实现快速而通用的集群计算的平台.扩展了广泛使用的MapReduce计算模型,而且高效地支持更多的计算模式,包括交互式查询和 ...

  5. Spark的stage划分算法源码分析

    Spark Application中可以有不同的Action触发多个Job,也就是说一个Application中可以有很多的Job,每个Job是由一个或者多个Stage构成的,后面的Stage依赖于前 ...

  6. Spark 运行机制

    1. Spark运行基本流程 构建Spark Application的运行环境(启动SparkContext),SparkContext向资源管理器(可以是Standalone.Mesos或YARN) ...

  7. spark-submit提交参数说明以及与yarn-site.xml中参数的相互约束关系+spark运行架构图解(持续更新中)

    因为大型公司都有使用spark/hadoop的官方配置,不太需要个人工程师关心, 这个博客用来给予自己搭建或者小公司使用集群时使用 先复习下yarn-site.xml中几个参数的含义[3]: 配置文件 ...

  8. Spark运行原理剖析

    http://ihoge.cn/2018/Spark%20Scheduler.html Apache Spark是一个开源的,强大的分布式查询和处理引擎.它提供MapReduce的灵活性和可扩展性,但 ...

  9. Spark入门实战系列--4.Spark运行架构

    注]该系列文章以及使用到安装包/测试数据 可以在<倾情大奉送--Spark入门实战系列>获取 1. Spark运行架构 1.1 术语定义 lApplication:Spark Applic ...

最新文章

  1. 有效地使用计算机操作系统的教学设计与反思,《操作系统的基础知识(1)》教学设计及反思...
  2. 【工具】云文档办公利器!腾讯文档好评!
  3. 【GAN模型结构】从最简单的全卷积GAN一起开始玩转GAN
  4. ABAP动态取得数据的方法
  5. 静态配置_Linux网络配置之NAT静态ip配置
  6. PyTorch 加载超大 Libsvm 格式数据
  7. linux系统oracle启动过程,Linux主机下配置Oracle 10G自动启动过程记
  8. Bailian2693 最远距离【序列处理】
  9. Ice_cream’s world III(prime)
  10. Nginx中安装免费SSL证书开启Https请求
  11. HiveQL整理总结
  12. Python的面向对象、模块和包
  13. php身份证识别ORC
  14. Keil 5(MDK 5)中的 Pack Installer下载不了库文件包的解决替代方法(在Keil官网下载Packs库文件)
  15. CSS 选择器(超级详细,欢迎补充)
  16. 拍摄UFP 单一职责原则
  17. 蚂蚁金服开源-SofaRpc源码学习篇
  18. UE5 官方案例Lyra 全特性详解 14.背包系统Inventory System3
  19. 【分享】QT读取EXCEL文件(附代码)
  20. Android中 自定义logo二维码绘制(仿微信QQ二维码)

热门文章

  1. 注册消防工程师3D交互学习系统
  2. 站长号词库:今日热门长尾关键词挖掘 20221127
  3. 解决pyinstaller打包涉及uiautomation截图时出现的dll找不到的错误
  4. 沁园春.雪输出诗句代码
  5. 图书馆借阅管理系统 springboot开发的java项目源码
  6. SteamVR在HDRP或URP中手柄控制器材质如何显示正常?
  7. 在线考试模拟系统都有哪些功能,和优点呢?
  8. 防止被反编译获取源码,PB加密,PBD加密,杜绝PB程序反编译 下载
  9. KubeSphere 开源社区 2022 年度回顾与致谢
  10. QT从零开始作单片机上位机-串口调试助手+波形显示-实现串口模块的配置(2)