新聞中心
在學習Hadoop的過程中,你可能會遇到MapReduce和Hadoop的問題,本節(jié)就向大家介紹一下,另外看一下專家如何看待MapReduce和Hadoop未來發(fā)展情況,歡迎大家一起關(guān)注。

鄄城ssl適用于網(wǎng)站、小程序/APP、API接口等需要進行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18980820575(備注:SSL證書合作)期待與您的合作!
MapReduce和Hadoop
Hadoop
Hadoop是一個開源的分布式計算平臺,它主要由MapReduce的算法執(zhí)行和一個分布式的文件系統(tǒng)等兩部分組成。InfoQ曾經(jīng)刊登過一篇JeremyZawodny寫的有關(guān)Hadoop速度提升的綜述性文章。這次InfoQ的資深Java編輯ScottDelap和Hadoop項目負責人DougCutting進行了一次專訪。在這次InfoQ的專訪中,Cutting論述了Hadoop是如何在Yahoo中被使用的,以及Hadoop發(fā)展中遇到的挑戰(zhàn)和Hadoop項目未來的發(fā)展方向。
ScottDelap(SD):Hadoop已經(jīng)作為正式產(chǎn)品服務(wù)于Yahoo的某些功能了嗎?如果還沒有,有什么計劃讓Hadoop從一個實驗性的產(chǎn)品向核心基礎(chǔ)組件遷移?
DougCutting(DC):Yahoo定期在搜索業(yè)務(wù)上使用Hadoop來提高其產(chǎn)品和服務(wù),如排名功能和目標廣告等。除此之外,也有一些直接使用Hadoop進行數(shù)據(jù)生成的案例。Hadoop的長期目標是提供***的分布式計算工具,也是對下一代業(yè)務(wù)(如搜索結(jié)果分析等)提供支持的Web擴展(web-scale)服務(wù)。
SD:Yahoo負責Hadoop項目的團隊的規(guī)模有多大?除了Yahoo內(nèi)部人員,其余還有多少活躍的代碼貢獻者?
DC:Yahoo有一個專項小組直接負責Hadoop的開發(fā)工作,而Apache開源項目的活躍貢獻者一般都有自己的***職業(yè)。即使如此,仍然有一些非Yahoo工作人員每月、每周甚至每天為Hadoop做出自己的貢獻。
SD:相比Google,Yahoo堅持在可擴展的基礎(chǔ)架構(gòu)上采用不同途徑。雖然Google已經(jīng)發(fā)布了眾多技術(shù)方面的論文,但其對普通大眾意義并不十分明顯。而為什么你覺得開源是正確的一個方向?
DC:開源項目得到***的運行需要滿足兩個條件:***,每個人對項目所能做的事有共同的認識。第二,有一套易理解的文檔解決方案。由于基礎(chǔ)架構(gòu)軟件在眾多領(lǐng)域有廣泛應(yīng)用,所以此類開源軟件發(fā)展的格外好。而Yahoo就在使用并支撐FreeBsd、Linux、Apache、PHP和MySQL等此類基礎(chǔ)架構(gòu)軟件。讓任何人都可以利用Hadoop來幫助Yahoo改善現(xiàn)狀并提高目前建立大型分布式系統(tǒng)的水平。源代碼僅僅只是難題的一小部分,除此之外,一個組織還需要有個非常強大的工程師團隊來解決重大難題并使其付諸實踐。有正確的發(fā)布和管理基礎(chǔ)架構(gòu)的能力也顯得非常的重要。目前幾乎沒有哪家公司能擁有所有這些必需的資源。所以,軟件工程師們都愿意為開源項目工作,他們能在巨大的社區(qū)中遇到許多志同道合的朋友,學到一些被共享的技巧并應(yīng)用于今后的其他項目中。這樣優(yōu)秀的社區(qū)環(huán)境很容易培養(yǎng)出許多新的杰出工程師。Yahoo和Hadoop社區(qū)都受益于這種合作的機制,更加懂得大規(guī)模的分布式計算所需要的東西,并且把我們專家的意見和技術(shù)都共享出來建立一個人人都能使用和修改的解決方案.
SD:回到技術(shù)的本身,近年隨著Hadoop的不斷發(fā)展,你覺得影響其速度和穩(wěn)定性的要素是什么?我發(fā)現(xiàn)現(xiàn)在500條記錄的排序基準比去年快上了20倍,這是由于某個部分巨大的提升所至還是由多個部分的共同優(yōu)化所帶來的結(jié)果?
DC:在處理Web擴展服類軟件過程中,隨著使用此解決方案的其它公司和組織的不斷增加,Yahoo發(fā)現(xiàn)它們都獲得相似的性能。Yahoo決定將其開源,而非以私有軟件的形式繼續(xù)發(fā)展。所以Yahoo雇傭了我來帶領(lǐng)這個項目。至今,Yahoo已經(jīng)貢獻了絕大部分代碼。
至于速度的提升,是過去幾年努力成果的一個總和,并且已經(jīng)經(jīng)過了反復的試驗。在給定規(guī)模的服務(wù)器集群中,我們能讓系統(tǒng)非常平穩(wěn)地運行,然后試驗在兩倍于這樣規(guī)模的服務(wù)器集群中運行會發(fā)生什么情況。我們的目標是讓性能隨集群規(guī)模增長成線性增加。我們從這個過程中不斷學習,并且再次增大集群的規(guī)模。每增大一次集群的規(guī)模,更多數(shù)量和更多種類的錯誤也將相應(yīng)增加,因此穩(wěn)定性將是個重大問題。
每一次這樣做,我們都能明白哪些東西是可以達到的,哪些經(jīng)驗可以貢獻給開源的網(wǎng)格計算公共知識庫的。隨著服務(wù)器集群規(guī)模的增大,各種新的故障不斷產(chǎn)生,罕見的錯誤變?yōu)槌R姷腻e誤,這些情況都是需要我們解決的。而這個過程所學到的又將影響到我們下一次這樣反復的試驗。
SD:去年起Hadoop就已經(jīng)可以在AmazonEC2上運行了。這將使開發(fā)者可以快速搭建起他們自己的服務(wù)器集群。那么管理這樣一個集群、HDFS以及MapReduce的處理還有什么額外的工作需要做嗎?
DC:Yahoo有一個名為HOD(HadooponDemand)的項目,它可以讓Mapreduce運行在很普通的機器上。這還是一個正處于建設(shè)過程中的開源項目。由于運行一個大型的集群是非常復雜和受資源限制的事,所以AmazonEC2對于普通民眾來說,是一個非常不錯的接觸Hadoop的平臺。
SD:在Hadoop功能上你如何客觀地和Google已發(fā)布的產(chǎn)品進行比較?在從程序單元到數(shù)據(jù)單元的優(yōu)化解決過程中,有什么新特性嗎?
DC:近十年來,很多大型公司(包括Yahoo)和一些理論研究機構(gòu)都在對大規(guī)模分布式計算軟件進行開發(fā)和研究。而最近隨著經(jīng)濟計算在消費市場的顯現(xiàn),這種開發(fā)和研究的興趣更加高漲。與Google不同,Yahoo采取了開發(fā)完全開源的Hadoop,讓任何人都可以免費使用和修改這個軟件。Hadoop的目標已經(jīng)延伸到超越目前現(xiàn)存的任何技術(shù)復制品的地步。我們將致力于把Hadoop建立成一個對任何人都有用的系統(tǒng)。我們已經(jīng)實現(xiàn)了大多數(shù)Google已經(jīng)發(fā)布的東西,而且還加上很多其它沒有提及到的。Yahoo在這個項目中將扮演***的角色,因為它的目標和我們的需求是非常吻合的,并且我們明白共享這個技術(shù)給世界的意義。
SD:***的官方版本是0.13.1。在未來會有什么重大的新特性嗎?1.0版將完成什么樣的一些工作。
DC:0.14.0版就將有多達218處的變化。其中對系統(tǒng)***的改變是我們直接改良了數(shù)據(jù)的完整性。這是一個對用戶來說看不見的變化,但是它對于整個系統(tǒng)的未來發(fā)展來說是很有效的。由于數(shù)據(jù)和集群的規(guī)模,無論是內(nèi)存還是磁盤都很頻繁地出現(xiàn)問題,這將是個危機。我們還添加了改變文件時間的功能,還有一些MapReduce的C++API函數(shù),還增加了主機的一些其它特性,以及bug的定位和修復。
Hadoop0.15.0也正在成型,計劃會有88處修改。這個版本會增加對文件系統(tǒng)的認證和授權(quán),讓同一服務(wù)器集群之間的信息訪問變得更加安全。我們還計劃修訂大量的Mapreduce的API。0.15.0將是一個很有難度的版本,因為它需要用戶對他們的應(yīng)用做出修改,我們希望能一步到位。我們還希望0.15將是1.0以前的***一個版本。在1.0以后我們就將會非常保守了,不會再突然做出巨大的改變。我們同樣也會非常關(guān)注向后兼容的問題,對于1.0版本來說,這將顯得更加的重要。任何為1.0版編寫的代碼也將繼續(xù)可運行在1.X以后的版本。所以我們需要保證我們現(xiàn)有的API能輕松地擴展到以后的版本。我們將試著在0.15版本就將這些落實。
文章名稱:Hadoop的未來如何,雅虎架構(gòu)師詳談
文章位置:http://www.5511xx.com/article/cdgdgos.html


咨詢
建站咨詢
