3.6 GFS
数据划分
1. 知识点论述
「3.6 GFS」是《分布式计算系统》数据划分部分的核心知识点。解决数据放在哪里、如何定位与扩容时如何少搬家的问题。本知识点首先把握:角色:客户端、Master、Chunk Server。文件切成块,块有多副本。学习时请把它放回整门课主线——把独立计算机组织成对用户像一台机器的系统,并用通信、数据放置、复制、容错与调度把这件事做可靠。
2. 视频教程
解读 Google 分布式文件系统 GFS
3. 知识点详解
下面围绕本知识点展开要点说明,建议结合上方视频边看边对照。
- 角色:客户端、Master、Chunk Server。文件切成块,块有多副本。
- Master 保存文件名到块、块到服务器的元数据,不存用户数据本身。
- 读:客户端向 Master 要块位置,再选近端 Chunk Server 读取;失败则试其他副本。
- 写:租约指定一段时间内的主副本,主副本排定写顺序,副本按该顺序落地。
- 一致性:并发写可能 consistent but undefined,副本字节相同,但不是任何一次客户端写入的完整结果。
学习建议:先抓住定义与问题,再理解机制步骤,最后对照应用场景思考“何时用、何时不用、代价是什么”。
4. 应用场景
- 大规模日志、训练集、备份文件的分布式存放。
- 对象存储设计可对照 Master/Chunk 角色划分。
- 理解租约写顺序对并发写结果的影响。