Hadoop之父,Cloudera首席架構師Doug Cutting先生
問:作為Hadoop創(chuàng)始人,請您回顧一下Hadoop歷史和初衷?
Doug Cutting:創(chuàng)建Hadoop的時候,當時我正在做一個項目,這個項目的代號叫Nutch。當時希望能夠基于開源去創(chuàng)建出一種網絡搜索的引擎,實現(xiàn)一種具有可擴展性、可收縮性的數(shù)據(jù)技術。
同期我看到了來自于Google的幾篇論文,我覺得他們的想法和我們的想法是完全一致的,所以我們把Google的想法放到了Nutch項目當中來實施了。當時我個人有這樣的一個需要,就是要做好手上的項目,當時我確實是沒有預想到一旦創(chuàng)建出來這個技術以后,它具有如此之廣的用途,沒有預見到它在制造、銀行、電信等很多行業(yè)的價值。它讓我感覺到非常驚喜。
問:如今Hadoop的進展,有沒有和最初設想不太一樣的地方?
Doug Cutting:當初也沒有一個關于Hadoop將來如何發(fā)展的計劃,Hadoop發(fā)展的演進范圍、規(guī)模大大超出了我當初的預想。而且最讓我驚喜的就是圍繞著Hadoop以及基于Hadoop所有的項目和技術,并不是基于某一個單獨的技術。而是基于多種技術組成的系列家族,整個技術系列是在不斷發(fā)展和演進之中,也就是說圍繞著Hadoop現(xiàn)在已經形成了非常強大的生態(tài)系統(tǒng),Hadoop整體生態(tài)系統(tǒng)的演進和發(fā)展并不受制于其中的任何一種組成的技術。
問: Hadoop常常和大數(shù)據(jù)聯(lián)系在一起,和人工智能也有關聯(lián)嗎?
Doug Cutting :我覺得Hadoop和AI之間是非常適合、非常匹配的一項技術,因為AI本身就是一種大數(shù)據(jù)的應用。
特別對于AI系統(tǒng)進行訓練的時候,使用的數(shù)據(jù)越多,AI系統(tǒng)就越先進。上周Google發(fā)表了一篇文章,主要講的是基于AI的圖像識別,也就是說,在用數(shù)以十億計的圖像識別的深度智能系統(tǒng)培訓基礎之上,圖像越多,識別能力就越強。因此,從這個意義上來說,AI就是一種大數(shù)據(jù)應用。
問:如何看待Hadoop和開源軟件之間的演變關系?
Doug Cutting: Hadoop作為一項基礎仍然是在發(fā)揮著關鍵作用,與此同時spark對于像IoT和AI的應用,也在起到越來越重要的作用。
除此之外,我們也會看到新的技術會涌現(xiàn)出來,這樣能夠使得開源的整個生態(tài)系統(tǒng)進一步得到發(fā)展和改進。這對于整個開源的生態(tài)系統(tǒng)來說是一件好事,比方說如果有了更好的存儲技術或者是更好的分析技術,毫無疑問Cloudera會采用這些技術。因為在開源的世界當中,競爭的邏輯是不一樣的,沒有哪個公司是擁有開源的技術。每當開源的技術有了新的發(fā)明或進展,開源群體的每一分子都會受益于其中。比方說如果在有一些領域會出現(xiàn)新的技術,在某些方面會優(yōu)于Hadoop,那Cloudera也會毫無疑問去采納這樣的技術放到我們的解決方案當中去交付給客戶,例如kudu,它是一個非常強大的存儲引擎,它既具備了像Hbase的隨機訪問能力,同時又具有HDFS快速查詢能力,兩者兼而有之。再例如Kafka,它有很強的實時應用支持能力和流處理能力,Cloudera已經把這兩個技術采納到平臺當中,更好地滿足需求。
另外我們也在構建一些更多基于Spark機器學習的工具,與之相關的有一個項目叫Apache Spot,它幫助我們的客戶保護他們的網絡安全,免遭黑客的攻擊,這是我們在Hadoop和Spark基礎之上的進一步發(fā)展。
問:對于Hadoop分布式存儲來說,在處理速度、網絡延時和成本幾個要素之間如何取得比較好的平衡?
Doug Cutting:在很多案例當中,我們看到處理器很多但也能夠做到低延遲,關鍵在于對于要處理的問、處理任務怎樣劃分,比如通過Hbase或通過很多交互式的系統(tǒng)像Solr 搜索,在節(jié)點越多的情況下反而能降低延遲,這是因為任務處理有很好的并行性。可以說現(xiàn)在大部分情況下,節(jié)點的數(shù)量或處理器的數(shù)量和延遲之間的平衡是不難找到的。
接下來就要講成本,成本確實是一個考慮因素,首先我們的軟件是開源的,而且我們所有解決方案能夠使用普通的商用硬件,所以和上一代相比成本有大幅度降低。而且我們認為今天這種低成本的架構是可以去運行很多其他的應用,只不過有很多其他的應用暫時還沒有用上低成本的架構,還有進一步降低成本的潛力。
問:Cloudera在Hadoop、Spark領域競爭的優(yōu)勢是什么?
Doug Cutting :首先IBM、微軟等幾家ISV對于Hadoop也是大力支持的,比方說微軟是Cloudera的合作伙伴,Oracle是Cloudera的分銷商。而且我們看到在大數(shù)據(jù)領域,采用最多的還是開源的系統(tǒng)。
盡管在亞馬遜、微軟和谷歌的云平臺之上會有一些用戶,他們的大數(shù)據(jù)應用使用的是專有的商用軟件服務。但是我認為假以時日,這些客戶會再次認識到在云中使用開源的大數(shù)據(jù)解決方案,具備成本更低、質量更高的優(yōu)勢,因為使用開源的解決方案使客戶可以在不同的云環(huán)境之間自由遷移。將來如果有這樣的必要性,可以選擇把這個軟件本地安裝來使用。
迄今為止,這些在大數(shù)據(jù)領域的商業(yè)或者專有軟件對Cloudera來說,我認為并不構成威脅。
問:如何看待Hadoop和云計算的關系?
Doug Cutting:云計算或云模式使得客戶在使用Hadoop的方式上具有了更大的靈活性,比方說他們可以在云環(huán)境中來使用Hadoop。如果他們把Hadoop用本地安裝運行的形式來使用的話,他們往往是建一個單個很大的集群來支持各種不同的應用,并且擁有一個統(tǒng)一的數(shù)據(jù)拷貝。如果在云環(huán)境當中來運行Hadoop,他們的數(shù)據(jù)會在亞馬遜存儲之類的系統(tǒng)當中,云環(huán)境供應商已經幫助他們管理了數(shù)據(jù)的拷貝。
在云環(huán)境當中使用Hadoop,客戶可以針對不同的應用創(chuàng)建應用不同的集群,而這樣的集群開關或者是規(guī)模的伸縮,都可以按需進行,這樣對于客戶來說,可以實現(xiàn)更好控制和靈活性。
我們從整個IT長遠的發(fā)展趨勢來看,過去IT在一個企業(yè)當中往往是集中在一個部門的手中,但是現(xiàn)在我們看到很多的企業(yè)的數(shù)據(jù)和數(shù)字技術,是在整個企業(yè)當中得到了擴散和廣泛使用,并不是所有IT的事項像過去一樣要找IT部門解決,各個非IT的部門具有越來越大的能力,在IT方面進行自我管理、自我服務,也有越來越多的工具能夠幫助他們做到這一點。而云計算是促進和推動了這一趨勢的發(fā)展,由于有云計算使得一個公司當中非IT部門,例如運營、制造、市場營銷部門都能夠自行采購一些服務并且加以運行,他們的控制能力和靈活性都大大增加了。
云計算本身也是促進了IT和數(shù)據(jù)的分散化、自助化,而不是像過去那種集中化的模式。
問:有數(shù)據(jù)專家現(xiàn)在趨向于把Hadoop當作數(shù)據(jù)倉庫架構的補充,請問您是怎么理解的?對于有一些數(shù)據(jù)量極小的應用, Hadoop會是殺雞用牛刀嗎?
Doug Cutting:我們是可以把整個數(shù)據(jù)倉庫都建立在Hadoop之上的。五年前我們和Ralph Kimball博士,他是數(shù)據(jù)倉庫架構主要的創(chuàng)建人,一起搞清楚了,也是證實了可以完全基于Hadoop來建立數(shù)據(jù)倉庫。而且也有很多用戶確實是把他們的數(shù)據(jù)倉庫完全建立在Hadoop的基礎之上。
當然就建立數(shù)據(jù)倉庫的技術而言,有其他的一些技術或者是工具,和Hadoop相比,這些存在的年頭更長,可能已經有了數(shù)十年的歷史。而事實上對于這些時間更加長久的技術,Hadoop并沒有能夠具備其中所有的功能、所有的性能。但即使如此,很多用戶選擇把他們的數(shù)據(jù)倉庫構建在Hadoop的架構之上,他們是為了能夠實現(xiàn)更加優(yōu)越的可擴展性、更高的性價比,以及更好的靈活性。
就第二個問而言,是不是殺雞用牛刀,這主要看用戶完成任務當中需要使用什么樣的工具。有的時候也許在規(guī)模上、在擴展性上是超出了需求,但是仍然能夠帶來靈活性的優(yōu)勢。比方說使用基于Spark的機器學習的工具。在這些情況下,用戶仍然發(fā)現(xiàn)Hadoop的平臺對于完成他們的任務非常有用,雖然他的規(guī)??赡苁沁^大的。當然我們講的也很清楚,我們并不認為Hadoop是一種通用的工具能夠解決所有的問。
在實際應用中,即使是規(guī)模很小的集群,比方說5個節(jié)點的集群,客戶也發(fā)現(xiàn)使用Hadoop與其他技術選項相比能夠產生更好的產出,帶來更多的價值與競爭。
問:對于大數(shù)據(jù)應用發(fā)展的速度,您感覺滿意嗎?
Doug Cutting:整個大數(shù)據(jù)的發(fā)展是在非常早期的階段,而且大數(shù)據(jù)是保持著穩(wěn)步持續(xù)地增長。我們看到很多公司在自己的大數(shù)據(jù)項目上都取得了成功,雖然目前這些大數(shù)據(jù)的項目規(guī)模還比較小,就大數(shù)據(jù)解決方案而言,我們的大數(shù)據(jù)解決方案客戶的也是也是在穩(wěn)步增長,他們用于大數(shù)據(jù)解決方案集群的規(guī)模也是在穩(wěn)步增長。至少自從Cloudera誕生以來,我們看到整個的數(shù)據(jù)的應用是處在穩(wěn)步增長的曲線之中,而并沒有出現(xiàn)停滯不前或者是失去動力的情況。
大數(shù)據(jù)已經很成功應用在很多領域,像金融反欺詐應用,在醫(yī)療領域,大數(shù)據(jù)也已經有了很多成功案例,比方說美國有一家公司Cerner開發(fā)了一套大數(shù)據(jù)系統(tǒng),主要是來判斷患者有可能發(fā)生敗血癥的情況。目前通過Cerner已經對幾百名有產生敗血癥風險的患者先期采取措施進行了治療,預防了敗血癥的發(fā)生,這就是一個非常成功的案例。
在癌癥治療方面,大數(shù)據(jù)的應用也在取得很多的進展,比方說主要是在基因組學的研究方面,在取得治療癌癥方面的進展。舉一個例子,加州大學的舊金山分校,他們做的大數(shù)據(jù)項目就是通過基因組的分析來找到癌細胞、腫瘤細胞突變的原因,并且來匹配相應的療法。他們用這樣的基于大數(shù)據(jù)的解決方案,已經開始對一些患者治療。雖然接受這種治療方法的患者人數(shù)不是太多,因為目前這種治療方法的價格還是非常昂貴,但是價格是在逐漸下降當中的。即使用大數(shù)據(jù)的解決方案治療癌癥,我們也是在取得很大的進步。
只是治療癌癥是一個很大的難題,我們可能還要花幾十年的時間。但是我確信未來癌癥的治療肯定是要基于大數(shù)據(jù)系統(tǒng)。
簡而言之,大數(shù)據(jù)應用的普及是一個長期的過程,應該讓每一家公司、每一個組織機構都能夠用正確的方式來用好數(shù)據(jù),這需要花很長的時間。不像智能手機帶來的變化,把智能手機賣到人手一臺,這個事情就完成了。大數(shù)據(jù)的普及,也是需要組織結構本身發(fā)生很大的變化,還需要很多的教育工作、人才的培養(yǎng)工作,但是這一切都是在穩(wěn)步推進當中。
問:您怎么看待中國大數(shù)據(jù)應用狀況?針對開發(fā)者,Cloudera有哪些計劃?
Doug Cutting:從中國的角度來說,從大數(shù)據(jù)出現(xiàn)一直到今天,中國一直是在大量使用、采用和參與推進大數(shù)據(jù)的發(fā)展。而且在過去十年當中,Hadoop在中國也是一直得到了大力推進,取得了非常大的成功。我們可以看到中國市場和Hadoop之間有一個非常自然的契合和匹配,從數(shù)據(jù)的角度來說中國可能是世界上最大的單一市場,在中國擁有數(shù)據(jù)的數(shù)量和規(guī)模超過了世界上大部分其他的國家,這也就是為什么Hadoop在中國有著非常成功的發(fā)展。
中國Hadoop生態(tài)圈和其他國家相比有一個不同:就是在中國很多Hadoop用戶習慣使用Hadoop的開源版本,而不是購買專業(yè)公司支持和幫助。對此,需要花更多的時間對市場進行教育和培育,也就是讓人們能夠了解到從更加長遠的角度來說,在使用這些軟件的過程當中如果能夠得到有關方面的支持和幫助,會有更好的結果。
就培訓而言,Cloudera是一直在推動各種培訓的項目。對于一個零起步的開發(fā)者來說,學習Hadoop最好的方式不是通過教科書,而是要通過案例來學習,通過案例的需求在具體實施當中、具體實踐當中來學,這樣的學習效果是更好的。Cloudera有一個Cloudera學術計劃,清華大學就是首批合作伙伴,還有其他的大學加入。在這個計劃當中,Cloudera是把大數(shù)據(jù)培訓的技能、教材、內容免費提供給大學合作伙伴。另外在亞洲有一個BASE Initiative(大數(shù)據(jù)分析技能培訓計劃)的教育項目,對潛在對象進行大數(shù)據(jù)技能的教育培訓,并且招聘其中的一些人到有大數(shù)據(jù)技能需求的公司來工作。
問:您如何看待知識圖譜?
Doug Cutting:在我看來知識圖譜、支持工程的方法沒有統(tǒng)計學方法那么成功。在八十年代,像知識工程就已經非常流行了,在我還當學生的時候知識工程就很流行。但是深度學習在當今取得的成功,主要依靠的是統(tǒng)計學的方法,也就是基于巨量數(shù)據(jù)的各種模型的訓練,而不是通過知識工程的方式,而且主要是在像圖像識別、語音識別以及分類任務的完成之上取得了很大的進展。
當然我也不是說像知識圖譜、知識工程的方式在人工智能當中永遠不會成功,只是在目前的現(xiàn)狀當中不如統(tǒng)計學的方法更加有效。對于深度學習進一步發(fā)展的挑戰(zhàn),我認為最大的一個挑戰(zhàn)就是深度學習的有用性、適用性、廣度到底有多大。目前在一些認識、識別任務的完成當中,深度學習非常有效,比方說在大量的噪音或者是干擾的因素當中進行清晰的識別、分類、標簽,做得非常好。但是有很多其他的任務,這樣的任務當中對形勢進行分析,并且做出決策,并不是完全依靠剛才說到的這種能力。
雖然目前人們對于深度學習能夠完成很多其他的任務是非常樂觀的,但是我希望這樣的樂觀不會是一種過度的樂觀。