论文部分内容阅读
随着大数据的流行,越来越多的企业对大数据变得重视起来,都希望能够通过大数据来分析用户的行为,为企业的决策提供进一步的指导。在这样的前提下,Web站点采集用户数据并加以分析变得越来越流行,并且切实地帮助了企业了解用户行为,进一步改善产品质量。本文主要研究Web网站的日志收集和分析,利用相关的JavaScript API对网页上用户的行为进行日志采集,然后对数据进行加工处理,最后利用分析的结果给企业提供决策支持。本文叙述了日志采集和分析的整个流程的关键技术、分析了系统的需求、设计了系统的整体架构。本文叙述了①日志采集系统的设计目标,然后围绕设计目标对API进行设计,②考虑到日志内容有可能比较大、网页会在手机等设备上面运行、网页不频繁刷新等特点,出于节省流量以及提高性能的目的,本文使用隐藏iframe来提交日志,而非利用隐藏的gif的URL刷新来提交日志,③日志发送到日志服务器后,考虑到大规模日志的情况,我们将会使用多台日志服务器并使用负载均衡,日志服务器把日志写到微软Azure存储系统,文件路径由机器名和日志时间构成,每5分钟生成一个新文件,④由后端分布式处理系统把文本日志转化成结构化日志,再用定期运行的脚本读取和处理结构化日志,生成一些常规性报表(比如每天用户数、会话数、新用户趋势等),利用SQL SERVER的Reporting Service进行报表展现,⑤把数据进行聚合再推送到数据库,利用数据库挖掘工具进行数据挖掘。在数据处理方面,考虑到数据量会很大,我们使用分布式处理系统COSMOS对数据进行处理,在大数据情况下得到了良好的性能。最后系统开发完成后通过了系统测试,并且在应用到实际生活中后系统的运行状态良好,利用日志分析的结果帮企业提供了有用的决策,证明该系统是可行并且有效的。相比于其他的系统,本文的研究内容主要有以下特点:1.企业能够得到完整的原始日志,并且基于原始日志生成多种自定义报表或者数据挖掘。2.本系统在浏览器客户端使用隐藏iframe技术,优点是一次能提交更大的数据,不用频繁提交数据,对于使用ajax来交互的站点,本系统采集数据更加节省流量。