離線數(shù)據(jù)分析平臺(tái)實(shí)戰(zhàn)——210項(xiàng)目綜述與需求分析
項(xiàng)目綜述
項(xiàng)目分別分為bf_track,
bf_transforer和
bf_dataapi。
本次項(xiàng)目主要以分析七個(gè)模塊的數(shù)據(jù),
分別為用戶基本信息分析、操作系統(tǒng)分析、地域信息分析、用戶瀏覽深度分析、外鏈數(shù)據(jù)分析、訂單信息分析以及事件分析。
那么針對不同的分析模塊,我們又不同的用戶數(shù)據(jù)需求,所以我們在bf_track項(xiàng)目中提供不同的客戶端來收集不同的數(shù)據(jù)。
在bf_transformer中分別采用hive+mr兩種方式進(jìn)行數(shù)據(jù)分析。在bf_dataapi中進(jìn)行分析結(jié)果的api提供以及結(jié)果圖表展示。
收集系統(tǒng)(bf_track)總述
我們需要將用戶瀏覽的數(shù)據(jù)采集到我們的存儲(chǔ)系統(tǒng)(hdfs)中,
我們只收集pc端數(shù)據(jù)和程序后臺(tái)的部分?jǐn)?shù)據(jù)。在pc端我們通過集成js來收集用戶瀏覽行為數(shù)據(jù);
在程序后臺(tái),通過集成java的jar文件來收集我們需要的數(shù)據(jù)。
在這里只考慮java開發(fā)環(huán)境。
js/jar將收集的數(shù)據(jù)發(fā)送到nginx,然后flume監(jiān)控nginx日志,將數(shù)據(jù)寫入到hdfs中。

java sdk
由于本次課程中涉及到的七個(gè)模塊數(shù)據(jù),只有訂單信息的分析由于需要明確是否進(jìn)行支付,那么需要程序后臺(tái)發(fā)送消息通知,故這里只有該訂單分析模塊需要在后臺(tái)程序中調(diào)用。
檔詳見:..\文檔\Java SDK需求文檔&設(shè)計(jì)文檔 .doc
js sdk
由于我們本次項(xiàng)目的重點(diǎn)就是分析pc端的數(shù)據(jù),所以我們最終分析的七個(gè)模塊基本上都需要從pc端獲取不同的數(shù)據(jù)。具體需求文檔詳見:..\文檔\JS SDK需求文檔&設(shè)計(jì)文檔.doc