大数据Hadoop-HDFS_架构、读写流程

大数据Hadoop-HDFS

基本系统架构

HDFS架构包含三个部分:NameNode,DataNode,Client。

NameNode:NameNode用于存储、生成文件系统的元数据。运行一个实例。

DataNode:DataNode用于存储实际的数据,将自己管理的数据块上报给NameNode ,运行多个实例。

Client:支持业务访问HDFS,从NameNode ,DataNode获取数据返回给业务。多个实例,和业务一起运行。

HDFS数据写入流程

HDFS数据写入流程如下:

(1)业务应用调用HDFS Client提供的API,请求写入文件。

(2)HDFS Client联系NameNode,NameNode在元数据中创建文件节点。

(3)业务应用调用write API写入文件。

(4)HDFS Client收到业务数据后,从NameNode获取到数据块编号、位置信息后,联系DataNode,并将需要写入数据的DataNode建立起流水线。完成后,客户端再通过自有协议写入数据到DataNode1,再由DataNode1复制到DataNode2, DataNode3。

(5)写完的数据,将返回确认信息给HDFS Client。

(6)所有数据确认完成后,业务调用HDFS Client关闭文件。

(7)业务调用close, flush后HDFS Client联系NameNode,确认数据写完成,NameNode持久化元数据。

HDFS数据读取流程

HDFS数据读取流程如下:

(1)业务应用调用HDFS Client提供的API打开文件。

(2)HDFS Client联系NameNode,获取到文件信息(数据块、DataNode位置信息)。

(3)业务应用调用read API读取文件。

(4)HDFS Client根据从NameNode获取到的信息,联系DataNode,获取相应的数据块。(Client采用就近原则读取数据)。

(5)HDFS Client会与多个DataNode通讯获取数据块。

(6)数据读取完成后,业务调用close关闭连接。

相关推荐
Sylvan Ding1 小时前
度量空间数据管理与分析系统——大数据泛构课程作业-2025~2026学年. 毛睿
大数据·深圳大学·大数据泛构·度量空间数据管理与分析系统·毛睿·北京理工大学珠海校区
面向Google编程4 小时前
Flink源码阅读:JobManager的HA机制
大数据·flink
Tony Bai4 小时前
【分布式系统】03 复制(上):“权威中心”的秩序 —— 主从架构、一致性与权衡
大数据·数据库·分布式·架构
汽车仪器仪表相关领域6 小时前
全自动化精准检测,赋能高效年检——NHD-6108全自动远、近光检测仪项目实战分享
大数据·人工智能·功能测试·算法·安全·自动化·压力测试
大厂技术总监下海6 小时前
根治LLM胡说八道!用 Elasticsearch 构建 RAG,给你一个“有据可查”的AI
大数据·elasticsearch·开源
石像鬼₧魂石8 小时前
22端口(OpenSSH 4.7p1)渗透测试完整复习流程(含实战排错)
大数据·网络·学习·安全·ubuntu
TDengine (老段)8 小时前
TDengine Python 连接器进阶指南
大数据·数据库·python·物联网·时序数据库·tdengine·涛思数据
数据猿10 小时前
【金猿CIO展】如康集团CIO 赵鋆洲:数智重塑“顶牛”——如康集团如何用大数据烹饪万亿肉食产业的未来
大数据
zxsz_com_cn12 小时前
设备预测性维护的意义 工业设备预测性维护是什么
大数据
samLi062013 小时前
【数据集】中国杰出青年名单数据集(1994-2024年)
大数据