某大型互联网公司 DW 数据仓库 试题解决方法
发布时间:2010-05-24 21:17:09 文章来源:www.iduyao.cn 采编人员:星星草
某大型互联网公司 DW 数据仓库 试题
题目开始:
下表是用户访问网站的日志表TRLOG,每一条记录,代表者一个平台(PLATFORM)上的一个用户(USER_ID)在某一时间(CLICK_TIME)的一次页面访问(CLICK_URL):
PLATFORM USER_ID CLICK_TIME CLICK_URL
WEB 12332321 2013-03-21 13:48:31.324 /home/
WEB 12332321 2013-03-21 13:48:32.954 /selectcat/er/
WEB 12332321 2013-03-21 13:48:46.365 /er/viewad/12.html
WEB 12332321 2013-03-21 13:48:53.651 /er/viewad/13.html
WEB 12332321 2013-03-21 13:49:13.435 /er/viewad/24.html
WEB 12332321 2013-03-21 13:49:35.876 /selectcat/che/
WEB 12332321 2013-03-21 13:49:56.398 /che/viewad/93.html
WEB 12332321 2013-03-21 13:50:03.143 /che/viewad/10.html
WEB 12332321 2013-03-21 13:50:34.265 /home/
WAP 32483923 2013-03-21 23:58:41.123 /m/home/
WAP 32483923 2013-03-21 23:59:16.123 /m/selectcat/fang/
WAP 32483923 2013-03-21 23:59:45.123 /m/fang/33.html
WAP 32483923 2013-03-22 00:00:23.984 /m/fang/54.html
WAP 32483923 2013-03-22 00:00:54.043 /m/selectcat/er/
WAP 32483923 2013-03-22 00:01:16.576 /m/er/49.html
…… …… …… ……
为了使题目叙述清晰,我们在上表中以用户12332321和32483923举例,将他们的访问按时间排了序,但实际的访问日志不是这样有序的,而是来一次访问就增加一条,平台、用户等等都是交错的,你懂的。
这个访问日志表积攒了若干天的用户访问记录,目前大约有20亿条数据,占用存储空间1TB。为了某些分析需求,我们需要把上述数据处理为如下结构的表ALLOG:
PLATFORM USER_ID SEQ FROM_URL TO_URL
WEB 12332321 1 NULL /home/
WEB 12332321 2 /home/ /selectcat/er/
WEB 12332321 3 /selectcat/er/ /er/viewad/12.html
WEB 12332321 4 /er/viewad/12.html /er/viewad/13.html
WEB 12332321 5 /er/viewad/13.html /er/viewad/24.html
WEB 12332321 6 /er/viewad/24.html /selectcat/che/
WEB 12332321 7 /selectcat/che/ /che/viewad/93.html
WEB 12332321 8 /che/viewad/93.html /che/viewad/10.html
WEB 12332321 9 /che/viewad/10.html /home/
WAP 32483923 1 NULL /m/home/
WAP 32483923 2 /m/home/ /m/selectcat/fang/
WAP 32483923 3 /m/selectcat/fang/ /m/fang/33.html
WAP 32483923 4 /m/fang/33.html /m/fang/54.html
WAP 32483923 5 /m/fang/54.html /m/selectcat/er/
WAP 32483923 6 /m/selectcat/er/ /m/er/49.html
…… …… …… ……
PLATFORM和USER_ID还是代表平台和用户ID;SEQ字段代表用户按时间排序后的访问顺序,FROM_URL和TO_URL分别代表用户从哪一页跳转到哪一页。对于某个平台上某个用户的第一条访问记录,其FROM_URL是NULL(空值)。
假设软硬件环境是:2个DataNode节点的实验用Hadoop 1.0.x集群,存储空间 6TB,Replication Factor为2;安装有Hive 0.90版本,数据表以逗号分隔的Delimited Text格式存储于HDFS。
为了实现上述需求,请你:
(1) 实现基于纯Hive SQL的ETL过程,从TRLOG表生成ALLOG表;(结果是一套SQL)
(2) 实现一个能加速上述处理过程的Hive Generic UDF,并给出使用此UDF实现ETL过程的Hive SQL;(结果是一个Hive Generic UDF的源文件,和一套SQL)
(3) 你还有没有其他的方法实现这个 ETL?如果有,请任选一个方法,并提交代码。(结果是你找到的方法的代码,如果没有找到更好的方法,请回答“无”)
题目完。
如题,大家集思广益。发表下想法吧。!
------解决方案--------------------
呵呵,点击流
mr就用单表关联吧
hive 也就是join
------解决方案--------------------
晕,这个帖子的题目和你的一样啊
http://bbs.csdn.net/topics/390414342
LZ,看看我的答案你能永不
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。
其他相似内容:
-
PowerDesigner15少了四个菜单
我新安装的PowerDesigner15没有Model,Symbol,Database,Report这几个菜单,什么原因呢
------解决方...
-
数据仓库 元数据管理问题
刚刚接触数据数据仓库
对于元数据管理 我不知道怎么弄 ?
有哪位会的 帮帮忙啊
我有的是Sybase 创建...
-
Unix文件和Dos格式文件向数据库导数的问题?!请高手解答
我最近遇到的问题是这样的,我在AIX服务器下向greenplum数据库导数的时候,文本...
-
在线紧急求助,公司系统崩溃,重装系统,怎么样使用原来的数据库!
由于公司系统崩溃,重装系统了。
以前的系统装在D盘,sql2000也装在D盘
现...
-
数据量达到10亿以上的时候,BI怎么办?
公司的oracle,数据库做BI,现在的问题是数据量非常大,250G以上,数据量10亿以上。
每天晚上跑ETL和...
-
数据库 开发 资料 !
大家手头上的数据库开发的资料拿出来共享了!
大家如果 有感觉不错的 数据库开发资料都可以贴上,下载、参阅网址...
-
高分求解有关数据建模方面的问题,进来看看也有分!
什么是数据建模,为什么要进行数据建模,有什么好处,数据挖掘和数据建模之间的关系,我...
-
公司要上BI项目,我负责做一个原型prototype。看了一下csdn版
深深感到国内IT行业真是悲剧啊。
------解决方案------------------...
-
‘数据仓库’初学着请指导!
毕业将近 5 年多少时间再搞软件开发,在此过程中接触过 Oracle 、sql server!
现在学习 数据仓库、BI、E...
-
部署项目:SQL SERVER 2005 Analysis Service ??
部署项目:SQL SERVER 2005 Analysis Service
我在本机的数据库服务器上部署后可运...