我对 Hadoop 和 MapReduce 编程相当陌生。我想知道在加入两个文件后是否可以按另一个值(不是键)分组。
我有两个包含以下数据的文件
文件 1
name marks
A Male
B Male
C Female
文件2
name marks
A 25
B 28
A 30
C 22
现在有什么方法可以找到每种性别的分数百分比。我正在尝试将以下内容作为输出
Male percentage_of_marks_of_male_students
Female percentage_of_marks_of_female_students
有没有办法在一项工作中做到这一点。我已经尝试为此使用两个工作,但找不到任何进展。
任何提示将不胜感激。
编辑:
加入文件后,我得到这样的东西
{name1 - ["gender","marks1","marks2",...]}
{name2 - ["gender","marks1","marks2",...]}
{name3 - ["gender","marks1","marks2",...]}
...
我目前正坚持在减速器阶段分别找到男性和女性的标记总和
编辑:
我已经解决了这个问题。我用了两份工作。第一个作业连接两个文件,输出为
[gender, the sum of marks of each student]
我将输出文件作为输入发送到第二个工作,它按性别给出分数百分比。