HDFS文件读写

HDFS读写图解

这里写图片描述
这是读写全流程,大家感应一下。

HDF文件读流程

图片来自厦门大学,林子雨
这是我觉得比较浅显易懂的图片,下面我对该图片的步骤进行详解:
1. 利用FileSystem的open()方法打开文件
2. 通过访问NN获取部分或全部块的信息
3. 利用FSDataInputStream的read()方法发出读取请求
4. 选择DN读取数据,先进行信息文件校验,然后再读取信息
5. 如果只读取部分块,则继续访问NN,获取剩余块信息
6. 继续重复步骤4
7. 关闭文件

HDFS文件写流程

图片来自厦门大学,林子雨
1. 利用FileSystem的creat()方法,提出创建文件请求
2. 访问NN,并在NN中创建一个没有块信息只有文件名的空文件
3. 利用FSDataInputStream的write()方法,发出写数据请求
4. 写入数据包,写入第一个DN,写完一个块立即复制到第二个块,以此类推,用流水线的方式写入
5. 返回一个接受确认包(ack packet)
6. 关闭文件并刷新(flush)
7. 利用FileSystem的compelet()函数将映射关系写入NN

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值