基于Hadoop平臺的網(wǎng)站日志分析系統(tǒng)的設(shè)計獲獎科研報告_第1頁
基于Hadoop平臺的網(wǎng)站日志分析系統(tǒng)的設(shè)計獲獎科研報告_第2頁
基于Hadoop平臺的網(wǎng)站日志分析系統(tǒng)的設(shè)計獲獎科研報告_第3頁
基于Hadoop平臺的網(wǎng)站日志分析系統(tǒng)的設(shè)計獲獎科研報告_第4頁
全文預(yù)覽已結(jié)束

付費下載

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

基于Hadoop平臺的網(wǎng)站日志分析系統(tǒng)的設(shè)計獲獎科研報告

要:隨著移動互聯(lián)網(wǎng)時代的到來,用戶數(shù)據(jù)呈現(xiàn)出了爆炸式增長,網(wǎng)站產(chǎn)生的訪問日志也越來越大,達到了GB甚至TB級。大規(guī)模的日志中,隱藏了企業(yè)感興趣的數(shù)據(jù),挖掘其中的價值變得非常重要。網(wǎng)站日志分析系統(tǒng)基于Hadoop大數(shù)據(jù)處理平臺進行設(shè)計,由5個部分組成:由Flume組件收集日志編寫MapReduce應(yīng)用程序?qū)υ紨?shù)據(jù)進行清洗;通過Hive的HQL對數(shù)據(jù)進行查詢分析;Sqoop組件將Hive中的數(shù)據(jù)同步到Mysql;使用Echarts對數(shù)據(jù)進行可視化。經(jīng)實驗結(jié)果表明,數(shù)據(jù)量大于10G時,集群較于單結(jié)點具有更大的優(yōu)勢;同時,該技術(shù)棧使得Hadoop工程師與軟件工程師的工作可以有效分離,充分利用技術(shù)人員的技能特點。

關(guān)鍵詞:網(wǎng)站日志;集群;Hadoop;

00TP391

000A

一、概述

對于GB、TB級別的半結(jié)構(gòu)化數(shù)據(jù)的處理,傳統(tǒng)的關(guān)系型數(shù)據(jù)庫已經(jīng)無法在特定的時間內(nèi)進行查詢分析,隨著互聯(lián)網(wǎng)2.0時代的來臨,Web數(shù)據(jù)已經(jīng)呈指數(shù)級增長,單一結(jié)點的平臺已經(jīng)無法完成海量數(shù)據(jù)的分析任務(wù)。Hadoop是一個適用于大數(shù)據(jù)處理分析的分布式平臺,其生態(tài)系統(tǒng)組件包括:Flume、Hive、Sqoop等,通過Mapreduce對數(shù)據(jù)進行預(yù)處理,導(dǎo)入至Hive進行統(tǒng)計分析,通過Sqoop組件將分析結(jié)果同步到關(guān)系型數(shù)據(jù)庫,對于大規(guī)模數(shù)據(jù)處理方面,該技術(shù)棧在企業(yè)中得到了廣泛應(yīng)用。

Echarts是一個強大開源的圖表JS類庫,對Hive的分析結(jié)果能夠進行圖表化展示,供企業(yè)管理層進行決策。

二、相關(guān)技術(shù)

Hadoop是一個開源的大數(shù)據(jù)計算框架,具有HDFS、MapReduce、Yarn三大核心組件,開發(fā)人員只需要實現(xiàn)map()以及reduce方法就能夠快速編寫MapReduce程序,大大降低了大數(shù)據(jù)開發(fā)的難度。同時,Hadoop具有強大的生態(tài)系統(tǒng),F(xiàn)lume擅長日志的收集、聚合以及傳輸;Hive是一個數(shù)據(jù)倉庫系統(tǒng),提供強大的HQL功能;Sqoop是一款HDFS(Hive)與關(guān)系型數(shù)據(jù)庫的傳遞工具。

ECharts屬于Apache的孵化項目,由百度開發(fā),是一個使用JavaScript實現(xiàn)的開源可視化庫,可以流暢的運行在

PC和移動設(shè)備上,提供直觀,交互豐富,可高度個性化定制的數(shù)據(jù)可視化圖表,在數(shù)據(jù)可視化方面具有廣泛應(yīng)用。

三、系統(tǒng)設(shè)計

基于MapReduce+Hive+Sqoop+Echarts技術(shù)的網(wǎng)站日志分析系統(tǒng)的系統(tǒng)架構(gòu)如圖1所示:

圖1

系統(tǒng)架構(gòu)圖

