java - 如何在 MapReduce 中将信息从一个 reducer 传递到另一个 reducer
问题描述
我有两个映射器和两个减速器(1 和 2)。我的驱动程序类运行两个作业,它们接受两个不同的输入文件并输出两个不同的输出文件(同样,1 和 2)。所以job1关联了inputfile1、outputfile1、map1和reduce1;对于job2也是如此。
Reduce1 使用 context.write 输出形式为 (id, number) 的数据。我的目标是在 Reduce2 中访问这些键值对,但我不知道如何。我尝试在 reduce1 中执行 conf.setInt,但这些值没有传递到 reduce2,因为我在执行 conf.getInt 时没有得到它们。
解决方案
回到这一点,根据我的经验,您将输出写入一个路径,然后以该路径作为输入运行另一个作业......
waitForCompletion
理论上,如果在第一个 Job 的方法之后添加更多代码,则可以在一个程序中创建两个Job
推荐阅读
- javascript - 不计算字段是否为空(Js 计算器)
- javascript - 如何使用nodejs在javascript中将一个文件中的函数调用到另一个文件中?
- php - 如何根据PHP中数组内的数组进行排序?
- python - 使用 Flask 更新已更新的 html dom 的问题
- excel - 如何总结一行?
- flutter - Flutter:在 Map() 中使用字符串和布尔值
- firemonkey - 如何防止 ComboEdit 自动选择值?
- monaco-editor - Monaco Editor - 自定义样式以突出显示错误
- sql - 在 BigQuery 中将字符串拆分为三列
- c++ - 为什么 lld-link 在从 Linux 交叉编译到 Windows 时说符号“__memset_nt_iters”未定义?