假设我有三个数据集,我想通过加入所有这三个数据集/文件来回答多个问题。例如,如果第一个数据集有( id ,名称),第二个数据集有( id ,sum, key ),第三个数据集有(密钥,价格)。
如何使用 id 加入第一个和第二个文件,并在同一个程序中如何使用键加入第二个和第三个?
答案 0 :(得分:1)
在同一程序中无法执行此操作。要完成您想要做的事情,您必须运行两个map-reduce作业。
第一个map-reduce作业会占用第一个文件,第二个文件会生成一个格式如下的输出文件 -
id name,sum,key
在上面,reducer键是“id”,reducer值是“name,sum,key”
第二个map-reduce作业处理第一个map-reduce作业的输出,第三个文件生成一个格式如下的输出文件 -
id,key name,sum,price
在上面,reducer键是“id,key”,reducer值是“name,sum,price”