前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >生产集群慢job造成节点负载过高影响其他job运行的排查记录

生产集群慢job造成节点负载过高影响其他job运行的排查记录

原创
作者头像
Bob hadoop
修改2021-01-14 10:33:33
5750
修改2021-01-14 10:33:33
举报
文章被收录于专栏:日常杂记日常杂记

排查流程:

收到业务反馈,在执行任务时很慢,提供了job的ID,经排查发现某些节点CPU负载很高,影响了他的job运行,而节点负载高的开始时间都是9:30左右。

经过我们排查找到9:37启动的一个任务大概执行7个小时。

找到耗时task执行的节点,确实发现负载很高,找到了任务的进程。

查看此进程的堆栈信息,发现很多full gc的次数,时间大概6个小时左右,频繁的full gc会使cpu使用过高。

查看job的进程的详细信息发现java heap内存只有820M,task处理的记录约为7400多万,造成堆内存不足频繁的发出full gc。

问题基本已经定论了,推荐执行job时加上如下参数设置。。。。

hive> set mapreduce.map.memory.mb=4096;

 hive> set mapreduce.map.java.opts=-Xmx3686m;

 hive> set mapreduce.reduce.memory.mb=4096;

 hive> set mapreduce.reduce.java.opts=-Xmx3686m;

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档