第 2 章 · 数据落盘:HDFS 存储层 章节摘要:HDFS 是数据旅程的前半程。本章沿数据流动方向依次拆解存储层的四个关键断面:主从架构与元数据管理、写入路径(分块与机架感知副本放置)、读取路径(就近选块与客户端操作)、以及 HA/联邦/纠删码等高级特性与优化。读完你将能完整回答"一个字节从网卡到磁盘经历了什么"。 学习目标 阅读完本章,你应当能够: 说清 NameNode 的元数据生命周期:FsImage、EditLog、Checkpoint 各自的角色与时机; 逐跳描述一次 HDFS 写入:路线申请、管线建立、校验、ACK 与提交; 解释机架感知副本放置策略(第一副本、第二副本、第三副本各在哪、为什么); 描述读取路径的容器链与短路读等优化手段;
章节摘要:HDFS 是数据旅程的前半程。本章沿数据流动方向依次拆解存储层的四个关键断面:主从架构与元数据管理、写入路径(分块与机架感知副本放置)、读取路径(就近选块与客户端操作)、以及 HA/联邦/纠删码等高级特性与优化。读完你将能完整回答"一个字节从网卡到磁盘经历了什么"。
阅读完本章,你应当能够:
HDFS 的每一项设计都在回答同一个问题:怎样让"存得多"与"取得快、坏不了"同时成立。
NameNode、DataNode、SecondaryNameNode 的分工,元数据双文件机制与 Checkpoint,心跳与块报告的循环。
跟着一个字节走完写入管线,解析机架感知放置策略与写入时的故障处理。
块位置的按距排序、校验块、短路读与零拷贝,命令行与 Java API 实战。
NameNode HA、HDFS 联邦、纠删码、小文件问题、均衡器与缓存。
本章四节严格按数据流动方向排列:
[2.1 架构与元数据] ──谁在管理──▶ [2.2 写入路径] ──数据怎么进来──▶ [2.3 读取路径] ──数据怎么出去──▶ [2.4 高级特性] 账本机制 管线与副本拓扑 本地性与API HA与纠删码等补强
写入在读取之前,因为先有落盘才有取用;特性优化放最后,因为 HA 与纠删码都是对前三节揭示的瓶颈(元数据单点、存储开销)的回应。