在这样一个信息时代中,web网站是最重要的角色之一,人们利用它进行商业贸易浏览交易、商品购物、热点话题的浏览与意见交流等等。它的种类千变万化,从电子商务类网站、门户网站以及个人网站等等,而且数量也越来越多。而用户在浏览web网站时的个人信息、喜好以及相关情况,会以txt文本形式被保存到web服务器上,也就是web日志。
由于web日志数据几何式的暴增,它的潜在价值也就越来越大,而web日志挖掘[3]就是通过对这些日志数据进行清洗、筛选,通过数据挖掘和数据分析,从而得到一些具有价值的信息。尤其对于一些电子商务网站而言,可以通过对具有海量信息的web日志的分析研究,除了可以了解单个用户的具体信息和行为习惯外,还可以从整体上把握用户在网站上的潜在的访问模式,从而对于网站的布局模式进行进一步优化,此外,还能根据不同的类型的倾向的用户,进行页面的个性化展示服务,使之能够在整个行业中脱颖而出。尤其在竞争形势愈加激烈的现代市场中,web日志的挖掘分析技术[4]因能够增强企业自身的竞争优势,增强企业的生机和活力的作用,引起越来越多的重视。
然而web日志的激增,也给信息的挖掘带来了困难。例如,某B2B电商网站每天的用户访问记录流量就是几百万条,如果我们通过传统的方法,将这些信息导入到数据库中,然后利用数据库进行筛选、匹配以及会话重组,可能会花费大量的时间,甚至会导致机器崩溃。而大数据时代的到来,自然也就意着大数据处理技术的革新。Hadoop作为目前最为流行的大数据开发平台,其设计最早来源与Google关于第一代大数据处理平台的两篇文章[5]-[6],分别关于HDFS、Map/Reduce,并在此基础上形成了目前的Hadoop的结构框架。
1.2 研究现状
1.2.1 关于大数据处理的现状
1.2.2 关于web日志挖掘的研究现状
1.3 本文研究内容
主体是利用Hadoop的大数据平台来对web日志进行处理和信息挖掘,并结合Hive以及传统的MySQL、以及Linux的终端,通过多种方式尝试从而能够更加深入的了解各个平台技术的特点和用途,通过研究其相关理论、技术以及使用方法例如,如何配置Hadoop、Map/Reduce、Hive以及MySQL的相关环境,如何编写运行基于Map/Reduce的程序代码,如何使用HiveQL语言进行数据操作等等,为设计和实现基于Hadoop的日志分析系统奠定基础。并在后期引入马尔科夫理论[11],从而实现能够对用户网站行为进行预测。其具体的研究内容如下:
(1)原始日志数据的处理:利用Map/Reduce,按照相应要求,对原始的日志数据文件进行处理,其中包括优化信息的分布(如IP,Visit_time,Session等信息的规律分配),时间的规范化(yyyy-mm-dd HH:mm:ss的形式),以及去除掉日志中没有必要研究的记录消息(比如网络爬虫的日志数据)。
(2)日志数据的匹配查询:尝试使用两种方法进行处理,加深对Hadoop的了解和应用。一种是利用Hive的JDBC接口,通过Eclipse对处理后的日志数据进行匹配和提取操作,并利用shell终端进行文件拼接;另一种是直接继续使用Map/Reduce处理模块,结合Eclipse以及Linux的shell终端进行综合使用。匹配操作主要是对日志中的路径进行大类匹配标识,即日志中的请求页面和当前页面分别属于哪个类型。提取操作主要是将提取日志中的最主要信息,单独进行使用。
(3)构建数据库:在终端利用MySQL数据库进行操作,导进处理后的各种txt文件,构建出每一个用户的行为数据库,这个数据库里保存着每一个用户的浏览这个网站系统的行为路径,从而了解整体用户对这个网站的浏览顺序是怎样,并据此对网站进行优化和链接重组。 基于Hadoop的大数据分析研究与系统开发(2):http://www.youerw.com/jisuanji/lunwen_20548.html