成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

分布式存儲 HDFS 與 GFS 的設計差異

云計算 分布式
我們知道 HDFS 最早是根據 GFS(Google File System)的論文概念模型來設計實現的。HDFS 參照了它所以大部分架構設計概念是類似的,比如 HDFS NameNode 相當于 GFS Master,HDFS DataNode 相當于 GFS chunkserver。

「后端分布式系列」前面關于 HDFS 的一些文章介紹了它的整體架構和一些關鍵部件的設計實現要點。

我們知道 HDFS 最早是根據 GFS(Google File System)的論文概念模型來設計實現的。

然后呢,我就去把 GFS 的原始論文找出來仔細看了遍,GFS 的整體架構圖如下:

 

分布式存儲-HDFS 與 GFS 的設計差異

HDFS 參照了它所以大部分架構設計概念是類似的,比如 HDFS NameNode 相當于 GFS Master,HDFS DataNode 相當于 GFS chunkserver。

但還有些細節不同的地方,所以本文主要分析下不同的地方。

寫入模型

HDFS 在考慮寫入模型時做了一個簡化,就是同一時刻只允許一個寫入者或追加者。

在這個模型下同一個文件同一個時刻只允許一個客戶端寫入或追加。

而 GFS 則允許同一時刻多個客戶端并發寫入或追加同一文件。

允許并發寫入帶來了更復雜的一致性問題。

多個客戶端并發寫入時,它們之間的順序是無法保證的,同一個客戶端連續追加成功的多個記錄也可能被打斷。

這意味著一個客戶端在連續寫入文件數據時,它的數據最終在文件中的分布可能是不連續的。

所謂一致性就是,對同一個文件,所有的客戶端看到的數據是一致的,不管它們是從哪個副本讀取的。

如果允許多個客戶端同時寫一個文件,怎么保證寫入數據在多個副本間一致?

我們前面講 HDFS 時它只允許一個寫入者按流水線方式寫入多個副本,寫入順序一致,寫入完成后數據將保持最終一致。

而對多個客戶端而言,就必須讓所有同時寫入的客戶端按同一種流水線方式去寫入,才可能保證寫入順序一致。

這個寫入流程我們下一節詳細分析。

寫入流程

GFS 使用租約機制來保障在跨多個副本的數據寫入中保持順序一致性。

GFS Master 將 chunk 租約發放給其中一個副本,這個副本我們就稱為主副本,其他副本稱為次副本。

由主副本來確定一個針對該 chunk 的寫入順序,次副本則遵守這個順序,這樣就保障了全局順序一致性。

chunk 租約機制的設計主要是為了減輕 Master 的負擔,由主副本所在的 chunkserver 來承擔流水線順序的安排。

如下圖,我們詳細描述下這個過程。

 

  1. 客戶端請求 Master 詢問哪個 chunkserver 持有租約以及其他副本的位置。如果沒有 chunkserver 持有租約,說明該 chunk 最近沒有寫操作。Master 則選擇將租約授權給其中一臺 chunkserver。
  2. Master 返回客戶端主副本和次副本的位置信息。客戶端緩存這些信息以備將來使用。客戶端以后不再需要聯系 Master,除非主副本所在 chunkserver 不可用或返回租約過期了。
  3. 客戶端選擇***的網絡順序推送數據,chunkserver 將數據先緩存在內部的 LRU 緩存中。GFS 中采用數據流和控制流分離的方法,從而能夠基于網絡拓撲結構更好地調度數據流的傳輸。
  4. 一旦所有的副本確認收到了數據,客戶端將發送一個寫請求控制命令到主副本。由主副本分配連續的序列號來確定最終的寫入順序。
  5. 主副本轉發寫請求到所有次副本,次副本按主副本安排的順序執行寫入操作。
  6. 次副本寫完后向主副本應答確認操作完成。
  7. ***主副本應答客戶端,若任意副本寫入過程中出現錯誤,將報告給客戶端,由客戶端發起重試。

GFS 和 HDFS 的寫入流程都采用了流水線方式,但 HDFS 沒有分離數據流和控制流。

HDFS 的數據流水線寫入在網絡上的傳輸順序與最終寫入文件的順序一致。

而 GFS 數據在網絡上的傳輸順序與最終寫入文件的順序可能不一致。

GFS 在支持并發寫入和優化網絡數據傳輸方面做出了***的折衷。

總結

GFS 的論文發表于 2003 年,后來大部分的分布式文件系統設計實現或多或少都參考了 GFS 的設計思路。

而 HDFS 算是開源分布式文件系統中最完整實現了 GFS 論文中的概念模型。

但 HDFS 依然簡化了 GFS 中關于并發寫的思路,本文就兩者的寫入模型和過程做了一些對比說明,并希望引發一些思考。

博文出處:http://blog.csdn.net/mindfloating/article/details/49103611

責任編輯:Ophira 來源: 個人博客
相關推薦

2020-02-20 11:56:38

容器云分布式存儲哪種更好

2013-01-07 10:29:31

大數據

2019-06-20 08:59:51

HDFSCEPHGFS

2018-10-29 12:51:35

分布式存儲元數據

2018-10-16 14:26:22

分布式塊存儲引擎

2013-06-18 14:33:13

HDFS分布式文件系統

2017-10-27 08:40:44

分布式存儲剪枝系統

2018-11-20 09:05:11

傳統存儲分布式存儲

2024-07-29 09:57:47

2018-06-08 08:46:14

RaftPaxos系統

2012-12-28 17:31:06

2024-08-12 16:20:27

2015-05-12 13:03:54

開源分布式存儲HDFS

2015-05-13 09:34:46

分布式存儲元數據設計公有云

2012-08-31 16:04:11

HDFS分布式文件系統

2013-06-18 14:00:59

HDFS分布式文件系統

2023-10-08 10:49:16

搜索系統分布式系統

2023-05-05 06:13:51

分布式多級緩存系統

2018-02-22 08:42:04

分布式存儲安全

2013-06-18 14:13:43

HDFS分布式文件系統
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 国产精品国产精品国产专区不片 | 久久精品99久久 | 国产精品美女 | 嫩草视频入口 | 性一区 | 国产精品久久久久久久久久软件 | www.久| 日韩欧美视频免费在线观看 | 亚洲欧洲视频 | 成人av在线播放 | 国产大学生情侣呻吟视频 | 一本色道久久综合亚洲精品高清 | 日日干日日操 | 成人免费精品视频 | 久久精品高清视频 | 国产亚洲一区二区三区在线观看 | 天天操天天摸天天干 | 亚洲自拍偷拍欧美 | 91在线一区 | 亚洲国产精品一区二区第一页 | 美日韩免费视频 | 成人国产精品久久 | 一级片毛片| 国产精品亚洲一区二区三区在线观看 | 中文字幕二区 | 91国在线 | 岛国午夜 | 中文字幕在线中文 | 午夜理伦三级理论三级在线观看 | 国产精品视频免费观看 | 美女视频黄色片 | 亚洲国产精品一区二区www | 91精品国产综合久久久久久 | 91高清在线观看 | 精品国产一区二区在线 | 99pao成人国产永久免费视频 | 国产一区二区免费 | 超碰av人人 | 国产区在线观看 | 国产成人精品区一区二区不卡 | 国产精品久久久久久二区 |