有消息表明,Google在新型網(wǎng)絡(luò)內(nèi)容索引系統(tǒng)——Caffeine中,將放棄以MapReduce為基礎(chǔ)架構(gòu)的分布式計算平臺。
據(jù)Google高級主管Eisar Lipkovitz表示,在Caffeine中,Google的后端索引系統(tǒng)將從MapReduce上移除,并向Google新建的分布式數(shù)據(jù)庫平臺——BigTable上進(jìn)行遷移。他表示,谷歌將于下月在USENIX研討會上提交一項新的文件討論系統(tǒng)。
據(jù)了解,從去年開始,Google就已經(jīng)啟動了代號為“Colossus”的研發(fā)計劃,主要內(nèi)容圍繞新的分布式文件系統(tǒng)——Caffeine進(jìn)行研發(fā)。Caffeine將創(chuàng)建一個新的數(shù)據(jù)庫的編程模型,而這也意味著Google必須在BigTable上重建整個索引系統(tǒng)。
MapReduce完成歷史使命
必須看到的是,在Google的直接競爭對手——Yahoo、Facebook們對MapReduce飽含熱情進(jìn)行研發(fā)投入的同時,Google卻宣布放棄MapReduce,不得不佩服Google的勇氣。
實際上,早在Caffeine建立之前,Google就建立了基于MapReduce的搜索索引系統(tǒng)。從本質(zhì)上而言,這個索引是由序列的批處理操作組成的。它通過把對數(shù)據(jù)集的大規(guī)模操作分發(fā)給網(wǎng)絡(luò)上的每個節(jié)點進(jìn)行運算,而每個節(jié)點會周期性的把完成的工作和狀態(tài)的更新報告回主計算。
Lipkovitz首先談到了Google基于MapReduce文件索引系統(tǒng)處理方式?!拔覀儽仨毭鎸σ粋€非常龐大的數(shù)據(jù)系統(tǒng),在這之前,我們需要等待8個小時的計算時間我們才能夠得到計算的全結(jié)果,然后我們就會把它發(fā)布到索引系統(tǒng)中去。過去我們一直在不停地重復(fù)這個耗時耗力的工作?!?/P>
Lipkovitz進(jìn)一步解釋了Google放棄MapReduce的原因,“MapReduce僅僅是一個批處理操作方式,”Lipkovitz解釋說,“一般來說你不能啟動下一階段的命令操作,直到你完成第一項操作。”
可以看到,Google之所以放棄MapReduce,是因為它并不能為谷歌提供它所想要的索引速度,特別是隨著實時檢索時代的到來,谷歌需要的是在幾秒內(nèi)刷新索引內(nèi)容,而非8小時。
實際上,在過去的幾年里,針對MapReduce的技術(shù)討論可謂是褒貶不一。
麻省理工學(xué)院的數(shù)據(jù)庫專家Mike Stonebraker認(rèn)為,MapReduce的計算方法對于實時計算來說是很不合適的,是過時的。
“MapReduce就像是游擊隊員而非正規(guī)軍”,Lipkovitz表示,“如果你想基于Mapreduces建立分布式文件處理系統(tǒng),如果你想實現(xiàn)更多的操作命令,那么必然會有錯誤發(fā)生。況且你并不能縮短處理的時間,這是Google選擇放棄Mapreduces的原因?!?/P>
Caffeine的處理原理
早前在谷歌的一篇博文中,谷歌提到了Caffeine的處理原理,“與我們的老索引技術(shù)相比,Caffeine能夠提供的新網(wǎng)絡(luò)搜索結(jié)果提高50%,最大程度收集我們提供的網(wǎng)絡(luò)內(nèi)容。無論是新聞、還是博客或論壇,一經(jīng)發(fā)布,用戶都能發(fā)現(xiàn)相關(guān)內(nèi)容的鏈接,索引速度較以前有大幅提高。”
據(jù)了解,Google從2009年8月就開始測試Caffeine。當(dāng)時,Google曾表示新索引技術(shù)將是自2006年以來的重大變革。速度和綜合性是新技術(shù)關(guān)注的目標(biāo)。
Google曾表示,新系統(tǒng)需與網(wǎng)絡(luò)內(nèi)容的爆炸性增長保持同步,過去兩年中,博客、視頻和社交媒體技術(shù)都蜂擁至網(wǎng)絡(luò)。借助Caffeine,Google將加快索引次數(shù)的更新,對一小部分網(wǎng)絡(luò)進(jìn)行消化,而不是對整個網(wǎng)絡(luò)重新索引并更新索引內(nèi)容。
Google軟件工程師卡莉·格蘭姆斯(Carrie Grimes)在博客中稱:“我們將把Caffeine列為未來考慮重點,不僅使之索引更多新結(jié)果,還要將之打造為適應(yīng)網(wǎng)絡(luò)消息增長的速度更快、理解力更高的搜索引擎,為用戶提供相關(guān)度更高的搜索結(jié)果。”
關(guān)于“Colossus”計劃
“我們需要一個新的計算框架”,Lipkovitz說,這使工程師能夠在BigTable上編寫代碼,而該系統(tǒng)是基于“Colossus”建立的分布式存儲平臺——也被稱為GFS2。
“原有的基于MapReduce的文件系統(tǒng),不能達(dá)到Google所需要的計算規(guī)模。”
據(jù)了解,“Colossus”是專門設(shè)計BigTable的開發(fā)計劃,基于這個原因,它并不針對傳統(tǒng)的分布式存儲平臺應(yīng)用。換句話說,它是專為建立新的Caffeine搜索索引系統(tǒng)而用的,雖然它可能會在Google的其它內(nèi)容所服務(wù),但其并未跨越整個谷歌的基礎(chǔ)設(shè)施系統(tǒng)。
微信關(guān)注公眾號“cncompute_com ”,為您奉上最新最熱的計算頭條資訊,干貨滿滿。