码迷,mamicode.com
首页 > 其他好文 > 详细

浅谈HDFS的读流程

时间:2018-01-14 16:49:50      阅读:151      评论:0      收藏:0      [点我收藏+]

标签:分享   family   错误   技术   文件的   请求   white   sof   hdfs   

1、使用HDFS提供的客户端Client,向远程的Namenode发起RPC请求;

2、Namenode会视情况返回文件的部分或者全部block列表,对于每个block,Namenode都会返回有该block拷贝的DataNode地址;

3、客户端Client会选取离客户端最近的DataNode来读取block;如果客户端本身就是DataNode,那么将从本地直接获取数据;

4、读取完当前block的数据后,关闭当前的DataNode链接,并为读取下一个block寻找最佳的DataNode;

5、当读完列表block后,且文件读取还没有结束,客户端会继续向Namenode获取下一批的block列表;

6、读取完一个block都会进行checksum验证,如果读取datanode时出现错误,客户端会通知Namenode,然后再从下一个拥有该block拷贝的datanode继续读。

技术分享图片

客户端及读取HDFS中的数据的流程图


技术分享图片


浅谈HDFS的读流程

标签:分享   family   错误   技术   文件的   请求   white   sof   hdfs   

原文地址:http://blog.51cto.com/10314260/2060766

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!