1. 程式人生 > >大資料平臺架構實踐

大資料平臺架構實踐

說明

本篇部落格整理自參考內容,完整內容請檢視原文章;

技術選型

MOLAP

與Druid相類似的實時資料分析工具,還有Linkedln的Pinot和eBay的Kylin,它們都是基於Java開發的。Druid相對比較輕量級,用的人也多,畢竟開發時間久一些,問題也少一些。

Pinot,Linkedln開發的類似於Druid的多維資料分析平臺,它的功能實際上要比Druid強大一些,但因為去年才剛剛開始開源,用的人比較少。大家有興趣的可以去試試。它的整個程式碼量也比較大,架構與Druid也非常相似,但它引入了更好的一種協調管理器,更多的是一種企業級別的設計,更加完整、規範。

Kylin是eBay的開源分析工具,它的優點就是很快,特別適合每天定時報表,缺點也很明顯,就是隨機查詢很慢。它還有一個好處就是支援標準的SQL,與Tableau等BI工具整合,可以直接連到eBay的這個Kylin工具。而且,Kylin在Fast Cubing上做了一些預處理,反應較快。

KUDU是去年十月份Apache開源的一個工具,與小米聯合釋出。它的定位是什麼呢?大家都知道Druid是一個批處理、高容量的查詢系統,響應時間很慢,而HBase可以支援快速的響應時間,但它主要是一個寫少讀多的情況。
KUDU,走在這兩個極端的中間,它既能夠保證大吞吐,又可以保證低延時。小米從去年十月份開始使用KUDU,主要用於一些服務質量監控、問題排查,總體感覺還不錯。小米也是KUDU現在最大的一個使用者,因為我們很多時候需要考慮HBase和Druid綜合的一些優點,所以KUDU也是小米目前實驗的一個工具。

這裡寫圖片描述

設計模式

小米的廣告系統主要是對每個廣告的請求、點選、展現做一些分析,一條線是通過Kafka→Druid→資料視覺化顯示,另外一條路就是完整資料落盤到HDFS,每天晚上通過資料重放去糾正Druid裡的一些資料,覆蓋Druid的準確資料,最後做視覺化。

參考