大数据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关闭连接。

相关推荐
薛定谔的猫666624 分钟前
主流电商平台营销中大数据的应用◆
大数据·数据采集·淘宝天猫·电商api·主流平台·阿里巴巴1688·独立站系统
迅狐源码工厂30 分钟前
如何选择快手矩阵系统:打造高效短视频营销的指南
大数据·人工智能·矩阵
GSDjisidi1 小时前
日本IT-SIER/SES的区别详情、契约形态等
java·大数据·c语言·c++·php
小的~~2 小时前
大数据面试题之Flink(4)
大数据·flink
大舍传媒2 小时前
欧美海外媒体发稿,国外新闻发布,外媒发布
大数据·人工智能·游戏引擎·信息与通信·用户运营
meitiyaoyue2 小时前
「媒体邀约」全国巡演,多地推介会,如何做好媒体宣传
大数据
samLi06202 小时前
绿色金融相关数据合集(2007-2024年 具体看数据类型)
大数据
85程序员老王3 小时前
Spark SQL----内置函数Array Functions
大数据·分布式·sql·spark·apache
WoShop商城源码3 小时前
短视频电商源码的优势及软件架构解析
大数据·教育电商
大数据小朋友4 小时前
Flume工具详解
大数据·flume