Google後Hadoop時代的新“三駕馬車”——Caffeine、Pregel、Dremel

Google後Hadoop時代的新“三駕馬車”——Caffeine、Pregel、Dremel

發表於2012-08-21 09:29| 12341次閱讀| 來源wired.com| 12 條評論| 作者CADE METZEMAIL
摘要:Google在2003年到2004年公佈了關於GFS、MapReduce和BigTable三篇技術論文,這也成爲後來雲計算髮展的重要基石,如今Google在後Hadoop時代的新“三駕馬車”——Caffeine、Pregel、Dremel再一次影響着全球大數據技術的發展潮流。

       Mike Olson是Hadoop運動背後的主要推動者,但這還遠遠不夠,目前Google內部使用的大數據軟件Dremel使大數據處理起來更加智能。

       Mike Olson目前任職於世界上最熱的軟件專業公司——Cloudera(硅谷的創業企業),並擔任Cloudera的首席執行官。Cloudera圍繞開源軟件平臺Hadoop發展自身的業務,開源軟件平臺Hadoop已經使得Google變身網絡上最主導的力量。

        預計到2016年Hadoop將會推動軟件市場,並創造8.13億美元的價值。不過Mike Olson表示這已經是老新聞了。

        Hadoop的火爆要得益於Google在2003年底和2004年公佈的兩篇研究論文,其中一份描述了GFS(Google File System),GFS是一個可擴展的大型數據密集型應用的分佈式文件系統,該文件系統可在廉價的硬件上運行,並具有可靠的容錯能力,該文件系統可爲用戶提供極高的計算性能,而同時具備最小的硬件投資和運營成本。

另外一篇則描述了MapReduce,MapReduce是一種處理大型及超大型數據集並生成相關執行的編程模型。其主要思想是從函數式編程語言裏借來的,同時也包含了從矢量編程語言裏借來的特性。基於MapReduce編寫的程序是在成千上萬的普通PC機上被並行分佈式自動執行的。8年後,Hadoop已經被廣泛使用在網絡上,並涉及數據分析和各類數學運算任務。但Google卻提出更好的技術。

       在2009年,網絡巨頭開始使用新的技術取代GFS和MapReduce。Mike Olson表示“這些技術代表未來的趨勢。如果你想知道大規模、高性能的數據處理基礎設施的未來趨勢如何,我建議你看看Google即將推出的研究論文”。

       自Hadoop興起以來,Google已經發布了三篇研究論文,主要闡述了基礎設施如何支持龐大網絡操作。其中一份詳細描述了Caffeine,Caffeine主要爲Google網絡搜索引擎提供支持。

       在Google採用Caffeine之前,Google使用MapReduce和分佈式文件系統(如GFS)來構建搜索索引(從已知的Web頁面索引中)。在2010年,Google搜索引擎發生了重大變革。Google將其搜索遷移到新的軟件平臺,他們稱之爲“Caffeine”。Caffeine是Google出自自身的設計,Caffeine使Google能夠更迅速的添加新的鏈接(包括新聞報道以及博客文章等)到自身大規模的網站索引系統中,相比於以往的系統,新系統可提供“50%新生”的搜索結果。

       在本質上Caffeine丟棄MapReduce轉而將索引放置在由Google開發的分佈式數據庫BigTable上。作爲Google繼GFS和MapReduce兩項創新後的又一項創新,其在設計用來針對海量數據處理情形下的管理結構型數據方面具有巨大的優勢。這種海量數據可以定義爲在雲計算平臺中數千臺普通服務器上PB級的數據。

       另一篇介紹了Pregel,Pregel主要繪製大量網上信息之間關係的“圖形數據庫”。而最吸引人的一篇論文要屬被稱之爲Dremel的工具。 

點擊查看大圖

        專注於大型數據中心規模軟件平臺的加利福尼亞伯克利分校計算機科學教授Armando Fox表示“如果你事先告訴我Dremel可以做什麼,那麼我不會相信你可以把它開發出來”。

        Dremel是一種分析信息的方式,Dremel可跨越數千臺服務器運行,允許“查詢”大量的數據,如Web文檔集合或數字圖書館,甚至是數以百萬計的垃圾信息的數據描述。這類似於使用結構化查詢語言分析傳統關係數據庫,這種方式在過去幾十年被廣泛使用在世界各地。

        Google基礎設施負責人Urs Hölzle表示“使用Dremel就好比你擁有類似SQL的語言,並可以無需任何編程的情況下只需將請求輸入命令行中就可以很容易的制定即席查詢和重複查詢”。

        區別在於Dremel可以在極快的速度處理網絡規模的海量數據。據Google提交的文件顯示你可以在幾秒的時間處理PB級的數據查詢。

         目前Hadoop已經提供了在龐大數據集上運行類似SQL的查詢工具(如Hadoop生態圈中的項目Pig和Hive)。但其會有一些延遲,例如當部署任務時,可能需要幾分鐘的時間或者幾小時的時間來執行任務,雖然可以得到查詢結果,但相比於Pig和Hive,Dremel幾乎是瞬時的。

          Holzle表示Dremel可移執行多種查詢,而同樣的任務如果使用MapReduce來執行通差需要一個工作序列,但執行時間確實前者的一小部分。Dremel可在大約3秒鐘時間裏處理1PB的數據查詢請求。

          Armando Fox表示Dremel是史無前例的,Hadoop作爲大數據運動的核心一直致力構建分析海量數據工具的生態圈。但就目前的大數據工具往往存在一個缺陷,與傳統的數據分析或商業智能工具相比,Hadoop在數據分析的速度和精度上還無法相比。但目前Dremel做到了魚和熊掌兼得。

          Dremel做到了“不可能完成的任務”,Dremel設法將海量的數據分析於對數據的深入挖掘進行有機的結合。Dremel所處理的數據規模的速度實在令人印象深刻,你可以舒適的探索數據。在Dremel出現之前還沒有類似的系統可以做的像Dremel這樣出色。

          據Google提交的文件來看,Google從2006年就在內部使用這個平臺,有“數千名”的Google員工使用Dremel來分析一切,從Google各種服務的軟件崩潰報告到Google數據中心內的磁盤行爲。這種工具有時會在數十臺服務器上使用,有時則會在數以千計的服務器上使用。

           Mike Olson表示儘管Hadoop取得的成功不容置疑,但構建Hadoop生態圈的公司和企業顯然慢了,而同樣的情況也出現在Dremel上,Google在2010年公佈了Dremel的相關文檔,但這個平臺還沒有被第三方企業充分利用起來,目前以色列的工程團隊正在建設被稱爲OpenDremel的克隆平臺。David Gruzman表示OpenDremel目前僅僅還在開始階段,還需要很長時間進行完善。

           換句話說即使你不是Google的工程師你同樣可以使用Dremel。Google現在提供的BigQuery的服務就是基於Dremel。用戶可通過在線API來使用這個平臺。用戶可以把數據上傳到Google,並在Google基礎設施中運行用戶的查詢服務。而這只是Google越來越多雲服務的一部分。

           早期用戶通過Google App Engine構建、運行、並將應用託管在Google基礎設施平臺之上。而現今Google提供了包括BigQuery和Google Compute Engine等服務和基礎設施,這些服務和基礎設施可使用戶瞬時接入虛擬服務器。

            全球很多技術都落後於Google,而Google自身的技術也正在影響全球。(李智/編輯)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章