2010-02-01 64 views
4

我试图将我的reducer的结果输出到多个文件。数据结果全部包含在一个文件中,其余结果根据其尊重文件中的类别进行分割。我知道0.18,你可以用MultipleOutputs做到这一点,它并没有被删除。但是,我试图使我的应用程序0.20+兼容。现有的多输出功能仍然需要JobConf(我的应用程序使用Job和Configuration)。如何根据密钥生成多个输出?使用Hadoop生成多个输出文件0.20+

回答

9

对MultipleOutputs的支持不在0.20中。您将需要使用旧的API。

它已被添加到0.21当前未发布为org.apache.hadoop.mapreduce.lib.output.MultipleOutputs。

This thread在邮件列表中讨论了这个问题。

+2

这令人难以置信的令人沮丧和愚蠢。这似乎是该计划中需要的基本功能。 – monksy 2010-02-02 04:37:08

+0

是的。很多工作正在朝向具有1.0的正确API接口发展。 – 2010-02-02 16:45:07

+1

如果使用cdh distrubution,则不行。 cdh3是0.20.1加上一些修补与MultipleOutputs类。我最初不愿意使用cdh并使用apache distro。但是,在几个问题之后,对cdh更加满意。 – smartnut007 2011-05-27 23:22:22

相关问题