HDFS之读写删流程

关于读写删流程不是我自己总结的,是从之前学习时候资料上大体拿过来用的,但无论是不是我自己总结的都不碍事,重要的是我们汲取精华化为己用,你说对吗,就像你现在也在白嫖我的文字一样,反正是很香.

10.读流程

1.客户端发起请求到NN

2.NN在收到请求之后会先效验该文件是否存在.若存在,会将这个文件所对应的Block的存储地址放入一个队列中返回给客户端

3.客户端收到队列之后会从队列中按每个Block对应的地址将其一次取出,从副本个数地址中取出地址较近的一个读取

4.读取完一个Block后,会对这个Block进行一次checksum的验证,验证该Block的数据总量是否准确;若大小不一致,则说明该Block损坏,客户端会通知NN,然后再从其它节点上重新读取该Block

5.如果读完一个Block便会接着读下一个Block,直到所有的Block读完

6.客户端读取数据若比较大会分批次,在读完该批次地址便会向NN要下一批地址

7.读完所有的Block,客户端会向NN发送消息通知NN关闭文件

11.写流程

1.客户端发起请求到NN,该请求包含对文件信息的描述

2.NN收到请求后,效验该用户的权限;如果效验通过,则检查该路径下是否有同名文件,如果没有同名文件,则允许写入

3.NN计算这个文件需要的地址数量,然后会给每一块分配对应的地址,并且将地址放入队列中返回给客户端

4.客户端在收到地址后,会将数据进行封包(packets),写入DataNode

5.在写的时候,从分配地址中选取一个较近的节点将数据写入.在写完一个Block之后,这个DataNode自动的通过Pipeline管道将这个Block备份到其它节点上构成指定的副本数

6.节点之间依次传递ACK信号表示备份成功,在客户端收到ACK之后会继续写下一个Block

7.客户端写完所有的Block之后会通知NN关闭流,流关闭后该文件更改为不可写

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值