Hadoop離線數據分析平臺實戰——520項目總結
到這里本次項目也就介紹完了,不過在項目最后簡單的介紹一些數字以及項目優化、擴展等情況
通過本次課程的學習,希望同學們對離線數據分析這一塊有一個初步的了解,
希望同學們在學習完本課程后,對如何在工作中使用離線數據分析有一個初步的了解。
在本次課程中,我主要目標是放到了如何產生用戶瀏覽數據以及如何解析數據,
對應解析后的數據結果展示,講解的不是特別的詳細,
所以希望同學們在學習之余,自己想想如何能夠更好的顯示解析后的數據,
最后祝同學們能夠有一個好的開始。
實際工作中常見的數字:
如果只有launch和pageview事件,一千萬的數據一般文件大小為7G左右。
單臺的Nginx+Flume基本可以支持數據的傳輸操作,
但是最好使用兩臺機器做負載均衡/容錯機制。
如果IP解析采用我們項目中介紹的這種,在集群規模為3+8(3臺機器為NN+RM, 8臺機器為DN+NM)的情況下,所有的mr和hive程序運行時間在一個小時以內。
優化:
MR程序:
進行hadoop、hbase等參數調優,使用多個reducer等。
Hive程序:
指定使用多個reducer、設置hive執行mr時候的內存參數、調整HQL語句結構等
數據展示:
對應api的產生可以通過添加cache的方式減少查詢數據的次數等。
擴展:
數據收集
可以通過Nginx的負載均衡機制動態的根據項目的需要添加Nginx+Flume的數據傳輸機器,
需要注意的是在采用負載均衡的時候,flume配置中最后在文件產生格式中添加一個編號來分別表示不同的機器產生的日志記錄。
數據解析:
利用hadoop的本身優勢,可以動態的添加datanode節點,增大數據的執行能力。
數據展示:
可以利用Nginx的負載均衡機制,在nginx服務器之后提供多臺tomcat的服務器來提供實際應用。
(和其他的java web程序類似)