第十二周作业
1. 在你所在的公司(行业,领域),正在用大数据处理哪些业务?可以用大数据实现哪些价值?
业务:在金融投资领域,可以利用大数据分析历年来,不同行业,不同时期的买卖数据。通过对投资方向,投资规模,投资时长,投资回报收益这些维度,分析出历年在经济大环境下,投资回报周期,以及投资方向。
同时,也可以追踪市场中资金的流向,在往哪个方向聚集。
价值:在多个场景,多个维度的分析之后,可以给出一套策略 ,供投资者参考,收取费用。
也可以分析市场资金的活跃度,预测经济的走势,供政府财务部分参考,进行提前的应对。
最后,也可以制作出 一些报表,让人民群众看到真实的社会资金数据,避免被一些不良经济学家误导。
2. 分析如下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输入函数是:(key,value)
key为此条数据的偏移量。
value值为当前数据page=1,userid=111(来源表1page_view)或者userid=111,age=25(来源表2user)。
Map输出是:(word,one)
word为键值对,键值对的key是userid,键值对的value是一个子对象<v1,v2>,v1代表表1 page_view或者表2 user,v2代表表1的字段pageid或者表2的age字段。
举例:(111,<1,1>)或者(222,<2,25>)
one值为1,代表1条数据。
Reduce函数的输入是:(key,values)
key是键值对例如(111,<1,1>)或者(222,<2,25>)
values当前数据的总条数int数组,数组里面的值可能是1或者更大的整数数字
Reduce函数的输出是:(key,result)
key代表键值对(pageid,age)
result代表此类数据的总个数
评论