HDFS的写数据流程
程序员文章站
2022-06-03 18:17:10
...
HDFS的写数据流程
流程包含对象:
A.客户端:包含HDFS client,DFS和FSDataOutputStream三个模块
B.NameNode:存放元数据
C.多个DataNode:以block为单位存放数据及其长度、校验和和时间戳等内容。
发送过程(将文件从客户端发送到HDFS):
//三次交互一次传
1.客户端中的DFS(DistributedFileSystem):向NameNode中发送上传请求。
2.NameNode:检查该文件是否已存在,父目录是否存在。NameNode判断后给予反馈。
3.客户端:请求上传Block,询问可存放的DataNode
4.NameNode:反馈可存放的DataNode结点
5.客户端FSDataOutputStream:向数DataNode建立关联通道请求(关联方式:串联。依据:拓扑排序)
6.数DataOutputStream:同意建立连接
7.客户端:以Packet(1P/64K)为单位上传Block。从客户端逐次到DN1,DN2,DN3形成应答队列,每完成一次传输进行一次成功应答
推荐阅读