写点什么

架構師訓練營 week12 作業

用户头像
ilake
关注
发布于: 2020 年 12 月 13 日

在你所在的公司(行业、领域),正在用大数据处理哪些业务?可以用大数据实现哪些价值?

所在行業是在旅館餐廳聊天機器人,

大數據處理哪些業務:

  1. 訂房日期預測

  2. 推薦餐廳

  3. 推薦旅館

  4. 最常用 FAQ

  5. 價格建議

  6. 空房建議



可以用大數據實現哪些價值:

  1. 找出使用者的喜好



分析如下 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);



  1. map 函數的輸入是 page_view 和 user 的資料

  2. map 函數的輸出

  • page_view

Key value

-------------

111 <1,1>

111 <1,2>

222 <1,1>

  • user

Key value

-------------

111 <2,25>

222 <232>

  1. reduce 函數的輸入是 map 函數的輸出,以 userid 為 key 的數據

  • 對 map 的輸出進行 shuffle

Key value

-------------

111 <1,1>

111 <1,2>

111 <2,25>



Key value

-------------

222 <1,1>

222 <2,32>

  1. reduce 函數的輸出是相同用戶 pageid 和 age 的集合

Pageid age

-------------

1 25

2 25

1 32



map函数的输入分别是page_view和user表的数据。

map函数的输出是分别以userid为key,pageid为数组。userid为key,age为数组。

reduce函数的输入是map函数的输出,以userid为key的数据。

reduce函数的输出是相同用户pageid和age的数据集合。



用户头像

ilake

关注

还未添加个人签名 2019.04.15 加入

还未添加个人简介

评论

发布
暂无评论
架構師訓練營 week12 作業