HDFS 读写流程
架构

Read

初始化文件系统对象, 建立与元数据节点 NameNode 的通信
向 NameNode 请求目标文件的元信息 (存储格式, 存储位置, 块路径..)
客户端拿到元信息之后, 按照其中的路径与 DataNode 依次交互
读取过程中如出现故障, 会将故障信息发送给 NameNode, 数据读取完之后会通过 checksum 校验完整性.
Write

初始化文件系统对象, 请求元信息, NameNode 会检查权限、空间配额
NameNode 返回流对象, 客户端 就近 连接 DataNode, 以数据包的形式传输数据
写完之后, DataNode 向其他机架上的节点建立备份
备份完成, NameNode 持久化元数据