gzip输入文件的问题,大小> 64 MB

时间:2012-02-06 11:07:56

标签: hadoop mapreduce

我正在运行Hadoop流媒体作业,它只有映射器,没有减速器。我给这个作业4个输入文件,这些文件都被gzip压缩,以确保每个输入文件都转到一个mapper。两个gzip压缩输入文件的大小小于64 MB,而另外两个gzip压缩输入文件的大小大于64 MB。作业运行了将近40分钟,然后失败说“错误:失败的地图任务超过了允许的限制。”通常情况下,工作时间不应超过1分钟,不确定为什么会持续40分钟

当我检查输出目录时,我看到输出是为两个gzip压缩的输入文件生成的,大小为<对于尺寸为>的gzip压缩输入文件,不会生成64 MB和输出。 64 MB。

有人见过这样的行为吗?

我在工作启动时看到以下消息(如果我将较小尺寸的文件(<64 MB)作为输入传递给作业,我就不会看到这个消息)

12/02/06 10:39:10 INFO mapred.FileInputFormat:要处理的总输入路径:2 12/02/06 10:39:10 INFO net.NetworkTopology:添加新节点:/10.209.191.0/10.209.191.57:1004 12/02/06 10:39:10 INFO net.NetworkTopology:添加新节点:/10.209.191.0/10.209.191.50:1004 12/02/06 10:39:10 INFO net.NetworkTopology:添加新节点:/10.209.186.0/10.209.186.28:1004 12/02/06 10:39:10 INFO net.NetworkTopology:添加新节点:/10.209.188.0/10.209.188.48:1004 12/02/06 10:39:10 INFO net.NetworkTopology:添加新节点:/10.209.185.0/10.209.185.50:1004 12/02/06 10:39:10 INFO net.NetworkTopology:添加新节点:/10.209.188.0/10.209.188.35:1004

1 个答案:

答案 0 :(得分:0)

如果你已经定义了自己的FileInputFormat派生物,那么我怀疑你遇到了这个bug: https://issues.apache.org/jira/browse/MAPREDUCE-2094

如果您有,那么我建议将TextInputFormat中isSplitable方法的实现复制到您自己的类中。