HDFS读写流程简介
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,前言:HDFS 是一个能够面向大规模数据使用的,可进行扩展的文件存储与传递系统。是一种允许文件通过网络在多台主机上分享的文件系统,可让多机器上的多用户分享文件和 存储空间。让实际上是通过网络来访问文件
千家信息网最后更新 2025年12月03日HDFS读写流程简介
前言:
HDFS 是一个能够面向大规模数据使用的,可进行扩展的文件存储与传递系统。是一种允许文件通过网络在多台主机上分享的文件系统,可让多机器上的多用户分享文件和 存储空间。让实际上是通过网络来访问文件的动作,由程序与用户看来,就像是访问本地的磁盘一般。即使系统中有某些节点脱机,整体来说系统仍然可以持续运作 而不会有数据损失。
HDFS写流程:
- 1.初始化FileSystem,客户端调用create()来创建文件
- 2.FileSystem用RPC调用元数据节点,在文件系统的命名空间中创建一个新的文件,元数据节点首先确定文件原来不存在,并且客户端有创建文件的权限,然后创建新文件。
- 3.FileSystem返回DFSOutputStream,客户端用于写数据,客户端开始写入数据。
- 4.DFSOutputStream将数据分成块,写入data queue。data queue由Data Streamer读取,并通知元数据节点分配数据节点,用来存储数据块(每块默认复制3块)。分配的数据节点放在一个pipeline里。Data Streamer将数据块写入pipeline中的第一个数据节点。第一个数据节点将数据块发送给第二个数据节点。第二个数据节点将数据发送给第三个数据节点。
- 5.DFSOutputStream为发出去的数据块保存了ack queue,等待pipeline中的数据节点告知数据已经写入成功。
- 6.当客户端结束写入数据,则调用stream的close函数。此操作将所有的数据块写入pipeline中的数据节点,并等待ack queue返回成功。最后通知元数据节点写入完毕。
- 7.如果数据节点在写入的过程中失败,关闭pipeline,将ack queue中的数据块放入data queue的开始,当前的数据块在已经写入的数据节点中被元数据节点赋予新的标示,则错误节点重启后能够察觉其数据块是过时的,会被删除。失败的数据节点从pipeline中移除,另外的数据块则写入pipeline中的另外两个数据节点。元数据节点则被通知此数据块是复制块数不足,将来会再创建第三份备份。

HDFS读流程:
- 1.初始化FileSystem,然后客户端(client)用FileSystem的open()函数打开文件
- 2.FileSystem用RPC调用元数据节点,得到文件的数据块信息,对于每一个数据块,元数据节点返回保存数据块的数据节点的地址。
- 3.FileSystem返回FSDataInputStream给客户端,用来读取数据,客户端调用stream的read()函数开始读取数据。
- 4.DFSInputStream连接保存此文件第一个数据块的最近的数据节点,data从数据节点读到客户端(client)
- 5.当此数据块读取完毕时,DFSInputStream关闭和此数据节点的连接,然后连接此文件下一个数据块的最近的数据节点。
- 6.当客户端读取完毕数据的时候,调用FSDataInputStream的close函数。
- 7.在读取数据的过程中,如果客户端在与数据节点通信出现错误,则尝试连接包含此数据块的下一个数据节点。
参考:
https://blog.csdn.net/gaijianwei/article/details/45918337
https://www.cnblogs.com/xubiao/p/5579080.html
数据
节点
文件
客户
客户端
系统
函数
存储
流程
成功
用户
空间
网络
过程
错误
分配
过时
三个
两个
主机
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
如何在服务器上创建网页
酒泉软件开发文档
学习网络安全要具备什么知识
上海dell服务器专卖
单机数据库解决的问题
软件开发入职不签劳动合同
施乐服务器装系统要多久
涉及到网络安全的法律法规
接入网络技术有哪些
畅赢北京网络技术
aws云服务器价格
国家法律法规数据库官方网站
网络安全要防范什么
合作获取数据库中的最大值
句容天气预报软件开发
软件开发实施主管岗位职责
我的世界服务器外面的图片怎么改
天文数字底片数据库第一批
钢铁企业软件开发
软件开发多人协助
网络安全食品作业
网络安全整体现状扫描
rib软件开发
无线网络技术实验总结通用
扬讯软件开发有限公司招聘
数据库作业备份
2019年网络安全的主体是
公司硬件及软件开发
cmd里面调数据库显示问号
零基础学安卓软件开发