我在 csv
文件中有 6 个字段:
- 首先是学生姓名(
String
) - 其他是学生的成绩,如科目一、科目二等
我正在用 java 编写 mapreduce
,用逗号分隔所有字段,并在 map 的键中发送学生姓名,在值中发送标记。
在 reduce
中,我正在处理它们,在键中输出学生姓名,在 reduce
的值中输出他们的分数加上总分、平均值等。
我认为可能有另一种更有效的方法来做到这一点。
有没有人想到更好的方法来执行这些操作?
hadoop
是否有任何内置函数可以按学生姓名分组并计算与该学生相关的总分和平均分?
最佳答案
您可能想看看 Pig http://pig.apache.org/它在 Hadoop 之上提供了一种简单的语言,让您可以使用很多更短的代码执行许多标准任务。
关于java - Hadoop 中的 CSV 处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8630837/