大数据学习之-NN,SNN和DN的作用

本文深入解析Hadoop架构,包括NameNode、DataNode和SecondaryNameNode的功能。NameNode负责文件系统的命名空间、文件属性和blockmap的维护。DataNode存储数据块及校验,并定期向NameNode报告状态。SecondaryNameNode则负责定期合并fsimage和editslog。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

NameNode(名称节点,简称NN)作用:

  • 文件系统命名空间,维护文件系统目录树
  • 存储文件名称,
  • 文件目录结构,
  • 文件属性(权限,大小,创建时间,副本数及大小....),
  • 文件对应的数据块及这些块所对应的数据节点,我们称为blockmap,这种映射关系存储在NN中,但是并不会持久化这种关系,这个映射关系由DN在启动的时候上报给NN。

以上关系由fsimage+editslog来存储。

DataNode(数据节点,简称DN)作用:

  • 存储数据块及块校验(为了防止块损坏带来的数据读取错误) 
  • 每隔3秒与NN通信并发送一个心跳包;每10个心跳包向NN上报blockReport

SecondaryNameNode(辅助名称节点,简称SNN):

  • 存储fsimage,editslog;
  • 定期合并fsimage+editslog,合并时机由检查点(checkpoint)决定,检查点由dfs.namenode.checkpoint.period 参数定义,默认3600秒。

SNN每隔一个小时从NN上备份fsimage下来

fsimage 镜像文件,系统镜像文件,系统全量文件

editslog操作日志,读写记录操作,系统增量文件

客户端向DN写数据,如果副本数是3,客户端只需要写入1分数据,然后拷贝。

SNN流程:

d69588f41d0ad1fe59062779aa9e8615dd2.jpg

SNN每隔一小时从NN上下载fsimage和edits文件,在SNN节点合并生成新的fsimage,合并完成后 把这个新的fsimage文件推送到NN节点替换掉原来的fsimage,在fsimage合并期间,NN节点的所有的操作都记录在edits中,这个时候 NN节点就有新的fsimage文件和edits文件。

 

 

转载于:https://my.oschina.net/u/3862440/blog/2249058

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值