Google的這三篇論文分別介紹了Bigtable、MapReduce,GFS這三個工具。他們都有具有分布式系統,即將一個作業拆分并將其部署在不同的多個服務器上。一個典型的網路可能包括多個供多用戶訪問的服務器。另外,對等特性允許一些系統扮演客戶機和服務器的雙重角色。
第一篇講的是GFS(谷歌分布式檔案系統)。GFS是一個面向大規模資料密集型應用的、可伸縮的分布式檔案系統。GFS 雖然運行在廉價的普遍硬體設備上,但是它依然了提供災難冗余的能力,為大量客戶機提供了高性能的服務。GFS基于普通的分布式檔案系統,逐步發展延伸,基本上完全滿足了用戶對存盤的需求。GFS作為一個存盤平臺已經被廣泛應用在Google內部,存盤我們的服務產生的資料,同時還用于那些需要大規模資料集的研究和開發作業。對于計算機來說某一些組件失效是常態事件。因為訪問的人數太多,資料互動量大,可能發生某些組件無法作業的狀況,比如程式的bug。所以對于計算機來說持續的偵察,錯誤偵測,災難冗余以及自動恢復的機制必須集成在GFS中。GFS提供的介面函式,使檔案以分層目錄的形式組織,用路徑名來標識,支持常用的操作比如創建檔案。GFS額外提供了快照和記錄追加的操作。和其他的大型分布式檔案相比,GFS是把檔案分部存盤到不同的服務器上,提高了整體性能以及災難冗余的能力。GFS是"一個面向大規模資料密集型應用的、可伸縮的分布式檔案系統"。GFS與傳統分布式檔案系統比較明顯的差異是它是設計以用于大規模資料處理,它不需要很強大的硬體支持就可以提供高性能的服務。GFS為了保證檔案的可靠性采用了冗余存盤的方法,每份資料在系統中保存3個以上的備份;為了保證資料的一致性,對于資料的所有修改需要在所有的備份上進行,并用版本號的方式來確保所有備份處于一致的狀態。GFS 成功的實作了我們對存盤的需求,在 Google 內部,無論是作為研究和開發的存盤平臺,還是作為生產系統的資料處理平臺,都得到了廣泛的應用。我認為今后越來越多的檔案系統都將建立在GFS的基礎之上。為什么這么說呢?首先,GFS運行于廉價的普通硬體上,提供容錯功能,這會使得GFS被大眾廣泛使用,不需要高價的硬體就可以為用戶提供高效的服務,這種特性會得到大眾的支持。
第二篇論文講的是Google Bigtable
它是一個分布式的結構化資料存盤系統,被用來處理海量資料。例如Google里面的web索引、Google earth、Google finance等等專案都在使用Bigtable來存盤資料,論文描述了Bigtable提供的簡單的資料模型,利用模型用戶可以動態的控制資料的分布和格式。Bigtable已在60個Google的產品和專案上的到了應用。
最后一篇講是Google MapReduce。MapReduce是一個編程模型,也是一個處理和生成超大資料集的演算法模型的相關實作。MapReduce在 Google 內部也已經成功應用于多個領域。程式員使用MapReduce進行作業時可以充分利用各個計算機資源,通過MapReduce可以對分布式系統各個終端機器進行管理,讓資源盡量最大程度的利用。MapReduce可以使很多復雜的問題的得到簡單的解決。
Google通
過使用大量的chunkserver消除單點故障,從而減少客戶端與master的
互動。MapReduce和Big Table都有一個共同點,那就是它們都采用了分布式
計算,將任務分配,同時進行,大大地提升計算速度。
這三篇論文博大精深,看得人暈暈的,現在的我還是看不太懂。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/153124.html
標籤:非技術區
下一篇:Rich feature hierarchies for accurate oject detection and semantic segmentation-RCNN詳細解讀
