Hadoop新API - 设置OutputFormat

时间:2012-07-24 07:45:16

标签: hadoop

我正在尝试使用以下方法将我的作业的OutputFormat设置为MapFileOutputFormat:

jobConf.setOutputFormat(MapFileOutputFormat.class);

我收到此错误:mapred.output.format.class与新的reduce API模式不兼容

我想我应该使用新Job类的setOutputFormatClass()集,但问题是当我尝试这样做时:

job.setOutputFormatClass(MapFileOutputFormat.class);

它希望我使用这个类:org.apache.hadoop.mapreduce.lib.output.MapFileOutputFormat。 在hadoop 1.0.X中没有这样的类。它仅存在于早期版本(例如0.x)

我该如何解决这个问题?

谢谢!

2 个答案:

答案 0 :(得分:1)

这个问题没有一个容易实现的解决方案。

我放弃并使用了符合我要求的序列文件。

答案 1 :(得分:0)

您是否尝试过以下操作?

import org.apache.hadoop.mapreduce.lib.output;
...
LazyOutputFormat.setOutputFormatClass(job, MapFileOutputFormat.class);