最近用hadoop streaming 写hadoop程序,由于调用了第三方库,在处理输入文件时有些情况会使得第三方库出现segment fault 而使得任务挂掉,这样整个hadoop job会一直尝试重启任务来处理这段bad records直到达到设置的attempt值,最后整个job失败 。害我预先处理了下输入文本把bad records找到并删掉,但是这样处理大规模数据每次都得先检查一遍输入数据太蛋疼了。
幸运的是,hadoop有个skip bad records 模式,通过此方法可以跳过bad records ,具体可见hadoop权威指南中文版P184页,6.5.3跳过坏记录。
这个博客讲的也不错 http://devblog.factual.com/practical-hadoop-streaming-dealing-with-brittle-code
本文介绍在使用Hadoop Streaming遇到第三方库导致的任务失败问题,并提供了解决方案——利用Hadoop的skipbadrecords模式来跳过处理这些坏记录,避免整个作业因个别错误而失败。
3214

被折叠的 条评论
为什么被折叠?