1、日志采集模塊:Flume是一個高可用的日志采集、聚合和傳輸?shù)腍adoop組件,負責將各個前端web服務(wù)器中的日志傳送到日志接收節(jié)點上。Flume的數(shù)據(jù)流由事件(Event)貫穿始終。事件是Flume的基本數(shù)據(jù)單位,它攜帶日志數(shù)據(jù)(字節(jié)數(shù)組形式)并且攜帶有頭信息,這些Event由Agent外部的Source生成,當Source捕獲事件后會進行特定的格式化,然后Source會把事件推入(單個或多個)Channel中。你可以把Channel看作是一個緩沖區(qū),它將保存事件直到Sink處理完該事件。Sink負責持久化日志或者把事件推向另一個Source。能保證Flume的可靠性及可恢復(fù)性。

2、數(shù)據(jù)清洗模塊:通過Flume采集過來的日志,通常需要經(jīng)過特定的處理,此時需要自定義一個MapReduce程序完成特定的任務(wù),將清洗過后的數(shù)據(jù),作為Hive的數(shù)據(jù)源。MapReduce首先對輸入文件分片,Map輸出的中間結(jié)果會先放在內(nèi)存緩沖區(qū)中,從緩沖區(qū)寫到磁盤的時候,會進行分區(qū)并排序,接下來進入reduce階段,每個reducer對應(yīng)一個ReduceTask,在真正開始reduce之前,先要從分區(qū)中抓取數(shù)據(jù),相同的分區(qū)的數(shù)據(jù)會進入同一個reduce。這一步中會從所有map輸出中抓取某一分區(qū)的數(shù)據(jù),在抓取的過程中伴隨著排序、合并,最后得到完整的reduce輸出。

3、查詢分析模塊:Hive部署在Hadoop集群中的NameNode,也即master節(jié)點上,具體的查詢分析由HQL來完成。Hive執(zhí)行具體的

HQL語句的步驟如下:一、用戶通過客戶端組件(cli,webUI等)提交HQL語句。二、驅(qū)動器將接收到的

HQL語句發(fā)送到編譯器,編譯器將

HQL語句進行解析、優(yōu)化。最終的優(yōu)化策略是一個由MapReduce任務(wù)和HDFS任務(wù)組成的有向無環(huán)圖。最后執(zhí)行引擎利用

Hadoop來執(zhí)行這些任務(wù)。

4、數(shù)據(jù)可視化模塊:通過Sqoop將Hive查詢結(jié)果同步到關(guān)系型數(shù)據(jù)庫,使用J2EE+Echarts技術(shù)對結(jié)果以圖表形式進行展示。用戶在向其提供的瀏覽器客戶端上輸入或選擇需要查詢的內(nèi)容,后臺利用J2EE技術(shù)連接關(guān)系型數(shù)據(jù)庫,將查詢結(jié)果以JSON格式作為Echarts的數(shù)據(jù)源,進行以圖表、表格等多種形式進行展示。

四、實驗結(jié)果分析

為了測試系統(tǒng),我們在特定的平臺上做了實驗,分別利用幾組規(guī)模不同的數(shù)據(jù)分別在單機情況下和集群情況下進行時間測試。

實驗環(huán)境。實驗環(huán)境為單機配置為:處理器類型:Intel(R)Core(TM)i5-8250U;內(nèi)存容量:8GB。Hadoop集群是由5臺與單機配置相同的服務(wù)器組成。在集群中的所有服務(wù)器上都運行Centos7.4操作系統(tǒng),并安裝配置

Hadoop

2.8。在這

5臺服務(wù)器中,其中的一臺用來作為Master,并安裝配置Hive

2.3.6,其余4臺作為數(shù)據(jù)節(jié)點。

實驗數(shù)據(jù)及內(nèi)容。在實驗中,我們采用實際網(wǎng)站中的日志作為輸入。實驗的內(nèi)容是統(tǒng)計某一給定的時間片內(nèi),用戶訪問網(wǎng)站使用的代理工具前五排名。

實驗結(jié)果分析。通過分析實驗結(jié)果,我們發(fā)現(xiàn),如果數(shù)據(jù)量小于5G,那么

Hadoop集群并不能發(fā)揮其海量處理的優(yōu)勢,甚至?xí)r間消耗大于單機處理。但是,當要處理的網(wǎng)站日志達到10G的時候,Hadoop集群的優(yōu)勢就會隨著數(shù)據(jù)量的逐漸增大而顯現(xiàn)出來。如圖

2所示。

圖2

單擊與集群模式耗時比對圖

五、結(jié)論

本文使用了Flume、MapReduce、Hive、Sqoop、Echarts等技術(shù)設(shè)計了一種基于Hadoop集群的網(wǎng)站日志分析平

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論