HDFS写数据流程:
1.客户端向nd发送文件上传请求 nd检查目录文件是否存在 检查父目录是否存在
2.nd向客户端返回是否上传响应
3.客户端向nd请求 上传到那个节点(dn)
4.nd响应 dn1 dn2 dn3可以上传
5.客户端向dn1发送请求 dn1–>dn2–>dn3 建立文件传输管道
6.dn1 dn2 dn3 向客户端逐级应答
7.客户端将block文件以packet形式传输给dn1 dn1–>dn2–>dn3
dn1每传一个packet会放入一个应答队列等待应答
8.当一个block文件传输完成以后 客户端再次向nd发送请求 传输block2
HDFS读数据流程:
1.客户端向nd发送下载请求 nd检查元数据 查找文件所在dn
2.挑选最近的dn服务器 发送读取请求
3.dn向客户端传输数据 以packet为单位做校验
4.客户端以packet为单位接收 先在本地缓存 然后写入目标文件