论文部分内容阅读
随着互联网行业的快速发展,互联网用户在成指数级别地增长。而且大众用户的正常的工作和生活越来越依赖于互联网,对于那些互联网企业,海量用户的访问每天都会产生海量的Web日志信息,在这些Web日志中隐藏了巨大的商业信息。目前信息社会中准率先掌握了用户信息,谁就可以引领时代的发展。不仅如此,对Web日志的挖掘也可以改变人们的生活和工作习惯。本文的研究内容主要包括以下几个方面:对分布式技术进行了研究。主要深入研究了Hadoop分布式平台。近些年来,越来越多的企业、机构和个人对海量数据的研究产生了兴趣。其中Google公司可以说是大数据时代的开创者,Google公司的分布式平台Hadoop备受人们的喜爱。Hadoop分布式平台可以运行在普通的、廉价的计算机上面来提供分布式计算服务,但是Hadoop可以保证计算的高效性、安全性、高扩展性。Hadoop经过多年的发展,已经成长为了一个完整的生态系统,在其生态家族中最被常用的是MapReduce编程模型和HDFS (Hadoop分布式文件系统)。对聚类挖掘进行了研究。聚类分析方法是数据挖掘领域特别在Web日志分析中最常用的一个技术方法。聚类就是将数据集合中相似度较高的数据对象集合在一起,将数据对象划分成多个类或簇,类或簇就是相似性度量高的数据对象的集合,划分的准则就是类中的数据对象相似度比较大,而类间的数据对象相似性比较小。并且详细介绍了K-means聚类算法。对基于Hadoop的Web日志预处理模块进行了概要设计。Web日志预处理模块中主要负责对原始的Web日志数据进行数据清洗、用户识别、会话识别和路径补充等。本文设计了一套基于Hadoop的Web日志预处理系统来提高预处理的效率。对基于Hadoop的Web日志分析平台进行了详细设计。根据Hadoop以及Web日志挖掘深入的学习与研究,本文设计一个基于Hadoop的Web日志分析平台。该平台主要有以下几个功能模块组成:Web日志的预处理模块、Web日志的存储模块、Web日志挖掘模块。其中Web日志预处理模块使用上面介绍的基于Hadoop来实现的预处理模块。在存储模块中本文采用Hadoop中的HDFS和MySQL组合来实现。HDFS负责存储原始的Web日志文件以及经过Map和Reduce处理后的文件,而MySQL负责存储从HDFS分布式文件系统中导出的数据,以供业务层使用挖掘后的数据信息。本文使用sqoop工具负责HDFS和MySQL直接的数据传输。最后,Web日志挖掘模块中,首先,本文使用K-means聚类算法作为Web日志分析的挖掘算法,由于本系统基于Hadoop实现的,因此本文对K-means进行了改进使其能使用在分布式平台上。其次,本文主要对Web用户行为进行挖掘分析,因此需要对Web日志中的用户建立数据模型,并最终通过编程来实现了该系统。最后对基于Hadoop的Web日志分析平台功能测试和性能测试,并通过与单机系统的结果比较,证明了该系统在处理海量Web日志方面具有明显的优势。