gpt4 book ai didi

hadoop - 是否可以在 Hadoop MapReduce 中使用多个不同的映射器进行多个输入?

转载 作者:可可西里 更新时间:2023-11-01 14:11:04 25 4
gpt4 key购买 nike

是否可以在 Hadoop MapReduce 中使用多个不同的映射器进行多个输入?每个映射器类都处理一组不同的输入,但它们都会发出由同一个 reducer 使用的键值对。请注意,我在这里不是在谈论链接映射器,而是在谈论并行运行不同的映射器,而不是顺序运行。

最佳答案

这称为连接。

您想使用 mapred.* 包中的映射器和缩减器(较旧,但仍受支持)。较新的包 (mapreduce.*) 只允许一个映射器输入。使用 mapred 包,您可以使用 MultipleInputs 类来定义连接:

MultipleInputs.addInputPath(jobConf, 
new Path(countsSource),
SequenceFileInputFormat.class,
CountMapper.class);
MultipleInputs.addInputPath(jobConf,
new Path(dictionarySource),
SomeOtherInputFormat.class,
TranslateMapper.class);

jobConf.setJarByClass(ReportJob.class);
jobConf.setReducerClass(WriteTextReducer.class);

jobConf.setMapOutputKeyClass(Text.class);
jobConf.setMapOutputValueClass(WordInfo.class);

jobConf.setOutputKeyClass(Text.class);
jobConf.setOutputValueClass(Text.class);

关于hadoop - 是否可以在 Hadoop MapReduce 中使用多个不同的映射器进行多个输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11059725/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com