架构师培训 -12 hadoop
1.写出下题的map,reduce函数输入和输出分别是什么?
分析如下 HiveQL,生成的 MapReduce 执行程序,map 函数输入是什么?输出是什么,reduce 函数输入是什么?输出是什么?
复制代码
Page_view 表和 user 表结构与数据示例如下:

答:
在map的输出value为不同表的数据打上不同的tag标记,在reduce阶段根据tag判断数据来自哪张表。具体流程如下:

从上图中可以看出
map 输入是两张表的记录,输出 key是userid,value是表的标记tag和pageid。
reduce输入map的输出(shuffle sort后的),输出是根据userid关联后从两个表中分别取出的pageid和age值。
评论