大数据离线分析项目HadoopWord格式.docx
- 文档编号:22502633
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:5
- 大小:40.89KB
大数据离线分析项目HadoopWord格式.docx
《大数据离线分析项目HadoopWord格式.docx》由会员分享,可在线阅读,更多相关《大数据离线分析项目HadoopWord格式.docx(5页珍藏版)》请在冰豆网上搜索。
2.1捕获(JsSDK)用户行为数据(launch事件、pageView事件、event事件、chargerequet事件)
2.2将捕获的数据发送给web服务器,生成日志文件(Nginx)
2.3将日志文件上传至文件存储系统中
(Shell脚本、Flume)
2.4在文件存储系统中对日志文件进行清
洗,过滤掉脏数据和不需要的字段
(MapReucejob任务)
2.5将过滤后的日志文件导入到数据库中
(HBase)
2.6通过MapReduce程序或Hive进行统
计分析(Hive)
2.7将统计分析后的结果导入到本地数据库中进行永久储存(Mysql)
2.8在前端进行展示
(SpringMVC+Highcharts)
项目架构(画图)
具体分为三个部分(如下图所示):
数据收集层
后台栏展J
程再后刍長盘到吋小
hadoop、hive、flume、kafka、shell
fflumcl
flume3
HDFS
数据分析层
hive、MapReduce、spark
的事件(按照收集数据的不同分为不同的
事件)时调用相关方法。
2.Javasdk后台服务日志生成与发送工具
JavaSDK代码很简单,可以打成jar包或者直接拷贝类到具体的项目中,正常逻辑处理到JavaSDK所关注的事件后,调用JavaSDK提供的api即可。
3.Nginxweb服务器,产生日志文件
特点:
Nginx是一个小巧而高效的Linux下的web服务器软件,相比较Apache它不仅有稳定性、丰富的功能集、示例配置文件,更重要的是Nginx是基于事件的,它的内存使用很低,系统资源消耗小很多。
3.shell脚本上传日志文件(数据量一般比较小
的场景,不会立即进行分析)
分割日志,每天定时分割成昨天的日志文
件。
(visplit.sh)
上传到HDFS(viput2hdfs.sh)
flume上传(数据量一般比较大的场景,需要实时处理。
)
5.HBase数据库
数据解析以后,我们把它存入
HBase表。
因为:
不同的事件,最后上传到HDFS里面每行数据的字段数量是不一样的;
而且HBase中,单表数据量相对比较大
6.MySql最终结果存储
Mysql是关系型数据库,结构十分清晰,能够与JavaWeb中的
SpringMVC进行很好的对接;
而
且SQL语句是结构化的查询语言,
方便运营页面查询数据
7.SpringMVC+Highcharts进行报
表显示
四、具体实现需求(分析了哪些功能pv、UV)
主要实现需求:
PV:
页面的浏览次数,衡量网站用户访问的网页数量;
用户每打开一个页面就记录一次,多次打开同一个页面则浏览量累计。
描述用户访问网站信息,应用于基本的各个不同计算任务
Uv:
独立访客数
1天内访问某站点的人数(以cookie为
依据)
1天内同一访客的多次访问只计为1个访
Stime:
会话时长
详细需求:
3独立访动
用户数据基本分析樓块卜dime住桃
诙土率
壬罐」沽乖*兰
订单自杆挨块-
订单斟成血盍付订单退钦叮里
五、项目中遇到了哪些问题,怎么解决
1、日志格式有点混乱,以至于给后面的数
据清洗带来困扰
办法:
最后调整数据格式,并重新定义
了分隔符
2、对日志文件进行分析时,建立Hive
外部表与Hbase表的链接字段搞错,以至于
HBase与Hive整合不成功
查看数据字典,查找字段,并
将hive外部表的字段名和HBase表的列名一样。
六、项目总结
通过本次项目搭建,我对大数据的实际应用,以及客户需求的具体实现有了更为清晰的认识,同时也对之前所学到的知识进行了温故与整合。
同时看到了自己的很多不足,究其原因,是对Hadoop以及诸多协作框架的理解应用仅限于皮毛,缺乏透彻的研究,实际开发能力仍大有欠缺,需要更多的实战来历练。
总之,通过本次项目搭建我收获颇丰,受益匪浅'
并清楚了自己以后学习的重点'
努力的方向。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据 离线 分析 项目 Hadoop