Azure Databricks Job/notebook运行卡住三板斧 之二 查看ThreadDump
分类: Azure Databricks ◆ 标签: #Azure #Databricks #Spark ◆ 发布于: 2023-06-15 21:29:22
我们之前已经分享了如何快速的缓解Databricks job/notebook卡住的办法,如果要详细的分析job/notebook卡住的原因,那么还是得再来一板斧:查看long-running或者是stuck task的Threaddump, 如何缓解可以参考之前的文章:
如何通过Spark UI查看long-running task/stuck job的ThreadDump
要查看ThreadDump的步骤如下:
- 登录到
Workspace, 左侧菜单选择Compute, 然后在cluster list里选择运行的cluster:

- 点击
cluster, 进入界面,选择Spark UI:

- 选择长时间运行的job或者卡住的job:

注意
图片只是作为演示,图片里显示的是已经运行完成的Job, 实际应用中要选择还在跑的Job。这里只是为了在文章里说明。 检查目前卡在哪个Stage, 点击Stage看详细,同样图片的Stage只是作为演示,实际应用中要在列表里找到还在运行或者卡住的
Stage

检查目前卡在哪个Task上,同样图片的Task只是为了演示:

注意要记下Task ID和Host的值。选择主菜单上的
Spark UI->Executor:

检查
ThreadDump: 在出现的界面里搜索线程名包含在第5步收集到的task id, 展开就是这个线程的dump了,对这个dump进行分析就可以找到长时间运行或者卡住的原因了。

以上是从页面查看Thread Dump的步骤,至于如何分析dump那是另外的事情了,如果搞不定dump分析可以将dump提交给技术支持部门。