论文部分内容阅读
随着21世纪的到来,互联网技术急速发展,信息的产生速度越来越快,数据量也急剧上升,用“信息爆炸”、“信息井喷”形容也不足为过,这使得我们步入了大数据的时代。面对T B甚至PB级的数据量,企业不再局限于海量数据的获取,而是着重如何挖掘数据,如何在海量的数据中提取出对企业有价值的信息,但是,企业当前的数据处理技术已经满足不了大量的数据处理了。开源组织机构Apache基金会下大数据处理平台Hadoop的诞生,突破了传统数据处理方式的瓶颈,使得海量数据的收集、存储、计算变得更加容易、更加高效。Hadoop系统是一个分布式的数据存储与处理的平台,可以实施在廉价的计算机集群上,提供了一个海量数据分布式存储和计算的架构,文件系统HDFS和计算框架MapReduce,使用户能充分利用集群的大容量空间存储海量数据和集群总分总的高速计算能力开发分布式的应用程序,实现海量数据的毫秒级高速处理。由于该平台采用面向对象的编程语言Java编写的,因此它具有很好的可移植性和可扩展性。发展至今,已扩展出了一些优秀的框架,企业用的比较多的框架如Flume、ZooKeeper、HBase、Pig、Hive、Sqoop等,实现了一些业务逻辑的封装,简化了Hadoop的使用。本文就是基于Linux系统上的Hadoop平台开发的企业网站论坛日志分析解决方案,主要分为五个模块,分别是文件上传模块、数据清洗模块、数据统计分析模块、数据导出模块、数据展现模块。文件上传使用Flume框架,数据清洗使用MapReduce核心算法,数据的统计分析使用Hive框架,可以计算得到论坛各大关键指标,如浏览量PV、注册用户数、ip数、跳出率,以供运营者决策,数据的导出使用SQOOP框架,将得到的各个指标导出到集群外的关系型数据库MySql中,数据的展现使用ZooKeeper和HBase框架,可以实现海量数据的毫秒级查询。开发的系统最后封装成linux系统上的脚本文件,再加入linux调度器,可以实现项目的自动化运行。最后,项目经测试后就可以正式上线运行。