HDFS原理及架构
发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,HDFS架构HDFS是一个master/slave结构的服务,其中NameNode是master,一般只在一台节点上启动;DataNode是slave,一般每台节点都会启动一个;DataNode不断地
千家信息网最后更新 2026年11月01日HDFS原理及架构
HDFS架构
HDFS是一个master/slave结构的服务,其中NameNode是master,一般只在一台节点上启动;DataNode是slave,一般每台节点都会启动一个;DataNode不断地主动向NameNode发送心跳、汇报block信息等;为了对NameNode进行备份,还会有一个SecondaryNameNode
HDFS各类操作
- 创建目录

client与namenode直接交互,在INode中创建目录节点,并将操作写入edit log中即可,全程不需要datanode参与。 - 删除文件
客户端与namenode交互删除文件,namenode只是标记要删除,但不会主动通知datanode;
当对应的datanode向namenode发送心跳时,namnode会把删除指令放到返回值里;
所以一般删除不是立即删除,而是有一定的延迟。 - 读文件
client先与namenode交互,通过getBlockLocatitions方法获取到文件block所在节点,然后client再与datanode交互获取具体数据;
block可能不是一次全部返回,可能需要多次调用getBlockLocatitions。
客户端读数据时如果DN发生故障,则会接着读取下一个数据块儿,并记录这个出故障的节点;读数据返回中包含了数据的校验和,如果发现错误,会报告给NN,并从其它副本读取。 - 写文件
client先与NN交互,在NN命名空间中创建一个新文件;
第二步client真正写入之前再跟NN交互获取要在哪儿写,addBlock返回一个LocateBlock对象,包含数据库标志和版本号;
LocateBlock还提供了跟DN交互的数据流管道,client写入到管道中的数据被分为一个个的文件包,这些被放入到一个输出队列中;
第三步client跟DN交互写入数据,第一个节点写完,由第一个DN向第二个DN写,写完还要返回ack确认信息;如果收到ack确认信息,则将这个文件包从队列中删除;
写完一个数据块之后,DN会跟NN交互,向NN提交这个数据块。
对于某个DN发生故障的情况:
1,先关闭数据流通道,正在写的数据包由于没有收到ack,不会从队列中删除,数据不会丢失;
2,正常的DN上的数据块会被赋予一个新的版本号,并通知NN。主要是故障节点恢复后,发现版本号跟NN上的不一致就会自动删除了;
3,数据流管道删除错误节点并重新建立管道,继续在正常几点上写数据;
4,文件关闭后,NN发现此数据库没有达到副本数要求,会选择一个新的DN来复制数据块。
- SecNameNode备份
hdfs的元数据保存在Inode对象中,但是namenode是一个单点master,如果数据都在内存则无法进行故障恢复。
hdfs有一个检查点机制,会把某个时间点内存中的Inode持久化到fsimage文件中,同时对每个操作记录写入到edit log中。
SecNameNode则负责把namenode上的fsimage和edit log合并。
1,SecNN不断地获取NN上editlog的大小,如果太小则不做处理;
2,如果editlog较大,则SecNN通知NN发起一次检查点操作;
3,NN会产出一个新的editlog--edit.new,此后对元数据的操作都写入到edit.new文件中;
4,而SecNN则通过http接口分别将NN上的fsimage和editlog拉取到SecNN节点上,并在内存中合并,并产出文件fsimage.ckpt;
5,SecNN再主动通知NN镜像已合并完成;
6,NN通过http接口拉取过来fsimage.ckpt并覆盖原来的fsimage,最后将edit.new改回edit
HDFS HA
https://www.ibm.com/developerworks/cn/opensource/os-cn-hadoop-name-node/index.html
数据
文件
节点
故障
管道
信息
内存
数据流
版本
队列
主动
不断
副本
备份
客户
客户端
对象
接口
数据库
检查点
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
互联网科技图片
互联网是不是新科技
互联网科技金融
互联网金融 科技创新
互联网教育科技公司vipkid
央行互联网金融科技公司
栖莱科技互联网股份有限公司
佳云科技和互联网广告
和信科技工业互联网
成都互联网科技公司工作好不好
玉溪新华互联网科技好不好
科技大学互联网
厦门江牛科技互联网
半导体是互联网高科技吗
广州有谷有贝互联网科技有限公司
扫呗互联网科技有限公司
世界互联网科技成果奖
好易买互联网科技
互联网科技大佬云集
株洲百竞科技的互联网营销顾问
什么是科技互联网
互联网科技名片
美国互联网科技
互联网与未来科技
互联网科技大会
云创客互联网科技公司
晋城互联网科技
伍佰万互联网科技怎么赚钱
电子商务与互联网科技的关系
济南小医互联网科技有限公司招聘