主页 > 游戏开发  > 

Hadoop之02:MR-图解

Hadoop之02:MR-图解
1、不是所有的MR都适合combine 1.1、map端统计出了不同班级的每个学生的年龄

如:(class1, 14)表示class1班的一个学生的年龄是14岁。

第一个map任务:

class1 14 class1 15 class1 16 class2 10

第二个map任务:

class1 16 class2 10 class2 11

平均年龄:

class1: ((14+15+16)+16)/4 = 61/4 = 15.25 class2: (10+10+11)/3 = 10.333 1.2、若强制使用combine的话。

第一个map任务:

class1 14 class1 15 class1 16 class2 10 ==>平均值: class1: (14+15+16)/3 = 15 class2: 10/1 = 10

第二个map任务:

class1 16 class2 10 class2 11 ==>平均值: class1: 16/1 = 16 class2: (10+11)/2 =10.5

平均年龄:

==>汇总求平均值: class1: (15+16)/2 =15.5 class2: (10+10.5) = 10.25

比对结果:

class1: 15.25不等于15.5 class2: 10.333不等于10.25 1.3、结论:并非所有MR都适合combine操作 2、reduce端merge 排序 分组

第一个map输出

(hadoop,1) (hadoop,1) (hive,1)

第二个map输出

(hadoop,1) (hive,1)

第三个map输出

(hadoop,1) (hive,1) (hive,1) –>merge (hadoop,1) (hadoop,1) (hive,1) (hadoop,1) (hive,1) (hadoop,1) (hive,1) (hive,1) –>排序 (hadoop,1) (hadoop,1) (hadoop,1) (hadoop,1) (hive,1) (hive,1) (hive,1) (hive,1) –>分组 一组 (hadoop,1) (hadoop,1) (hadoop,1) (hadoop,1) 二组 (hive,1) (hive,1) (hive,1) (hive,1) –>每组调用一次reduce方法 (hadoop,1) (hadoop,1) -> hadoop, Iterable(1,1,1,1) -> reduce(hadoop, Iterable(1,1,1,1), context){...} (hadoop,1) (hadoop,1) ⭐️3、wordcount+combine过程

⭐️4、wordcount shuffle

5、grouping

6、自定义OutputFormat

标签:

Hadoop之02:MR-图解由讯客互联游戏开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“Hadoop之02:MR-图解

上一篇
智能成绩表

下一篇
训练营总结篇