如何让Hadoop Pig Job更可靠?

时间:2013-11-06 08:24:45

标签: hadoop error-handling jobs

我有一份猪计划,计划每天通过Hadoop Job Scheduler运行。它有时可以很好地工作,但偶尔会出现错误,如下所示。它每天都会报告失败的原因。

第01天:

Error: java.io.IOException: No space left on device

第02天:

ENOENT: No such file or directory

第3天:

Lost task tracker: tracker_bos-hadoop14.co.com:localhost/127.0.0.1:48865

第04天:

Lost task tracker: tracker_bos-hadoop11.co.com:localhost/127.0.0.1:46408

请建议如何使我的工作更可靠,更能适应这些问题。

有没有最好的做法来处理这种hadoop失败?

1 个答案:

答案 0 :(得分:0)

前两个有点相关 - 如果磁盘空间不足,当无法在本地磁盘上chmod任务文件夹时,也可以从任务跟踪器获取第二条消息(由于缺少mkdir失败后空间)。

您需要检查后两个运行TaskTracker的节点中的任务跟踪器日志。

如果没有关于你的猪工作做什么,或者它处理多少数据(输入和输出)的进一步背景,我的猜测是你可能需要扩展你的集群(如果你正在运行psuedo-distributed),或者看看你在shuffle阶段的数据分布 - 你的Key,Value对中的大多数都是单一的reducer,你能修改reducers的数量还是你的算法来减少被洗牌的数据量?)

相关问题