其实很简单,输入两个文件,一个作为基础数据(学生信息文件),一个是分数信息文件。
学生信息文件:存放学生数据:包括学号,学生名称
分数信息数据:存放学生的分数信息:包括学号,学科,分数。
我们将通过M/R实现根据学号,进行数据关联,最终结果为:学生名称,学科,分数。
模拟数据
学生数据
[hadoop@hadoop11 student_data]$ cat students.txt
1 Randy
2 Tom
3 kitty
4 Lucy
5 Lily
6 Bruce
7 King
8 Jay
9 Melody
10 Kimy
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
分数数据
[hadoop@hadoop11 student_data]$ cat scores.txt
1 English 89
2 English 77
3 English 54
4 English 98
5 English 83
6 English 99
7 English 30
8 English 76
9 English 56
10 English 88
1 Math 79
2 Math 37
3 Math 65
4 Math 88
5 Math 89
6 Math 59
7 Math 60
8 Math 86
9 Math 56
10 Math 68
1 China 89
2 China 67
3 China 84
4 China 68
5 China 43
6 China 89
7 China 70
8 China 96
9 China 56
10 China 78
///////////////////////////////////////////////////////////////////////////////////////////////////////
实现
1)两个文本解析器,分别解析两个文本文件。
本文转自 randy_shandong 51CTO博客,原文链接:http://blog.51cto.com/dba10g/1565697,如需转载请自行联系原作者