趙 鑫
(遼寧行政學(xué)院人事處,遼寧 沈陽 110161)
互聯(lián)網(wǎng)極大地促進了商業(yè)的發(fā)展,每個電子商務(wù)企業(yè)都有自己的Web入口和后臺系統(tǒng),用戶在網(wǎng)站頁面上產(chǎn)生一個訂單時,Web和后臺系統(tǒng)就發(fā)生一次交互,交易請求數(shù)據(jù)被存在后臺數(shù)據(jù)庫中,對于這類結(jié)構(gòu)化的數(shù)據(jù),使用Hadoop Hive的HQL即可實現(xiàn)數(shù)據(jù)的清洗。每當(dāng)用戶在頁面進行點擊而跳轉(zhuǎn)到另外一個頁面時,一條點擊流日志就產(chǎn)生了,如圖1所示。點擊流日志是了解用戶心理傾向的關(guān)鍵,通過它企業(yè)能夠更好地理解產(chǎn)品及營銷,但點擊流日志是非結(jié)構(gòu)化數(shù)據(jù),不能直接被用于分析,它記錄了很多不需要的信息,將這些信息裝載到數(shù)據(jù)倉庫前,必須對點擊流日志進行數(shù)據(jù)清洗,粒度管理器能夠完此項任務(wù),粒度管理器主要完成清除無關(guān)數(shù)據(jù),清除錯誤數(shù)據(jù),記錄合、匯總與聚集。經(jīng)過這些處理,80%~90%的數(shù)據(jù)被粒度管理器拋棄,清洗后的數(shù)據(jù)被傳遞給數(shù)據(jù)倉庫[1]。其工作流程如圖2所示。
圖1 Web和點擊流
點擊流日志由日志收集服務(wù)器每天定期上傳至分布式文件系統(tǒng)(Hadoop Distributed File System,HDFS)的指定目錄,經(jīng)過MapReduce作業(yè)清洗后輸出至HDFS指定的目錄,最后再由Hive將清洗后的數(shù)據(jù)加載到Clickstream_log表中指定的分區(qū),完成點擊流日志的數(shù)據(jù)清洗工作[2]。其流程如3所示。
圖2 粒度管理器工作流程
圖3 點擊流日志的數(shù)據(jù)清洗處理流程
點擊流日志數(shù)據(jù)的體量巨大,但價值密度很低,下面為一條標準的Apache服務(wù)器日志信息[3]。
Clickstream_log表中主要字段如表1所示,其字段對map reduce任務(wù)產(chǎn)生影響。
表1 Clickstream_log表中主要字段
在Clickstream_log表中,除Csvp字段外,其他的字段可以在map函數(shù)中直接獲取,但Csvp必須經(jīng)過reduce函數(shù)才能獲得,如同一個用戶在同一個session中有兩條點擊流記錄,receive Time分別是1413482169623和1413482169642,那么這兩條記錄的Csvp分別為1和2,有了這個字段,才能完整得到用戶在網(wǎng)站的點擊行為[4-6]。
為了對Csvp進行排序,首先對map的key進行了重構(gòu),session id 由unqiue id和session time合成而成,其中經(jīng)典的流程如圖4所示。
圖4 將session id作為鍵值輸出的mapreduce排序流程
其執(zhí)行代碼為map/reduce/partion/二次排序等,主要部分如下:
點擊流日志的數(shù)據(jù)清洗,代表了一種非結(jié)構(gòu)化數(shù)據(jù)清洗的方式。當(dāng)擁Clickstream_log表后,意味著數(shù)據(jù)倉庫又多了一份寶貴資產(chǎn),可以通過Clickstream_log表進行網(wǎng)站的分析,更好地維護網(wǎng)站,增加網(wǎng)站瀏覽量。網(wǎng)站運營商根據(jù)不同用戶的瀏覽行為和習(xí)慣可以對現(xiàn)有網(wǎng)站進行改進和優(yōu)化,尤其對從事電子商務(wù)的企業(yè),通過點擊流日志可以更多地了解用戶的消費心理,深刻地理解產(chǎn)品、營銷和廣告是如何對用戶產(chǎn)生影響的。日志分析在企業(yè)發(fā)展中將越來越重要,從日志中將挖掘出大量重要信息。
[參考文獻]
[1]楊丕仁.基于Hadoop下利用Hive進行網(wǎng)絡(luò)日志存儲和分析[J].電子技術(shù)與軟件工程,2017(2):163-165.
[2]蔣煥亮.基于hive的日志倉庫構(gòu)建研究[J].計算機時代,2016(11):21-24.
[3]張俊瑞,代洋.基于Hadoop平臺的Web日志業(yè)務(wù)分析[J].山西電子技術(shù),2017(6):71-73.
[4]宋夢馨,繆紅萍,王溯,等.基于Hadoop平臺的網(wǎng)站日志分析[J].信息系統(tǒng)工程,2015(12):35-36.
[5]陸嘉恒.大數(shù)據(jù)挑戰(zhàn)NoSQL數(shù)據(jù)庫技術(shù)[M].北京:電子工業(yè)出版社,2013.
[6]范東來.Hadoop海量數(shù)據(jù)處理技術(shù)詳解與項目實戰(zhàn)[M].北京:人民郵電出版社,2016.