3.6 GFS

数据划分

1. 知识点论述
「3.6 GFS」是《分布式计算系统》数据划分部分的核心知识点。解决数据放在哪里、如何定位与扩容时如何少搬家的问题。本知识点首先把握:角色:客户端、Master、Chunk Server。文件切成块,块有多副本。学习时请把它放回整门课主线——把独立计算机组织成对用户像一台机器的系统,并用通信、数据放置、复制、容错与调度把这件事做可靠。
2. 视频教程

解读 Google 分布式文件系统 GFS

3. 知识点详解

下面围绕本知识点展开要点说明,建议结合上方视频边看边对照。

  1. 角色:客户端、Master、Chunk Server。文件切成块,块有多副本。
  2. Master 保存文件名到块、块到服务器的元数据,不存用户数据本身。
  3. 读:客户端向 Master 要块位置,再选近端 Chunk Server 读取;失败则试其他副本。
  4. 写:租约指定一段时间内的主副本,主副本排定写顺序,副本按该顺序落地。
  5. 一致性:并发写可能 consistent but undefined,副本字节相同,但不是任何一次客户端写入的完整结果。
学习建议:先抓住定义与问题,再理解机制步骤,最后对照应用场景思考“何时用、何时不用、代价是什么”。
4. 应用场景
  • 大规模日志、训练集、备份文件的分布式存放。
  • 对象存储设计可对照 Master/Chunk 角色划分。
  • 理解租约写顺序对并发写结果的影响。