基于Hadoop/Hive的海量web日志处理系统的设计与实现

来源 :大连理工大学 | 被引量 : 0次 | 上传用户:xiaolingzijiangsu
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
Web日志处理一直是一个热点的研究问题。随着互联网技术的飞速发展,网络产生的信息量越来越大,web日志处理也面临着新的问题。对于一个数据中心而言,它不仅会产生相当大规模的web日志数据,而且各个web服务器生成的日志格式都各有差异。怎样存储并高效地处理一个数据中心产生的海量、异构的web日志,是本文研究的主要内容。Hadoop是一个流行的大规模数据处理框架,它能够运行于多种平台上,并且具有良好的健壮性和可扩展性。Hadoop实现了MapReduce算法,因此,使用Hadoop的用户可以编写特定的MapReduce程序来完成自己的任务。MapReduce程序处于比较低的层次,每完成一个特定的任务,用户都必须编写大量代码。Hive是基于Hadoop的一个开源的数据仓库工具。它引入了传统数据库中的一些概念,并且支持用一种类SQL语言。熟悉传统数据库开发的用户能够快速的进行开发,并且显著的减少代码量。本文对这两种工具分别进行了深入的研究,包括与它们各自相关的概念、技术。还包括这两种工具技术的使用,如,怎样配置一个基于Hadoop/Hive的一个环境,怎样维护由它们组成的集群系统。以及如何基于它们进行开发,例如如何开发MapReduce程序,如何利用Hive提供的语言来进行数据处理等等。根据对这两种工具及相关技术的研究,本文开发了一个基于Hadoop/Hive的web日志处理系统。该系统在逻辑功能上划分成四个模块。日志采集模块通过将数据中心中各个前端web站点产生的日志数据同步到日志采集站点,并运行后台脚本将数据导入到已经建立的表中。查询分析模块负载完成对web日志的预处理,并接收用户发出的查询请求、返回查询结果。存储处理模块完成对数据的实际存储,包括原始的日志数据,清洗过后的日志数据和种种其他临时数据。并执行转化后的MapReduce程序。在结果输出模块中,我们选择了一种客户端语言负责与Hive进行通信,完成统计功能的代码,并最终以web页面的形式表现出查询结果。本系统的开发,既利用了Hadoop在海量数据处理方面的优势,又利用了Hive在简化应用开发方面的强项。通过实际的测试比较,该系统在大规模数据处理方面有着明显的优势,并且有较高的实用价值。
其他文献
为维护公共安全和公众利益,原建设部令第80号《房屋建筑工程质量保修办法》(以下简称《办法》)第七条第二款规定:屋面防水工程、有防水要求的卫生间、房间和外墙面的防渗漏,
本文研究了三种受阻酚类抗氧剂的抗氧化基础因素并从化学结构和抗氧剂防护机理的角度对试验结果作了相应的比较。
建立了炼焦过程的Aspen Plus模拟模型,包括煤料预热模块、反应器单元模块、以及反应器单元模块间的耦合模拟;对炭化室和燃烧室两个反应器进行热力学耦合,并以产品产率为灵敏
全球互联网络的发展,使21世纪成为计算机网络化时代,这个时代的到来必然对传统的营销方式产生巨大的冲击和挑战。本文从分析网络化发展对传统营销方式的冲击着手,认为网络营