我有两个映射器和两个 reducer (1 和 2)。我的驱动程序类运行两个作业,它们接受两个不同的输入文件并输出两个不同的输出文件(同样是 1 和 2)。所以job1与inputfile1、outputfile1、map1和reduce1相关联; job2 类似。
Reduce1 使用 context.write 输出 (id, number) 形式的数据。我的目标是访问Reduce2 中的这些键值对,但我不知道如何访问。我尝试在reduce1中执行conf.setInt,但是这些值没有被传递到reduce2中,因为当我执行conf.getInt时我没有得到它们。
最佳答案
回到这一点,根据我的经验,您将输出写入一个路径,然后使用该路径作为输入运行另一项作业...
理论上,如果您在第一个作业的 waitForCompletion
方法之后添加更多代码,则可以在一个程序中创建两个作业
关于java - 如何在 MapReduce 中将信息从一个 reducer 传递到另一个 reducer ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59846734/