江三鋒 王元亮



摘要:針對于傳統對海量數據處理和計算的瓶頸,提出了一種基于Hive的海量web日志分析機制。通過Hadoop分布式系統架構以及Hive數據倉庫對海量web日志做了分析處理,并對用戶的瀏覽行為進行了分析研究。對用戶瀏覽行為中的瀏覽量和跳出率、IP數、版塊熱度排行的分析結果對于網站建設和大數據分析系統優化都具有一定的指導意義。
關鍵詞:Hive;Web日志;Hadoop;網站建設
中圖分類號:TP391 文獻標識碼:A DOI:10.3969/j.issn.1003-6970.2015.04.021
0.引言
隨著互聯網技術的普及,網絡上的信息量呈指數級增長。毋庸置疑,web已經是世界上最大的信息系統。作為這個系統中重要的組成部分之一,web日志記錄了用戶瀏覽網頁的所有信息。通過處理和分析這些日志信息,我們可以了解到用戶的行為特征,從而改造網頁的布局,提高網站的流量,進而給企業帶來更高的收益。
通過數據分析技術和數據挖掘技術,從web日志中獲取用戶的行為特征已經成為商業界關注的焦點。早在1996年,Cockburn,Jones等人就對網頁用戶瀏覽行為做了調研分析。20世紀90年代末,Sliverstein,Maraus等人對Web搜索引擎日志進行了大規模的分析。
然而,隨著用戶量的急劇增加,web日志記錄的信息量也越來越龐大。傳統方法在處理海量數據集的時候一般都是通過分治的思想或者采用多線程多任務的方法來處理。如果僅僅靠提升計算機的存儲量以及性能顯然不能從本質上解決這一問題。本文通過采用hadoop平臺,設計并實現了基于Hive的海量web日志分析系統。
1.相關技術介紹
1.1Hadoop分布式系統
HadoopTM作為Apache軟件基金會下的一個分布式開源框架,在眾多的大型企業中得到了廣泛的應用。分布式文件系統HDFS(Hadoop Distributed File System)和Map/Reduce并行編程模型是Hadoop的兩大核心。Hadoop主要是通過HDFS來實現分布式存儲的底層支持,并且通過Map/Reduce來實現分布式并行計算任務處理的程序支持。所以用戶能夠在不了解分布式底層細節的情況下開發分布式程序。endprint