HDFS 数据流程

1、网络拓扑-节点距离计算

节点距离:两个节点到达最近的共同祖先的距离总和(一条线的长度为1)

2、机架感知-副本储存节点选择

当副本为三个时:

本地机架上的一个节点

本地机架上的另一个节点

不同机架的不同节点

3、读写数据流

1)、读

(fs)向NameNode请求读取文件 -> NameNode返回目标的元数据 ->

请求读取blk_1 -> 传输blk_1 -> 请求读取blk_2 -> 传输blk_2

2)、写

(fs)向NameNode请求写入文件 -> NameNode响应可以上传文件 ->

返回dn1, dn2, dn3三个节点用于储存副本 ->向dn1, dn2, dn3 请求建立Block传输通道 ->

dn3,dn2,dn1应答成功 -> 传输数据Packet -> 传输数据完成

原文地址:https://www.cnblogs.com/wt7018/p/13592006.html