大數據平台的建設目標

它山之石,可以攻玉——要談大數據平臺的建設目標,首先要知道業界先進的實踐經驗,瞭解別人的數據平臺是怎樣的,然後才能結合自己公司的實際情況設定合適的目標和方向。

本文作者劉旭暉,選自《大數據平臺基礎架構指南》一書。

1 別人的大數據平臺是怎樣的

那麼,別人的大數據平臺是怎樣的呢?如果參加過一些大大小小的技術分享論壇或會議,你應該不難發現,在各種各樣新的諸如“×××公司大數據平臺實踐無敵乾貨分享”之類的PPT中,談到大數據平臺的技術組件時,多半都會給出一個大同小異的系統架構圖。

在這個架構圖中,各種日誌和DB數據採集組件、存儲和計算引擎、監控和調度系統,不管在實踐中真實的應用情況如何,反正在圖上所有組件一個都不缺,除了個別組件的增減替換,每家公司的大數據平臺看起來都沒有太大的區別。

所以,如果你要問大數據平臺的基礎架構圖長什麼樣,不用自己畫,直接用HortonWorks公司的HDP發行版套件圖來展示,估計也沒啥大的不妥,如下圖所示。

大數據平臺的建設目標

除了各種公開會議,過去的幾年裡我和北上杭的不少大數據平臺從業者也常常有各種私下的交流,在交流的過程中,討論到大數據平臺的建設方向的時候,也有些人很直白地和我說:別折騰了,大數據平臺建設的整體思路其實都差不多,隨便找一兩家靠譜的公司交流一下就好了。

所以,談到大數據平臺的技術交流,貌似可以比較的只是具體組件方面的技術細節、組件的性能、平臺的穩定性,以及各自的開發平臺與公司的具體業務流程的適配和應用等方面。

如此看來,稍微靠譜一點的公司的大數據平臺,整體的水平應該都在差不多的水平線上,差距只是踩坑的多少和經驗的積累程度吧?

那麼,現實果真如此嗎?顯然不太可能!

2 和業內領先的大數據平臺的差距

以蘑菇街的大數據平臺為例,客觀地說,和頂尖的行業巨頭,比如阿里、騰訊的大數據平臺的整體建設水平相比,有不小的差距肯定是不用懷疑的。只不過這些差距真的僅僅體現在具體組件的技術深度層面嗎?我認為事情並沒有那麼簡單。

我也接觸過大量來面試我們的大數據平臺開發崗位的同學,他們中的不少人已經在各種各樣的公司(有些其實也不是小公司)從事過數據平臺的建設工作。

在與這些同學溝通他們的項目經歷時發現,在不少公司的大數據平臺體系中,大數據生態裡的各種主流組件其實也是一樣不少的,數據規模雖小,平臺五臟俱全。如果要畫平臺的整體組件架構圖,沒準還會比蘑菇街的大數據平臺多出兩三個組件來。但是,一旦談到平臺的實際應用水平和所提供的服務的時候,這些公司的平臺往往是極度原始和簡陋的。

那麼,各家公司的大數據平臺的成熟度水平的差距到底體現在哪裡呢?

純粹論底層組件,拋開財大氣粗,自打飛天項目開始,各種基礎組件都要自己做一套的阿里不說,多數公司的大數據平臺建設主要依託的還是成熟的開源組件,以及在這些組件上進行的優化改進和二次開發。

從技術層面來說,大家填坑的水平固然有差距,但填坑水平的差距真的就是導致各自平臺整體水平差距的最重要因素嗎?

對多數公司來說,你的業務遠未達到BAT的規模,所以平臺架構的理論先進性,各種極端負載情況下平臺的穩定性,各種集群和資源的彈性拓展能力,對大數據平臺的實際產出價值,真的會造成很大的影響嗎?你的平臺和別人的平臺的差距真的是各種類似人工智能、流式SQL之類的新技術應用速度上的差距嗎?早幾年別人還沒開始引進這些技術的時候,平臺的服務能力不是一樣甩你幾條街嗎?

換個角度舉幾個大家更熟悉的例子吧!

比如製造手機這件事,從外觀上來看,不就是觸摸屏外加攝像頭嗎?至於內部的組件配置,也不外乎藍牙、WiFi、NFC、GPS、內存、CPU等,都有極端成熟的產業鏈支撐。所以,你覺得山寨機和iPhone的差距在哪裡呢?

再比如消費級無人機,主體結構不就是電池、馬達,外加幾個螺旋槳嗎?那麼大疆的無人機又是怎麼做到橫掃各種競爭對手,市場佔有率遙遙領先的呢?它的產品和淘寶上幾十元一個的玩具四軸飛行器又有什麼區別呢?

所以,在我看來,多數公司在大數據具體組件的應用水平方面固然存在差距,但這並不是平臺整體成熟度差距的根本所在。

而且,在一些具體組件的技術深度和先進技術的探索方面,小公司和大公司是無法看齊的——由於與大公司在體量和人才儲備方面存在現實差距,小公司多半是學不來也趕不上的。從支撐公司業務發展和人員投入產出效益的角度來說,小公司也沒有必要去學這些,大不了等到相關技術成熟的時候拿過來用就好了。

那麼,差距到底在哪裡呢?我認為,產品和服務形態這些看起來偏軟性的、容易被忽略的方面,才是體現各家大數據平臺成熟度水平最核心的因素。幸運的是,產品和服務的建設思想,也是有可能快速學習、借鑑、改進和提高的,前提是你真正意識到並重視這方面差距的存在。

3 大數據平臺建設目標小結

所以,大數據平臺建設的目標是什麼?是比拼誰的組件更豐富,誰跟進社區技術跟進得更快,誰的團隊擁有更多的Committer?No,No,No!這些方面最多也只能算手段,而非目標,甚至都不一定是實現目標最有效的手段。

評估大數據平臺的能力和成熟度,重點不在於你提供了多少種存儲計算引擎,覆蓋了大數據生態圈多少技術組件,或者你的團隊的技術能力有多麼無敵。而是你為使用平臺的用戶解決了哪些問題,掃除了哪些障礙,提升了多少工作效率,附加了哪些增值收益。進一步來說,還包括平臺內部組件的橫向聯通能力和業務流程上縱向貫穿打通上下游鏈路的能力,這些才是數據平臺建設的根本目標和衡量平臺成熟度水平的評估標準。

這不是我鼓吹用戶至上所喊出的無關痛癢的漂亮話,這是我們在過去多年的實踐中,對實際的經驗教訓的總結。不過,所謂知易行難,每隔一段時間,你可能都會發現之前所做的工作和這個目標還是有不小的差距。加上公司業務會發展,技術會變革,大數據平臺建設目標的確定也不可能一成不變,是一個需要持續思考和檢驗的過程。


本文選自《大數據平臺基礎架構指南》,作者劉旭暉,電子工業出版社7月出版,點擊瞭解更多獲取本書詳情。


分享到:


相關文章: