写点什么

「架构师训练营」作业:第 12 周

用户头像
Amy
关注
发布于: 2020 年 08 月 31 日

分析如下 HiveQL,生成的 MapReduce 执行程序,map 函数输入是什么?输出是什么,reduce 函数输入是什么?输出是什么?

INSERT OVERWRITE TABLE pv_users
SELECT pv.pageid, u.age
FROM page_view pv
JOIN user u
ON (pv.userid = u.userid);

Page_view 表和 user 表结构与数据示例如下:

Map 的输入:

  • KeyValue在文件的偏移量

  • Value为表的每一行



Map 的输出:

page_view Map之后的输出:

  • Keyuserid

  • Value<表的编号,pageid>

user Map之后的输出:

  • Keyuserid

  • Value<表的编号,age>

Reduce的输入:

Map输出的结果进行 Shuffle Sort后,作为Reduce的输入

userId, <表的编号,pageid>

userId, <表的编号,age>

Reduce的输出:

pageid, age



用户头像

Amy

关注

还未添加个人签名 2018.06.10 加入

还未添加个人简介

评论

发布
暂无评论
「架构师训练营」作业:第 12 周