




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、项目总体需求、具体设计1、总体需求:捕获用户每天的行为数据,生成业务日志文件,根据日志文件清洗、分析、提取出需要的价值信息( pv :页面浏览量 uv :独立访客数 独立IP会话 时长等),对网站的良好运营提供有价值的指标。2、具体设计2.1捕获(JsSDK)用户行为数据(launch 事件、pageView 事件、event事件、 chargerequet 事件)2.2将捕获的数据发送给 web服务器,生成日志文件(Nginx)2.3将日志文件上传至文件存储系统中( Shell脚本、Flume)2.4在文件存储系统中对日志文件进行清洗,过滤掉脏数据和不需要的字段(MapReuce job 任
2、务)2.5将过滤后的日志文件导入到数据库中(HBase)2.6通过MapReduce 程序或Hive进行统计分析(Hive)2.7将统计分析后的结果导入到本地数据库中进行永久储存( Mysql)2.8 在前端进行展示(SpringMVC+Highcharts)项目架构(画图)具体分为三个部分(如下图所示)数据收集层hadoop 、hive、flume、kafka、shellfllunelflumed后自程主1J哙斥甘刍玄送到启土程展1HDFS数据分析层hive、MapReduce 、spark数据展示层spri ngmvc + highcharts三、技术选型、特点、为什么1. JsSDK捕获
3、前端页面数据。Javascript编写页面日志生成与发送工具(原则:保持对业务代码最小影响)特点:采用原生的 JavaScript编写,以js文件嵌入到前端,页面触发业务所 关注的事件(按照收集数据的不同分为不同的事件)时调用相关方法。2. Java sdk后台服务日志生成与发送工具JavaSDK代码很简单,可以打成jar包或者直接拷贝类到具体的项目中,正常逻辑处理到JavaSDK所关注的事件后,调用 JavaSDK提供的api即可。3. Ngi nx web 服务器,产生日志文件特点:Nginx是一个小巧而高效的 Linux下的web服务器软件,相比较 Apache它不仅有稳定性、丰富的功能
4、集、示例配置文件,更重要的是Ngi nx是基于事件的,它的内存使用很低,系统资源消耗小很多。3. shell脚本上传日志文件(数据量一般比较小的场景,不会立即进行分析)分割日志,每天定时分割成昨天的日志文件。(Vi split.sh )上传到 HDFS (vi put2hdfs.sh )flume上传(数据量一般比较大的场景,需要实时处理。)5. HBase数据库数据解析以后,我们把它存入HBase表。因为:不同的事件,最后上传到HDFS里面每行数据的字段数量是不一样的;而且HBase中,单表数据量相对比较大6. MySql最终结果存储Mysql是关系型数据库,结构十分清晰,能够与 JavaW
5、eb中的SpringMVC进行很好的对接;而且SQL语句是结构化的查询语言,方便运营页面查询数据7. Sprin gMVC+Highcharts进行报表显示四、具体实现需求(分析了哪些功能pv、uv)主要实现需求:Pv :页面的浏览次数,衡量网站用户访问的网页数量;用户每打开一个页面就记录 一次,多次打开同一个页面则浏览量累计。描述用户访问网站信息,应用于基本的 各个不同计算任务Uv :独立访客数1天内访问某站点的人数(以 cookie为依据)1天内同一访客的多次访问只计为1个访客S time :会话时长详细需求:港跃用户数也懈专祈-地域牙衲模埃用户跳二血览域分斫项a具休设计用戸通口那叮-网站
6、进人公司丙国四用户测览尽考分析孝块用尸打开一坎艺麻唸曰顶面烫事r折模块订单讦営;1认购阿甲隔工订篁改付订里订里甕i成支门仃单退藍订里五、项目中遇到了哪些问题,怎么解决1、日志格式有点混乱,以至于给后面的数据清洗带来困扰办法:最后调整数据格式,并重新定义了分隔符2、对日志文件进行分析时,建立Hive外部表与Hbase表的链接字段搞错,以至于HBase与Hive整合不成功办法:查看数据字典,查找字段,并将hive外部表的字段名和 HBase表的列 名一样。六、项目总结通过本次项目搭建, 我对大数据的实际应用, 以及客户需求的具体实现有了更 为清晰的认识,同时也对之前所学到的知识进行了温故与整合。同时看到了自己的很多不足,究其原因,是对Hadoo
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 企业抵押贷款合同样本参考
- 项目经理劳动合同范文
- 足球俱乐部球员转会合同协议范本新
- 移动通信设备区域分销合同范本
- 道路硬化改造提升施工合同书
- 股权转让合同典范解析
- 跨区域旅游合作:组团社与地接社合同范本
- 塑料挤出机节能改造技术考核试卷
- 市场营销与电子支付方式考核试卷
- 厨房用品消费者满意度调查考核试卷
- 2023年新疆省公务员录用考试《行测》真题卷及答案解析
- 2024年国网公司企业文化与职业道德试考试题库(含答案)
- 牙周牙髓联合病变治疗
- 机场食品配送应急处理方案
- 医院培训课件:《黄帝内针临床运用》
- 语文新课标“整本书阅读”深度解读及案例
- 地质队安全培训
- 2024至2030年中国毛绒玩具数据监测研究报告
- 建筑复工复产安全培训
- GB 21258-2024燃煤发电机组单位产品能源消耗限额
- 八年级上学期语文12月月考试卷
评论
0/150
提交评论