企業(yè)可以利用Hadoop以及所有與它相關(guān)的技術(shù)設(shè)計(jì)大數(shù)據(jù)環(huán)境,以滿足其特定的需求。但把所有的技術(shù)集成在一起并不是一件容易的事。
IT團(tuán)隊(duì)尋求構(gòu)建大數(shù)據(jù)架構(gòu)時(shí)有大量的技術(shù)可供選擇,他們可以混合搭配各種技術(shù)以滿足數(shù)據(jù)處理和分析需求。但是有一個(gè)問題存在:把所有需要的技術(shù)框架組合到一起是一項(xiàng)艱巨的任務(wù)。
在不斷擴(kuò)展的Hadoop生態(tài)系統(tǒng)中,選擇和部署合適的大數(shù)據(jù)技術(shù)是一個(gè)長期反復(fù)的過程,周期要以年計(jì)。除非公司管理者愿花大量財(cái)力和資源來加速推動(dòng)項(xiàng)目。選擇技術(shù)的過程中有失誤判斷是很常見的,一家公司的架構(gòu)藍(lán)圖不一定適用于另一家組織,即便是完全相同的行業(yè)也不行。
Bryan Lari是美國德克薩斯州大學(xué)MD安德森癌癥研究中心(位于休斯頓)研究分析主任,他說:“我經(jīng)常跟人說,這不是像你在亞馬遜下個(gè)訂單或者從蘋果商店買個(gè)東西那么簡單的事。這是一件復(fù)雜的事,它需要一個(gè)過程。我們在半年或者一年之內(nèi)是做不完的。這也不是可以套用公式就能應(yīng)用的技術(shù),盡管有很多案例或者用戶有成功經(jīng)驗(yàn),但我們也可能用不同的工具來滿足我們的需求。”
MD安德森的大數(shù)據(jù)環(huán)境集中在Hadoop集群中,在三月份的時(shí)候投入了生產(chǎn)環(huán)境,初步打算用來處理病人房間監(jiān)視設(shè)備傳輸回來的重要信號數(shù)據(jù)。不過,數(shù)據(jù)湖平臺還包括HBase(與Hadoop配合的NoSQL數(shù)據(jù)庫),Hive(Hadoop支持SQL的軟件),還有各種其他Apache開源技術(shù),例如:Pig、Sqoop、Oozie和Zookeeper。此外,這家癌癥治療和研究組織還部署了Oracle數(shù)據(jù)倉庫作為信息庫來支持分析和報(bào)表應(yīng)用,還有IBM的Watson認(rèn)知計(jì)算系統(tǒng)提供自然語言處理和機(jī)器學(xué)習(xí)功能。未來出現(xiàn)新的數(shù)據(jù)可視化、治理和安全工具也必然會(huì)參與進(jìn)來。
MD安德森癌癥中心的IT團(tuán)隊(duì)在2015年初就開始使用Hadoop。為了演示可能的應(yīng)用情況同時(shí)熟悉該技術(shù),該中心首先使用基本的Apache Hadoop軟件構(gòu)建了試點(diǎn)集群環(huán)境。后來,他們部署了Hadoop Hortonworks分布式架構(gòu)用于生產(chǎn)環(huán)境。
Vamshi Punugoti是MD安德森癌癥中興研究信息系統(tǒng)的副主任,他說從這次試點(diǎn)項(xiàng)目中得到的經(jīng)驗(yàn)可以使他們處理架構(gòu)調(diào)整更容易。隨著新的大數(shù)據(jù)工具出現(xiàn),總會(huì)有調(diào)整架構(gòu)的可能性,一定需要功能增強(qiáng)或者替換組件。Punugoti說:“這是個(gè)持續(xù)更新的過程,包括我們收集到的數(shù)據(jù)都在不斷變化著。如果我們認(rèn)為(現(xiàn)有架構(gòu))可以處理一切那就太天真了。”
演進(jìn)更好的架構(gòu)
Uber平臺工程師團(tuán)隊(duì)花了大約一年時(shí)間設(shè)計(jì)了多層大數(shù)據(jù)架構(gòu),但是這么多技術(shù)組件搭建的有點(diǎn)倉促。Uber公司Hadoop團(tuán)隊(duì)高級工程師Vinoth Chandar說,該公司的現(xiàn)有系統(tǒng)跟不上業(yè)務(wù)運(yùn)營帶來的快速增長的數(shù)據(jù)量。結(jié)果,大部分?jǐn)?shù)據(jù)不能進(jìn)行實(shí)時(shí)分析,Chandar認(rèn)為這對于Uber公司倡導(dǎo)實(shí)質(zhì)性“實(shí)時(shí)叫車”理念來說是個(gè)大問題。
為了幫助運(yùn)營經(jīng)理實(shí)現(xiàn)數(shù)據(jù)驅(qū)動(dòng),Chandar和他的同事們搭建了Hadoop數(shù)據(jù)湖環(huán)境,其中包括HBase、Hive、Spark處理引擎、Kafka消息隊(duì)列系統(tǒng),還有其它一些技術(shù)。其中一些技術(shù)是內(nèi)部構(gòu)建的,例如:有一款數(shù)據(jù)提取工具Streamific。
有了該架構(gòu)之后,Uber公司將追趕大數(shù)據(jù)和分析的藝術(shù)狀態(tài)。但是,這并不是容易做到的。他半開玩笑地補(bǔ)充說:“為了把這些技術(shù)組件整合到一起,我們十個(gè)人幾乎一年沒有睡覺。”
架構(gòu)的挑戰(zhàn)對于組織來說可不是鬧著玩的。Gartner咨詢公司預(yù)測,到2018年,70%的Hadoop部署將無法實(shí)現(xiàn)他們節(jié)約成本和收入增長的目標(biāo),主要原因是技能不足和技術(shù)整合困難。Gartner公司分析師Merv Adrian說,整合障礙還在加劇,Hadoop分發(fā)商與大數(shù)據(jù)技術(shù)有關(guān)的數(shù)字還在穩(wěn)步攀升,這代表了部署Hadoop的公司對Hadoop技術(shù)支持的需求量趨勢。
在2016年太平洋西北地區(qū)BI峰會(huì)上,Adrian列舉了46種Hadoop相關(guān)的開源技術(shù)創(chuàng)新,這些產(chǎn)品都是由一家或者多家分發(fā)商提供支持服務(wù)的。但是,要把這些組件放到大數(shù)據(jù)架構(gòu)中卻是留給使用方的工作。“大多數(shù)Hadoop項(xiàng)目都像是藝術(shù)工作,我們都要把這些技術(shù)組件整合到一起使用。”
執(zhí)行過程中的變化
這種整合拼湊工作是非常艱巨的任務(wù),即便Hadoop不是框架中的一部分。Celtra公司提供了一個(gè)平臺可以設(shè)計(jì)在線顯示和視頻廣告,有幾部分已經(jīng)在基于云的處理架構(gòu)中陸續(xù)部署了,現(xiàn)在正把Spark及其SQL模塊整合到Amazon簡單存儲服務(wù)(S3)、MySQL關(guān)系型數(shù)據(jù)庫和Snowflake計(jì)算的數(shù)據(jù)倉庫系統(tǒng)。