基于点击流数据和Hadoop的毕业论文.docx
- 文档编号:68079
- 上传时间:2022-10-02
- 格式:DOCX
- 页数:91
- 大小:1.13MB
基于点击流数据和Hadoop的毕业论文.docx
《基于点击流数据和Hadoop的毕业论文.docx》由会员分享,可在线阅读,更多相关《基于点击流数据和Hadoop的毕业论文.docx(91页珍藏版)》请在冰豆网上搜索。
基于点击流数据和Hadoop的网站访客行为分析毕业论文
目 录
第1章 绪论 1
1.1研究背景及意义 1
1.2国内外研究现状 4
1.3本文的研究依据 6
1.3.1网站分析与网站访客行为分析 6
1.3.2网站访客行为分析的依据 8
1.4本文的研究内容 13
1.5本文的组织结构 14
第2章 现有网站访客行为分析技术研究 16
2.1基本命令行和SQL的纯手工分析 16
2.2网站点击分析工具StatViz 17
2.3日志分析统计工具AWStats 20
2.4GoogleAnalytics 21
2.5本章小结 22
第3章 基于Hadoop的网站访客行为分析方案 24
3.1Hadoop应用于网站访客行为分析的相关特性与工具 24
3.1.1HDFS分布式文件系统 24
3.1.2MapReduce分布式计算框架 25
3.1.3Hive数据仓库工具 26
3.2基于Hadoop的网站访客行为分析的可行性分析 26
3.3基于Hadoop的网站访客行为分析的方案设计 27
3.3.1原理与过程 27
3.3.2架构设计 28
3.4方案评估 29
3.5本章小结 30
III
第4章 基于传统点击流数据和Hadoop的网站访客行为分析方案的实现...31
4.1数据准备 31
4.2环境准备 31
4.3基于HadoopStreaming的网站日志预处理 33
4.3.1Hive日志表的创建 33
4.3.2日志行的处理逻辑设计 33
4.3.3HadoopStreaming编程实现 34
4.4基于Hive的基本指标统计与分析 35
4.4.1Hive表数据导入 35
4.4.2唯一访客数和访问最多访客 36
4.4.3使用Hive自定义函数处理URL. 37
4.4.4唯一资源数和请求最多资源 39
4.4.5网站请求的按日、按小时分布 40
4.5基于MapReduceJavaAPI的会话识别 42
4.5.1会话识别程序的设计 42
4.5.2Mapper 43
4.5.3Reducer 44
4.5.4Hive会话日志表的创建 46
4.6基于Hive的综合指标的统计与分析 47
4.6.1每日会话数 47
4.6.2进入页面和离开页面 48
4.6.3会话请求数分布 50
4.6.4会话时长分布 51
4.6.5访问频率分布 52
4.7基于GraphViz的网站访问拓扑结构图 53
4.8自动化网站访客行为分析系统的构建 58
4.8.1需求分析与整体设计 58
4.8.2详细设计 60
4.8.3系统实现 62
4.9本章小结 64
第5章 基于扩展点击流数据和Hadoop的网站访客行为分析方案的初步实现
..................................................................66
5.1传统点击流数据与扩展点击流数据 66
5.2扩展点击流数据的获取技术 67
5.3基于OpenWebAnalytics的扩展点击流数据获取 68
5.3.1OWA架构解析 69
5.3.2扩展点击流数据收集模块的增设 72
5.3.3跟踪代码的部署 73
5.3.4所获扩展点击流数据讨论与准备 76
5.4基于扩展点击流数据的网站访客行为分析的初步探索 78
5.5本章小结 81
总结与展望 82
致 谢 84
参考文献 85
武汉理工大学硕士学位论文
第1章 绪论
1.1研究背景及意义
2014年是互联网进入中国的第20个年头。
这时的中国,人们已经越来越了解互联网。
人们习惯于利用它来查看新闻,检索信息,访问企业门户,浏览与购买商品,发表文章和评论等等。
互联网越来越成为人们活动的重要场所。
在互联网上,为了完成特定的任务,比如购买一件商品,一般有如下操作:
1)打开浏览器;2)通过输入网址,打开书签或历史,或在搜索引擎上输入关键词并打开合适的索引,以此进入到一个网站页面;3)滚动页面以查看相应区块的内容;4)移动与点击鼠标以选择特定的文本、文本框或其它元素;5)在超链接上点击鼠标以从一个页面进入到另一个页面;6)在输入框中输入信息;7)点击提交按钮以向网站提交所输入信息;8)关闭标签页或浏览器,离开网站;9)其他操作。
上述各类操作中,基于当前普通的技术水平,网站可能感受到访客行为的渠道无非就两个——鼠标操作和键盘操作(至于对访客眼球动作、面部表情等的捕获,技术尚不成熟,不在本文讨论之列)。
1)键盘操作远不及鼠标操作频繁;2)键盘操作的结果一般是输入文字,通常跟访客在网站内的行为本身的关系不大;3)所输入的文字一般会进入网站的数据库,如果有需要,完全可以采用其他更加适合的技术进行分析;4)访客所输入文字中包含大量的隐私信息,记录所输入文字涉嫌违犯用户隐私。
基于上述四点原因,对键盘操作的记录与分析不在本文以及大多数网站分析系统所考虑的范围之内。
在上述一系列的鼠标操作当中,访客的每一个动作都有其来源,也有其影响结果。
以前两个操作为例,打开的浏览器的类型能帮助网站分析应尽可能适应何种浏览器,进入网站的方式(流量来源)能帮助网站分析其用户的粘滞程度、网站推广效果及关键词策略。
对访客在网站上的鼠标操作(包括鼠标移动、滚动、点击等,并与鼠标操作的上下文如浏览器、网站页面和页面元素等相结合;其中鼠标点击目的最为明确,意义最为重大,在鼠标操作中占据核心地位,是研究的要点)进行记录,生成点击流数据,并对其进行统计和分析,可以获知访客在网站上的行为,比如访客的访问频率、平均访问时长和深度页面数和
48
时长,访问的来源、搜索引擎关键词、进入页面、页面停留时长、页面跳转路径、离开页面以及页面内的活动轨迹,网站或页面的日请求数、日访问数、日访客数等,以及更为复杂的网站访问的时间(按年、月、日、时、星期等)分布、地域(根据IP地址解析出来的国家和省市)分布、来源(直接来源、推介来源、自然搜索来源)分布、访客属性(按访问次数、访问页面数)分布,系统(操作系统、浏览器、接入方式、屏幕分辨率)分布,等等,进而帮助量化企业运营,改进网站建设,分析流失或转化成因,进行关键词营销,实现个性化推荐,制定有数据支撑的决策[1-3]。
尽管点击流数据有如此大的作用,大量的网站仍对它们没有丝毫的利用,或者受限于工具只能进行少量的、简单的分析。
传统点击流数据即网站日志,其应用最为广泛,记录了访客对网站的资源(如页面、图片、JavaScript文件、
CSS文件等等)请求。
网站日志结构一般较为固定;在数据量不大、需求简单的情况下,可以通过命令行使用简单的命令快速在内存中进行处理。
当数据量超过了内存的许可之后,可以将网站日志导入关系型数据库,编写SQL语句或开发上层应用,实现网站使用情况的报表展示。
而当需要扩展传统点击流数据,记录更加复杂的访客点击操作,致使数据量和运算需求超过了单机的许可范围之后,大规模、超复杂的网站访客行为分析工作将变得十分困难。
然而,随着用户规模的扩大、业务的纵深、时间的累积以及长尾战略的实施[4],大规模、超复杂的网站访客行为分析的需求从无到有,而且日益变得迫切。
。
一般中型的网站(PV在10万以上),每天会产生1GB以上的网站日志文件;大型或超大型的网站,每小时就可能产生10GB的数据量[5]。
亟待有技术或解决方案能良好应对大规模、超复杂的网站访客行为分析工作。
为此,技术人员试图将对点击流数据的存储与计算工作分配给多台机器协作完成。
从理论上讲,传统分布式计算系统能够满足这一需求。
然而具体到实现上,这样的一个系统底层涉及硬件环境的精密配置,任务的切分、调度、同步、合并,错误的处理与恢复等机制的充分设计与实现,中间涉及复杂的业务逻辑,上面涉及面向各种平台的数据展示与交互界面,而且不得不面临业务需求的频繁变更。
如此之高的复杂性使得基于传统分布式计算系统的网站访客行为分析方案难以实施。
近年来兴起的云计算使得大规模、超复杂的网站访客行为分析工作成为了可能。
一方面,云计算通过共享软硬件的方式,极大地降低了硬件使用的成本;反过来,在成本一定的条件下,硬件的计算能力相对有了极大的提升。
另一方
面,云计算平台通过专门搭建的集群系统,良好地实现了存储与计算任务的多机协作,而且这一底层协作平台对应用开发者完全透明,开发者只需关注上层的应用逻辑,开发工作得以大大简化[6,7]。
目前,少数大型互联网公司如谷歌、歌、腾讯、百度、阿里巴巴等,已经基于其云计算平台为广大站长提供了具备一定规模和复杂度的网站访客行为分析应用,比如谷歌分析(GoogleAnalytics,简称GA)、腾讯分析(TencentAnalytics)、百度统计(BaiduTongji)、淘宝数据魔方等等[8-12]。
基于云计算的网站访客行为分析虽然有诸多的优点,但它们仍然有着一些天然无法克服的问题。
其一、可扩展性问题。
GA等工具虽然提供了一定的定制能力,但出于总体性能、开发成本等考虑,只能满足一些通用需求。
处在实践第一线、各有其特点的企业,其需求必然有先于或异于已有技术的地方。
无法满足企业前沿、极个性化的需求是此类解决方案的固有问题。
此外,第三方厂商也不可能获取并结合企业自身的用户数据库进行深度的分析。
其二、安全性问题。
企业网站的点击流数据中包含有大量的用户信息。
虽然这些信息通常并不侵犯用户隐私,也不明显泄露企业机密,但当数据量足够大之后,从它们中间仍可以分析出企业的运营状况、决策方向与变动等,这些信息如果被别有用心的第三方掌握,后果可能非常严重。
此外,企业无法保证解决方案供应商在其正需要数据的时候突然倒闭或停止服务,供应商不一定比企业存在得久。
其三、厂商锁定问题。
为了维持自身的平稳运行,企业不得不接受供应商在后续工作中提出的价格提升等要求,并且往往也不得不在业务拓展的过程中采购与供应商提供的现有系统相兼容的产品,而且这一情形会愈演愈烈。
这些问题使得有长远计划的企业不得不考虑搭建自主的、面向未来的网站访客行为分析系统。
由Apache基金会发布的著名分布式存储与计算框架Hadoop应运而生。
其超强的可伸缩性使大多数过去不可能或不可行的计算变得切实可行;其极强的可靠性使其可立即应用于企业生产环境中;其简单的编程模式大大降低了开发团队的学习、开发、维护成本;其低廉的硬件需求大大降低了技术人员学习的门槛和技术部门运营的投入;其开源特性使其能够搭载来自世界各地最前沿的技术成果和解决方案,并充分远离厂商锁定;其上大量的开源组件使得开发人员可重用优秀的算法和模式,关注抽象度进一步提升[13]。
Hadoop是这一时代技技术界伟大的产物,是企业自建面向未来的网站访客行为分析系统的极佳选择。
在数据存储与计算技术上取得突破性的进展之后,企业就可以结合自身特
点,扩展点击流数据,对其进行深度的分析,以满足自己的个性化需求。
在搭建自主的网站访客行为分析系统的过程中,扩展点击流数据的收集又成了关键性难题。
如何收集访客对网站的资源请求之外的其他活动,如页面内光标移动、屏幕滚动、窗口缩放、文本点击与选择等,如何对它们进行存储和分析等,成了新的问题。
面向上述种种问题,研究Hadoop技术,将其应用于网站访客行为分析的具体应用上,并更进一步地探索基于扩展点击流数据和Hadoop的网站访客行为分析技术,具有一定的理论价值和较高的工程价
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 点击 数据 Hadoop 毕业论文