HDFS的读取流程

今天我们来说一下HDFS的读取流程是什么样的,首先我们来看一张图片
HDFS的读取流程
这里我们可以清楚的看到HDFS的读取流程共分以下几步:
第一步:客户端向NN申请要读取的文件的block块的位置信息列表
第二步:NN根据情况向客户端返回全部或者一部分block块所在DN的位置信息列表,这个列表是经过排序以后返回的,排序的规则有以下两种:首先根据机架感知原理,距离越靠近客户端的排名越靠前;其次,根据NN与DN之间的心跳机制,汇报超时的DN地址的排名会靠后
第三步:客户端会根据读取到的block位置信息列表调用FSDataInputStream的父类DataInputStream的read方法来并行读取数据,如果读取过程中出现错误,则客户端会向NN报告,NN会将另一个包含该block块的位置信息发送给客户端继续读取。
第四步:每接收完成一个block块都会进行checksum校验,等到数据都接收完成以后,合并成最终的文件。
第五步:释放连接资源

相关文章:

  • 2021-10-08
  • 2021-10-29
  • 2021-03-31
  • 2022-01-18
  • 2021-11-16
  • 2021-09-01
  • 2021-07-30
猜你喜欢
  • 2021-05-28
  • 2021-05-20
  • 2021-05-31
  • 2021-04-05
  • 2021-12-02
  • 2021-10-26
相关资源
相似解决方案