标签:标记 输入流 取数 拓扑 优先 数据 本地 sys distrib
1,客户端通过Distributed FileSystem 向namenode请求下载文件,namenode 通过查找元数据,返回文件块所在datanode的地址。
2,客户端挑选一台datanode(按照就近原则,返回的块地址根据网络拓扑图排序,距离客户端进的排在前面)服务器,建立连接,请求读取数据;如果dn异常,则从第二优先的dn读取数据,并且标记该dn异常,后续读取块的数据直接跳过该dn。
3,datanode开始传输数据给客户端(从磁盘读取数据输入流,以packet为单位来做校验),如果块读取完毕,则关闭和datanode的连接。
4,客户端以packet为单位接收数据,先在本地缓存下来,然后写入目标文件。
标签:标记 输入流 取数 拓扑 优先 数据 本地 sys distrib
原文地址:https://www.cnblogs.com/gaoshanmuxue/p/13125128.html