1. 程式人生 > >如何構建使用者行為分析系統?

如何構建使用者行為分析系統?

2016年12月6號我參加了研究生論文的開題報告,研究方向為基於使用者行為的協同過濾推薦演算法,因此一直在跟進使用者行為相關資料的學習。
經朋友推薦,在極客學院上找到所需資料,我整理後分享給大家,希望大家拍磚。
對於使用者行為分析專案,我們肯定不陌生,平時我們在京東或者淘寶或者噹噹瀏覽過商品後,電商網站總會為我們推薦相關的商品,記得有次看噹噹做個性化推薦的架構師做知識分享時提到,噹噹個性化推薦系統每年可以為噹噹提高30%的營業額,真可謂功不可沒。
在接觸到個性化推薦系統後,我一直在想,這一套是怎麼做出來的呢?今天我結合自己所看的視訊,把我的理解和大家分享一下,理解有偏差的地方,請大家斧正。
使用者行為分析專案整體上分為四部分:收集資料、儲存資料、處理資料、展現資料,如下圖所示:
整體流程


有了整體的理解後,我們下面對每個部分進行詳細講解。
對於收集資料模組,使用者在登入網站後,一般會產生使用者登入記錄日誌、使用者網站訪問日誌、註冊記錄日誌等其他訪問日誌。這些日誌我們可以通過Web伺服器(如:Nginx、JBoss、WebLogic等)進行記錄,然後通過Flume NG日誌收集叢集進行統一收集,儲存到HDFS。
日誌收集模組
對於儲存資料模組,我們可以搭建HDFS叢集,大家流程參考HDFS API
對於處理資料模組,我們可以搭建Hadoop或Storm叢集,把HDFS的資料分析、處理後儲存到MySQL。
對於展現資料模組,我們可以開發API介面,訪問處理資料模組儲存在MySQL的資料。
這樣通過長期的資料統計,我們便可以為使用者打上很多標籤,比如:性別、年齡、偏好……
通過構件使用者行為分析系統,我們可以掌握使用者動向,為制定決策提供資料依據,做到精準推送。
希望我的分享可以您讓對使用者行為分析系統有一個巨集觀的認識。