没有地图制作者或减少者的工作

时间:2014-04-27 16:25:53

标签: java hadoop cascading scalding

我使用在本地模式下运行良好的烫伤编写了一份工作。但是当我尝试在hdfs模式下执行它(在同一个文件上)时,它没有做任何事情。更确切地说,第一步没有任务(映射器或减速器),之后的步骤显然什么都不做。

我尝试使用日志来查看异常,并将我的代码包装在try-catch中(在scalding中,作业定义在构造函数中,我也包装了run方法)。

也许由于某种原因,级联决定忽略输入文件?这是一个Avro deflate文件。

更新: 挖掘更多,我可以看到这一行:

2014-04-28 04:49:23,954 INFO org.apache.hadoop.mapred.JobInProgress: Input size for job job_201404280448_0001 = 0. Number of splits = 0

在作业xml中,mapred.input.dir属性设置为我文件的路径。

看起来JobInProgress从mapred.job.split.file获取其在作业xml文件中不存在的信息

1 个答案:

答案 0 :(得分:2)

事实证明我的avro文件名为sample.avro.deflate。 Avro,1.7.4,默默地忽略任何不以#。; .avro'结尾的输入文件。在1.7.6中,他们添加了属性avro.mapred.ignore.inputs.without.extension