如何構建用戶行爲分析系統?

2016年12月6號我參加了研究生論文的開題報告,研究方向爲基於用戶行爲的協同過濾推薦算法,因此一直在跟進用戶行爲相關資料的學習。
經朋友推薦,在極客學院上找到所需資料,我整理後分享給大家,希望大家拍磚。
對於用戶行爲分析項目,我們肯定不陌生,平時我們在京東或者淘寶或者噹噹瀏覽過商品後,電商網站總會爲我們推薦相關的商品,記得有次看噹噹做個性化推薦的架構師做知識分享時提到,噹噹個性化推薦系統每年可以爲噹噹提高30%的營業額,真可謂功不可沒。
在接觸到個性化推薦系統後,我一直在想,這一套是怎麼做出來的呢?今天我結合自己所看的視頻,把我的理解和大家分享一下,理解有偏差的地方,請大家斧正。
用戶行爲分析項目整體上分爲四部分:收集數據、存儲數據、處理數據、展現數據,如下圖所示:
整體流程
有了整體的理解後,我們下面對每個部分進行詳細講解。
對於收集數據模塊,用戶在登錄網站後,一般會產生用戶登錄記錄日誌、用戶網站訪問日誌、註冊記錄日誌等其他訪問日誌。這些日誌我們可以通過Web服務器(如:Nginx、JBoss、WebLogic等)進行記錄,然後通過Flume NG日誌收集集羣進行統一收集,保存到HDFS。
日誌收集模塊
對於存儲數據模塊,我們可以搭建HDFS集羣,大家流程參考HDFS API
對於處理數據模塊,我們可以搭建Hadoop或Storm集羣,把HDFS的數據分析、處理後保存到MySQL。
對於展現數據模塊,我們可以開發API接口,訪問處理數據模塊保存在MySQL的數據。
這樣通過長期的數據統計,我們便可以爲用戶打上很多標籤,比如:性別、年齡、偏好……
通過構件用戶行爲分析系統,我們可以掌握用戶動向,爲制定決策提供數據依據,做到精準推送。
希望我的分享可以您讓對用戶行爲分析系統有一個宏觀的認識。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章