HDFS中DataNode工作机制

1、DataNode工作机制

在这里插入图片描述
(1) 一个数据块在 DataNode 上以文件形式储存在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度、块数据的校验和以及时间戳。

(2) DataNode 启动后向 NameNode 注册,通过后,周期性(1小时)的向 NameNode 上报所有的块信息。

(3) 心跳是每3秒一次,心跳返回结果带有 NameNode 给该 DataNode 的命令如复制块数据到另一台机器,或删除某个数据块。如果超过10分钟没有收到某个 DataNode 的心跳,则认为该节点不可用。

(4) 集群运行中可以安全加入和退出一些机器。

2、数据完整性

DataNode节点上的数据损坏了,却没有发现,这是一种非常危险的事情,对业务和实际应用都会产
生很大的影响,那么这个问题该如何解决呢?

(1) 当DataNode读取Block的时候,它会计算CheckSum。

(2) 如果计算后的CheckSum,与Block创建时值不一样,说明Block已经损坏。

(3) Client读取其他DataNode上的Block。

(4) DataNode在其文件创建后周期验证CheckSum,如下图。

在这里插入图片描述

3、DataNode掉线时限参数设置

在这里插入图片描述
需要注意的是 hdfs-site.xml 中的 heartbeat.recheck.interval 的单位为毫秒,dfs.heartbeat.interval 的单位为秒。

<property>
    <name>dfs.namenode.heartbeat.recheck-interval</name>
    <value>300000</value>
</property>
<property>
    <name>dfs.heartbeat.interval</name>
    <value>3</value>
</property>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值