设为首页 收藏本站
查看: 916|回复: 0

[经验分享] MapReduce错误任务失败处理

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-6-6 12:09:59 | 显示全部楼层 |阅读模式
MapReduce的作业失败主要分三个层次,即jobtracker失败,tasktracker,子任务实例
1,jobtracker失败
jobtracker失败应该说是最严重的一种失败方式了,而且在hadoop中存在单点故障的情况下是相当严重的,因为在这种情况下作业最终失败,尽管这种故障的概率极小但是还是应该避免,可以通过启动多个jobtracker,在这种情况只运行一个主的jobtracker.通过一种机制来确定那个是主的jobtracker.

2,tasktacker失败
作业运行期间,tasktracker会通过心跳机制不断与系统jobtracker通信,如果某个tasktracker运行缓慢或者失败,出现故障。tasktracker就会停止或者很少想jobtracker发送心跳,jobtracker会注意到此tasktracker发送心跳的情况,从而将此tasktracker从等待任务调度的tasktracker池中移除,jobtracker会安排此tasktracker上一成功运行的map任务返回,
①,如果他们属于为完成的作业的化,reduce阶段无法获取改tasktracker上的本地map输出文件,任何任务都需要重新调度---即只要是mapping阶段必然是重新执行
②,如果是reduce阶段呢,如果是reduce阶段自然就是执行为完成的reduce任务了,因为reduce只要执行完了的就会把输出写到Hdfs上

3,子任务失败,这个是不是可以理解为JVM级别的
①,当map或者reduce子任务中的代码抛出异常,JVM进程会在退出之前向服进程tasktracker进程发送错误报告,,tasktracker会将此(任务尝试)task attempt标记为failed状态,释放一个槽以便运行另外一个任务
②,对于流任务,如果流进程以非零退出代码退出运行则会标记为failed。
③,子JVM突然退出,即JVM错误,这时tasktracker会注意到进程已经退出,标记为failed
tasktracker将子任务标记为失败后会将自身计数器减一,以便想jobtracker申请新的任务,也是通过心跳告知jobtracker本地的一个任务尝试失败。jobtracker接到任务失败的通知后,会将其重新加入到调度队列重新分配给其他的tasktracker执行(避免将失败的任务分配给执行失败的tasktracker),但是这个尝试也是有次数限制的,默认情况下任务尝试4次后仍然没有完成,就不会再重试(jobtracker会将其标记为killed),此时整个作业就执行失败了。
4,jobcleanup,recoverymanager,taskcleanup,expiretrackers,expirelaunchingtasks,监测失效,清除恢复,还有好多后台线程。。。。




运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-20288-1-1.html 上篇帖子: Hadoop源码分析之一(RPC机制之Server) 下篇帖子: hadoop源码TaskAttemptID TaskTrackerAction JobTracker,FileOutputCommitter...
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表