Cloudera公司首席架構(gòu)師談Hadoop之變遷
譯文Doug Cutting是眾多獲得巨大成功的開源項目的創(chuàng)始人,其中包括Lucene以及Hadoop這樣的重量級成果。目前他在Cloudera公司擔(dān)任首席架構(gòu)師一職,同時也在Apache軟件基金會董事會任職。
在這一次的采訪中,他向我們解釋了開源開發(fā)機制為何更加強調(diào)技術(shù)常識而非開發(fā)信念,同時深度剖析了開源機制在企業(yè)環(huán)境下的應(yīng)用方式。此前他曾在All Things Open大會上作出過主題演講,因此我也向他問起Lucene的開源開發(fā)之路、他個人在Apache軟件基金會中所扮演的角色以及開源機制對他而言意味著什么。
您曾經(jīng)在GPL許可之下在SourceForge上發(fā)布Lucene,早在2000年時就對Lucene進行開源處理一定面臨著諸多不同于當(dāng)下的問題吧?
其實當(dāng)時的狀況與現(xiàn)在相比并沒有太多差別。學(xué)術(shù)界與研究界的從業(yè)者們早就開始了軟件開發(fā)成果的分享之旅,因此免費下載技術(shù)方案的概念或者開源許可并不算是什么新鮮事物。(我與GPL的首次邂逅是在1985年,當(dāng)時我在這套許可之下為GNU Emacs貢獻了一部分代碼。)要說差別,當(dāng)時使用的工具與當(dāng)下有所不同。我們那時候使用的是Concurrent Versions System (即并發(fā)版本系統(tǒng),簡稱CVS),因為當(dāng)時還不存在版本控制這類可用工具。我們并沒有使用錯誤追蹤機制,只是單純通過郵件列表來處理溝通工作,不過其基本流程還是一樣的。人們利用它來交流并協(xié)調(diào)自己在共享項目中的工作成果。
自從您最初創(chuàng)造的首個項目——Lucene——以來,您就一直將開源作為開發(fā)工作的基本原則。您當(dāng)下仍在堅持這些原則嗎,理由又是什么呢?
對我來說,開源開發(fā)機制的重點在于常識的積累而非對開放信念的強調(diào)。我希望自己的努力能夠為用戶帶來切實可行的軟件解決方案,也就是將實用性作為首要訴求。我喜歡與其他同伴一起完成這項任務(wù)。在這些基本前提確定下來之后,其它事情也就水到渠成了。我們必須要以敬意作為前提同其他參與者協(xié)同合作,否則根本不可能獲得理想的協(xié)作成果。同樣,要想構(gòu)建起一個能夠健康運作而且擁有長期協(xié)作關(guān)系的開源社區(qū),透明度與精英管理體系也是不可或缺的。從這個角度來看,開源開發(fā)與非軟件項目其實沒什么不同。就像在組織聚會之后的清理分工一樣,有些同志負(fù)責(zé)擦洗桌面、有些負(fù)責(zé)清潔碗筷、另一些則負(fù)責(zé)將椅子擺回原位。在這里我們并非上下級的關(guān)系,每個人都從屬于自己有能力完成的那部分工作體系——換言之,既要把房子打掃干凈、又不能因此破壞了彼此之間的朋友關(guān)系。
您是Apache軟件基金會的董事會成員之一。您能從這個角度講講自己所扮演的角色嗎?
從根本層面講,Apache董事會的作用在于監(jiān)督基金會旗下的各個項目,從而確保其各自擁有一套健康有序的社區(qū)體系。我們需要保證這些項目的實質(zhì)性控制權(quán)不會落到某個個人或者公司手中,而是真正讓每位參與者都能獲得應(yīng)有的尊重。目前的150多個Apache項目會定期向董事會提交季度報告,這意味著我們每個月大約需要審查50個項目的運作狀態(tài)。一般來講這項工作都能順利進行。當(dāng)然,我們偶爾也需要介入其中,為項目指明一個更為可行的發(fā)展方向。董事會還負(fù)責(zé)處理各種典型的組織管理工作,例如確保有人維持網(wǎng)站的正常運行、收集捐贈款項并及時納稅等等。
隨著越來越多企業(yè)開始在運營環(huán)境下使用開源方案,您認(rèn)為未來三到五年內(nèi)Hadoop與開源將分別呈現(xiàn)出怎樣的發(fā)展態(tài)勢?
我非常欣賞開源機制,因為它適合我個人作為開發(fā)人員的身份。它能讓很多用戶使用我所打造的軟件成果,這是一種非常寶貴的個人獎勵與工作肯定。此外,開源對于普通軟件用戶而言也頗具吸引力,因為他們能夠借此大大降低對于特定廠商的依賴性(也就是‘供應(yīng)商鎖定’)?,F(xiàn)在已經(jīng)有越來越多開發(fā)人員專注于為專有技術(shù)方案創(chuàng)造替代式開源成果。如果可以選擇,用戶更傾向于使用開源方案,因為這能夠有效擺脫鎖定效應(yīng)的負(fù)面影響。事實上,開源實施方案算是開了個好頭,而Hadoop生態(tài)系統(tǒng)則繼續(xù)跟進并完成接下來的深層工作。大家可能注意到了,開發(fā)人員往往會以當(dāng)前專有方案為基礎(chǔ)開發(fā)出替代性開源成果,但卻很少有人打算利用專有產(chǎn)品代替人們所喜愛的開源工具。我希望這種趨勢能夠一直保持下去。Hadoop生態(tài)系統(tǒng)的核心經(jīng)歷了諸多發(fā)展與變化,但其仍將堅持開源路線不動搖。雖然目前已經(jīng)有一些專有工具出現(xiàn)在這套堆棧之上,但從基礎(chǔ)層面看Hadoop的開源身份仍然可謂根紅苗正。
待辦事務(wù)團隊的建立給您帶來了怎樣的幫助?
我會與他們進行簡單交流,而且在我看來整個團隊就是一份郵件列表——只不過這部分成員的主要工作在于運行企業(yè)開源項目并探討與此相關(guān)的最佳實踐?;旧暇褪沁@些,他們的全部議程都以此為核心。許多企業(yè)都會發(fā)布一些開源成果并因此面臨常見的技術(shù)以及法務(wù)問題。他們希望在這方面找到可資合作的機會,或者至少給予勸解。
英文:http://opensource.com/business/14/10/interview-doug-cutting-cloudera