最近在新的统计脚本中发现了,同一个脚本运行多次而每次结果都不相同的场景。
今天好像找到了原因,为了保险起见,先测试运行几天后再做决定。
2012-10-18号
通过昨晚的运行,结果正常了。
导致此原因的情况如下:
首先该脚本执行的时候涉及到的记录有8千多万,在执行的过程当中,map=100%的时候,过一会又降下来了,变成map=97%这样,然后再升到map=100%,反复有两三次。
但最终job还是正常执行完成。
通过hadoop的MR管理界面看到的情况是:有几个子map运行失败,报错信息是Too many fetch failure
根据这个错误信息,我查看了下所有的slave机器上的/etc/hosts文件里,前面的两行记录没注释掉,内容如下:
127.0.0.1 localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6
当我注释掉后,多次执行该脚本,再也没出现了之前描述的情况了。