大家在平时开发过程中经常遇到作业(SQL、MR等)执行慢的原因,今天带大家一起学习自排查方法。
1、waiting ,waiting,Job Queueing... Job Queueing...
遇到这个提示,就是资源出现了排队。
排查分析:如果你是后付费用户,那就是整个后付费的共享池已经没有富余的资源了。
解决方案:要等共享池中的前一个作业处理完或者根据作业使用的CU情况,购买预付费CU。
排查分析:如果你是预付费用户,很有可能是其他人的作业占用了过多资源,导致了排队。
解决方案:同一账户多人使用,存在并行多个JOB作业,部门之前可以合理设计JOB作业运行计划,错峰跑JOB作业。
2、作业超时严重,超出了作业平均时间
遇到这种现象,先别着急,打开logview看一下,是不是大部分小作业已经跑完,剩下部分作业没有跑完。
排查分析:这种就是典型的数据长尾问题了,因为数据分布不均,导致各个节点的工作量不同,整个任务就需要等最慢的节点完成才能完成,可以通过优化来自行解决。
解决方案:大家可以参考这两篇文档。
推荐大家学会用Logview去解决问题,官方文档参考:https://help.aliyun.com/document_detail/27987.html
阿里巴巴大数据-玩家社区 https://yq.aliyun.com/teams/6/
---阿里大数据博文,问答,社群,实践,有朋自远方来,不亦说乎……