gfs分為:client(客戶端)、master(主伺服器)和chunkserver(資料塊伺服器)
client:gfs提供給應用程式的訪問介面。
master:gfs的管理節點,儲存系統的元資料,負責整個檔案系統的管理,是gfs檔案系統中的「大腦」。
chunk server 負責具體的儲存工作。
客戶端訪問gfs時,首先訪問master節點,獲取與之進行互動的chunk server資訊,然後直接訪問這些chunk server,完成資料訪問工作。實現了控制流和資料流的分離。client與master之間只有控制流,而無資料流,極大地降低了master的負載。client與chunk server之間直接傳輸資料流,由於檔案分成多個chunk分布式儲存,client可以同時訪問多個chunk server,從而使得整個系統的i/o高度並行,系統整體效能得到提高。
1. 採用中心伺服器模式
控制和儲存分離,使得增加新的chunk server容易實現,master掌握整個系統內chunkserver的情況,實現系統範圍內資料儲存的負載均衡。中心伺服器缺點是極易成為整個系統的瓶頸。gfs採用多種機制來避免master成為系統效能和可靠性上的瓶頸,如盡量控制元資料的規模、對master進行遠端備份、控制資訊和資料分流等。
2. 不快取資料
客戶端大部分是流式順序讀寫,並不存在大量的重複讀寫,快取這些資料對提供系統整體效能的作用不大,由於gfs的資料在chunk server上以檔案的形式儲存,如果某塊資料讀取頻繁,本地的檔案系統自然會將其快取。但是對於儲存在master中的元資料,gfs採用了快取策略,因為master需要頻繁操作元資料,儲存元資料到記憶體可以提高操作的效率。另一方面,採用相應的壓縮機制降低儲存空間,提高記憶體利用率。
3.在使用者態下實現
4.只提供專用介面
1.master容錯
master上儲存了gfs檔案系統的三種元資料:命名空間(整個檔案系統的目錄結構)、chunk與檔名的對映表、chunk副本的位置資訊(每乙個chunk預設有三個副本)。
前兩種元資料gfs通過操作日誌來提供容錯功能,第三種元資料資訊則直接儲存在各個chunk server上,當master啟動或chunkserver向master註冊時自動生成。為了防止master徹底宕機的情況,gfs還提供了master遠端實時備份。
2.chunkserver容錯
gfs採用副本的方式實現chunk server的容錯,對於每乙個chunk,必須將所有的副本全部寫入成功,才視為成功寫入。chunk的預設大小是64mb,每乙個chunk以block為單位進行劃分,大小為64kb,每乙個block對應乙個32bit的校驗和。當讀取乙個chunk副本時,chunkserver會將讀取的資料和校驗和進行比較,如果不匹配,就會返回錯誤,使client選擇其他chunk server上的副本。
ACA學習筆記(雲計算)
阿里的雲計算aca認證是面向使用阿里雲基礎產品的專業技術認證,主要涉及阿里雲的計算 儲存 網路 安全類的核心產品,是對學員掌握阿里雲主要產品技術技能水平的全面檢驗和能力認證,主要面向學生群體及開發者,也可以做為運維人員的入門證書 說白了其實是對阿里雲平台的幾個基礎服務的初步認識。因為aca只是阿里雲...
雲計算學習筆記
1 通俗的理解是,雲 是儲存於網際網路伺服器集群上的資源,它包括硬體資源 伺服器 儲存器 cpu 等 和軟體資源 應用軟體 整合開發環境等 本地計算機只需要通過網際網路傳送乙個需求資訊,遠端就會有成千上萬的計算機為使用者提供需要的資源並將結果返回到 本地計算機 2 在雲計算環境下,由於使用者直接面對...
雲計算相關資源
1.openstack wiki openstack 安裝與除錯 2.amazon nc2 3.python語言學習 python for android 安裝手冊.pdf 4.cloudera 是apache hadoop的乙個發行版本 gaeazure 中國移動big cloud平台 ibm藍雲...