大數(shù)據(jù)是眼下很多企業(yè)面臨的一個挑戰(zhàn),由于數(shù)據(jù)量非常巨大,而且數(shù)據(jù)類型異常復(fù)雜,傳統(tǒng)的基于關(guān)系型數(shù)據(jù)庫的存儲和分析辦法顯露出不足。Hadoop的出現(xiàn)給人們帶來解決大數(shù)據(jù)問題的希望,特別是一批著名的大企業(yè),如谷歌、雅虎、JP摩根大通等,成功地利用Hadoop開發(fā)出了開源的大數(shù)據(jù)管理系統(tǒng),讓人們看到了Hadoop在解決大數(shù)據(jù)難題時的巨大潛力,很多企業(yè)紛紛決定引入Hadoop,來解決自己的大數(shù)據(jù)難題。
不過,專家提醒,在決定利用Hadoop構(gòu)建自己的大數(shù)據(jù)管理系統(tǒng)之前,一定要確保自己充分了解Hadoop。采用Hadoop之前最好先對技術(shù)人員進(jìn)行必要的培訓(xùn),以確保技術(shù)人員具備必要的數(shù)據(jù)分析專業(yè)知識。顯然,并不是所有的企業(yè)都能成功地開發(fā)和部署Hadoop應(yīng)用的。目前,Hadoop還是一個剛剛起步的市場,有很多廠商提供與Hadoop有關(guān)的產(chǎn)品和服務(wù),其中有些是基于云的SaaS服務(wù)。
最重要的是,一定不要盲目跟風(fēng),每個企業(yè)都有自己的特殊需求,都有自己的技術(shù)條件。根據(jù)Forrester的市場調(diào)查,目前,在美國只有1%的Hadoop項(xiàng)目是真正應(yīng)用于生產(chǎn)環(huán)境中的?!斑@個數(shù)據(jù)肯定將在未來一年翻一番或兩番?!?Forrester分析師吉姆·庫貝勒斯(James Kobielus)表示。他呼吁企業(yè)要保持謹(jǐn)慎,因?yàn)橄嚓P(guān)的技術(shù)還在演進(jìn)之中,技術(shù)更新非???。
可以肯定的是,與傳統(tǒng)的數(shù)據(jù)庫管理系統(tǒng)相比,Hadoop有自己的優(yōu)勢,尤其是它既能處理關(guān)系數(shù)據(jù)庫中的結(jié)構(gòu)化數(shù)據(jù),同時也能處理諸如音視頻等非結(jié)構(gòu)化數(shù)據(jù),而后者在現(xiàn)實(shí)世界中普遍存在,要遠(yuǎn)遠(yuǎn)比結(jié)構(gòu)化數(shù)據(jù)更為常見。Hadoop系統(tǒng)還可以根據(jù)數(shù)據(jù)的規(guī)模和問題的復(fù)雜程度輕松地?cái)U(kuò)展。
“Hadoop的應(yīng)用真正改變了我們對數(shù)據(jù)的理解和使用方式?!?eBay用戶體驗(yàn)、搜索和平臺副總裁休·威廉姆斯(Hugh Williams)表示。eBay如今擁有的數(shù)據(jù)量高達(dá)9個PB,這些數(shù)據(jù)既有Terabyte系統(tǒng)所產(chǎn)生的結(jié)構(gòu)化數(shù)據(jù),同時也有Hadoop系統(tǒng)產(chǎn)生的非結(jié)構(gòu)化數(shù)據(jù)。
“你可以在同樣的硬件資源上運(yùn)行各種不同類型的工作負(fù)載。相比而言,在Hadoop之前我們使用硬件資源的方式太呆板、太不靈活了?!蓖匪拐f,“如今,你能以一種與過去完全不同的方式來充分發(fā)揮集群的計(jì)算能力。這將大大降低公司創(chuàng)新的門檻,從而有助于組織的創(chuàng)新。Hadoop功能太強(qiáng)了?!?/p>
隨需求增長自由擴(kuò)展
位于美國佐治亞州德盧斯市的Concurrent公司是較早采用Hadoop的公司之一。這個公司對外銷售流媒體系統(tǒng)。同時,它還替客戶保存和分析大量的視頻數(shù)據(jù)。為了更好地應(yīng)對待處理數(shù)據(jù)量的不斷增長,兩年前Concurrent采用了Cloudera公司的Hadoop CDH系統(tǒng)。
“Hadoop是我們解決大數(shù)據(jù)難題必不可少的工具,借助它我們在很短的時間內(nèi)就能完成海量數(shù)據(jù)的處理?!盋oncurrent公司工程總監(jiān)威廉·拉扎羅(William Lazzaro)說。
拉扎羅介紹,Concurrent有一個部門專門收集和保存客戶的視頻點(diǎn)播統(tǒng)計(jì)數(shù)據(jù),Hadoop的部署給這個部門解決了一個很大的難題?!拔覀冇幸粋€客戶,現(xiàn)在一個月就可以新生成30億條記錄,我們預(yù)計(jì),在未來3個月,它每月的數(shù)據(jù)量將會達(dá)到10億條?!?/p>
很長時間以來,Concurrent公司有兩個大的難題:一個是傳統(tǒng)的關(guān)系型數(shù)據(jù)庫無法處理諸如視頻這類非結(jié)構(gòu)化數(shù)據(jù),另一個是需要進(jìn)行處理和存儲的數(shù)據(jù)量成倍增長?!拔覀兊目蛻粝MA?#12316;5年的數(shù)據(jù)?!崩_解釋說,“如果它們每天的數(shù)據(jù)量達(dá)到PB級,對我們而言,將是一個非常的挑戰(zhàn)?!?/p>
他說,幸運(yùn)的是,Concurrent的工程師發(fā)現(xiàn),采用Hadoop他們可以應(yīng)對其客戶不斷增加的數(shù)據(jù)量帶來的巨大處理和存儲壓力?!皽y試過程中,工程師們曾經(jīng)完成過每天為客戶處理20億條數(shù)據(jù)記錄。如果數(shù)據(jù)量再增加,我們只要往節(jié)點(diǎn)中加入服務(wù)器,就可以馬上獲得所需要的處理能力。整個系統(tǒng)的可擴(kuò)展性非常好。”拉扎羅說。
他說,作為比較,該公司采用傳統(tǒng)的數(shù)據(jù)庫來完成同樣的工作。他們發(fā)現(xiàn)Hadoop的主要好處之一是,在數(shù)據(jù)量增加時可以很容易和迅速地增加硬件,同時,還不需額外的授權(quán)費(fèi)用,因?yàn)樗情_源軟件?!斑@是Hadoop與傳統(tǒng)的關(guān)系數(shù)據(jù)庫系統(tǒng)相比 一個非常大的不同?!崩_說。
位于美國加利福尼亞州圣克拉拉市從事生命科學(xué)和基因組研究的NextBio公司也是Hadoop的用戶,它們所從事的人類基因測序和相關(guān)科研工作涉及的數(shù)據(jù)量也非常龐大。
“我們有非常多的各種基因組數(shù)據(jù),需要與其他數(shù)據(jù)進(jìn)行關(guān)聯(lián)和比較,我們采用Hadoop來幫助完成這些工作?!盢extBio工程副總裁薩特南·阿拉克(Satnam Alag)說,“我們通過Hadoop來對大量的公共數(shù)據(jù)進(jìn)行各種分析,很多組織需要這些研究結(jié)果,如制藥公司、學(xué)術(shù)研究等。”NextBio使用的是MapR公司的一個Hadoop分發(fā)版本。
他說,一個典型的完整的基因組序列可以包含120GB#12316;150GB的壓縮數(shù)據(jù),要對這些數(shù)據(jù)處理需要500GB的存儲空間。過去,要分析一個基因組序列就要3天,今天,用30#12316;40臺服務(wù)器運(yùn)行Hadoop,NextBio的工作人員在3#12316;4個小時內(nèi)就可以完成。“對于那些必須要對這些數(shù)據(jù)進(jìn)行全面分析的應(yīng)用程序,這種效率的提升是非常有用的?!?/p>
Hadoop另一大優(yōu)勢是,只要簡單地增加更多的節(jié)點(diǎn)就可以保證系統(tǒng)的處理能力得到增加?!叭绻挥肏adoop,系統(tǒng)的擴(kuò)展將是一件具有挑戰(zhàn)性的工作,成本高昂?!彼f這種所謂的橫向擴(kuò)展—— 給由普通服務(wù)器組成的Hadoop集群中增加節(jié)點(diǎn)——是一種性價(jià)比非常高的擴(kuò)展系統(tǒng)方式,“Hadoop框架能自動地管理群集中失效的節(jié)點(diǎn)?!?/p>
他說,這極大地改變了公司增加計(jì)算能力來滿足其需求的方式?!拔覀儾幌M谟布Y源上就花上數(shù)百萬美元,我們沒有這么多的錢。”
支持新的應(yīng)用類型
拉扎羅說,Hadoop另一個用處是能夠?qū)嫶蟮臄?shù)據(jù)集進(jìn)行分析并迅速發(fā)現(xiàn)趨勢。對一家大型零售商而言,這可能意味著它能對Facebook或Twitter的用戶數(shù)據(jù)進(jìn)行分析,來了解去年圍巾流行什么顏色,并與今天的流行色進(jìn)行比較,以幫助決定今年如何采購商品。
“它能讓你及時地對過去的數(shù)據(jù)進(jìn)行分析和整理,從而發(fā)現(xiàn)和尋找到新的銷售機(jī)會?!崩_說。過去Concurrent公司要為汽車經(jīng)銷商進(jìn)行的商業(yè)活動或廣告進(jìn)行分析,這是一件非常折磨人的事情,會涉及非常多的數(shù)據(jù)?!拔覀円獙?shù)據(jù)進(jìn)行分析,看看誰在觀看廣告,借此發(fā)現(xiàn)你的銷售目標(biāo)人群,據(jù)此引導(dǎo)你進(jìn)行有針對性的銷售。你并不是總是知道你要找什么?!?/p>
傳統(tǒng)的數(shù)據(jù)庫可以滿足很多分類整理和分析的需要,但對于超大規(guī)模的數(shù)據(jù)集,Hadoop在完成這些工作時效率更高。拉扎羅說:“Hadoop就是專門為大數(shù)據(jù)分析設(shè)計(jì)的?!?/p>
對此eBay的工程師深有體會?!癏adoop能很快對非結(jié)構(gòu)化數(shù)據(jù)進(jìn)行分析,迅速幫助eBay開發(fā)出新的應(yīng)用?!眅Bay威廉姆斯說。由于eBay的工程師可以對公司現(xiàn)有的3億多條商品報(bào)價(jià)、歷史銷售記錄以及大量的相關(guān)信息進(jìn)行分析,這就使eBay能夠很好地了解客戶,并為客戶提供他們想要的用戶體驗(yàn)?!斑@不是簡單的關(guān)于結(jié)構(gòu)化與非結(jié)構(gòu)化的問題,而是它讓我們的工程師能夠卷起衣袖,以一種前所未有的方式對現(xiàn)有的數(shù)據(jù)進(jìn)行分析和處理,從而改進(jìn)我們的服務(wù)水平和提升銷售業(yè)績。”他說。
去年,eBay已經(jīng)用Hadoop完成了一些非常了不起的事情,包括提高商品廣告效果、改善購買者的體驗(yàn)以及讓客戶更方便地訪問網(wǎng)站。
例如,eBay的員工可以看到客戶在萬圣節(jié)和圣誕節(jié)提交的每一項(xiàng)查詢,從他開始輸入時就可以看到?!巴ㄟ^這項(xiàng)功能,我們的員工就知道人們都在尋找什么東西。放到5年前這種使用數(shù)據(jù)的方式,我們想都不敢想?!?/p>
技術(shù)貯備必不可少
正如Hadoop有非常突出的優(yōu)點(diǎn)一樣,利用它也有一些特別的注意事項(xiàng)。業(yè)內(nèi)人士提醒,首先不要盲目跟從一個供應(yīng)商,謹(jǐn)防廠商鎖定。因?yàn)槟壳癏adoop市場還剛剛起步。
Forrester的庫貝勒斯說,“廠商的技術(shù)還在持續(xù)快速發(fā)展之中,同時,生態(tài)系統(tǒng)也有待完善?!?/p>
Gartner的分析師馬庫斯·柯林斯(Marcus Collins)提醒說,要充分發(fā)揮Hadoop的價(jià)值,企業(yè)必須找到擁有Hadoop相關(guān)專業(yè)知識的人才?!笆褂肏adoop需要具有一定水平的數(shù)據(jù)分析能力,而許多企業(yè)現(xiàn)在并沒有這樣的專業(yè)人才?!彼f, “企業(yè)需要對員工進(jìn)行培養(yǎng),在數(shù)據(jù)分析能力方面進(jìn)行投資,這樣才能確保你能用好Hadoop這項(xiàng)技術(shù)?!?
另一個重要的考慮因素是:多數(shù)情況下Hadoop項(xiàng)目需要外聘專家,目前他們供不應(yīng)求,如果找不到就只能培養(yǎng)內(nèi)部員工。
“Hadoop對數(shù)據(jù)的使用方式與以前有很大相同。”eBay的威廉姆斯說,“因此,我們必須先把培訓(xùn)做好,使我們的工程師知道如何使用Hadoop,知道如何編寫代碼,這就意味著你將不得不投資在您的開發(fā)人員和項(xiàng)目經(jīng)理上,以使他們成長為熟練的使用者。不要低估這一點(diǎn)?!?/p>
對于那些關(guān)鍵的應(yīng)用還要考慮企業(yè)學(xué)習(xí)和適應(yīng)開源系統(tǒng)的過程。謹(jǐn)記在一些小項(xiàng)目中進(jìn)行試驗(yàn)是一回事,而在大規(guī)模復(fù)雜系統(tǒng)中應(yīng)用則是另外一回事。因此,最好提前讓企業(yè)的管理團(tuán)隊(duì)在開源軟件的使用方面進(jìn)行學(xué)習(xí)。
柯林斯的另一個建議是,密切關(guān)注和參與項(xiàng)目,以確保它按計(jì)劃進(jìn)行?!安灰涯愕乃袉栴}都交給你的Hadoop供應(yīng)商,畢竟最終使用這個系統(tǒng)的是你?!?/p>
此外,庫貝勒斯解釋說,Hadoop的最佳實(shí)踐仍在不斷完善,所以最好從一些能立竿見影的項(xiàng)目著手,避免要長時間才能看到效益的項(xiàng)目。隨著組織建立起自己的專業(yè)團(tuán)隊(duì)以及經(jīng)驗(yàn)的不斷豐富,組織將能利用Hadoop做更多更有價(jià)值的事情,在此期間,項(xiàng)目的規(guī)模和應(yīng)用的范圍也將不斷擴(kuò)展。
不能代替?zhèn)鹘y(tǒng)數(shù)據(jù)庫
值得一提的是,大多數(shù)客戶使用Hadoop是作為輔助,而不是取代其他類型的軟件,比如傳統(tǒng)數(shù)據(jù)庫。例如,在eBay,該公司仍然在使用關(guān)系數(shù)據(jù)庫完成一些基于這些數(shù)據(jù)庫的分析和處理工作。用戶有必要保持靈活性,某項(xiàng)技術(shù)一統(tǒng)天下的局面現(xiàn)在還不會出現(xiàn)。
威廉姆斯解釋說:“在eBay,我們看到了綜合使用多種技術(shù)處理數(shù)據(jù)給我們帶來的價(jià)值。在某些方面,Hadoop是一個非常好的選擇,而在另外一些方面,需要與其他技術(shù)一起工作,才能更好地發(fā)揮作用?!?/p>
Concurrent的情況也是如此。Hadoop并沒有取代傳統(tǒng)的關(guān)系型數(shù)據(jù)庫,包括MySQL、PostgreSQL和Oracle。“這是一個綜合的解決方案。”拉扎羅說,“我們用Hadoop來完成繁重的工作,如海量數(shù)據(jù)的處理,我們還使用Map/Reduce在Hadoop中創(chuàng)建匯總數(shù)據(jù),這些數(shù)據(jù)可以很容易通過傳統(tǒng)的關(guān)系數(shù)據(jù)庫系統(tǒng)訪問?!?/p>
對關(guān)系型數(shù)據(jù)庫而言,如果系統(tǒng)過于龐大,比如,每天2.5億條記錄,數(shù)據(jù)庫的響應(yīng)就會變得很慢。“不過,”他說,“這種數(shù)據(jù)規(guī)模對Hadoop不成問題。因此,可以用Hadoop來存儲,比如,每天50億條記錄,然后用Map / Reduce來對數(shù)據(jù)匯總,最后把結(jié)果保存到傳統(tǒng)數(shù)據(jù)庫中,以支持傳統(tǒng)系統(tǒng)的快速訪問。
威廉姆斯說,在一般情況下Hadoop的使用沒有太多限制?!拔艺J(rèn)為Hadoop給我們帶來的是機(jī)會,幾乎關(guān)于Hadoop的任何技術(shù)問題都可以通過開源社區(qū)找到答案。有些人對Hadoop的確有抱怨,這是正常的,畢竟它是新的東西。這就像1993年或1994年的Linux一樣?!?/p>
威廉姆斯進(jìn)一步解釋說,“我們也的確看到,Hadoop在應(yīng)對海量數(shù)據(jù)時所面臨的獨(dú)特技術(shù)挑戰(zhàn),如架構(gòu)數(shù)據(jù)中心、重新設(shè)計(jì)網(wǎng)絡(luò)、選擇合適的硬件來支持Hadoop。但總體而言,Hadoop給eBay帶來很多幫助?!?/p>
“對于我們來說,Hadoop絕對是一個能改變游戲規(guī)則的技術(shù),這也是為什么我們的工程師要使用它的原因,它確實(shí)幫助我們成為一個真正的數(shù)據(jù)驅(qū)動型的公司。”他說。