HDFS06 DataNode
DataNode
DataNode工作机制
一个数据块在DataNode上以文字形式存储在磁盘上,包括一下两个文件。
1.DataNode启动后告诉NameNode本机的块信息(块是否完好),并周期性(默认6个小时)上报所有块消息(块是否完好)。
如DataNode1中Block1的数据长度、校验和、时间戳,Block3的数据长度、校验和、时间戳
DN先扫描自己节点块信息列表,默认6小时扫描一次,扫描自己的块是否有损害。
<property>
<name>dfs.datanode.directoryscan.interval</name> --数据节点自查时间间隔
<value>21600s</value>
<description>Interval in seconds for Datanode to scan data
directories and reconcile the difference between blocks in memory and on
the disk.
Support multiple time unit suffix(case insensitive), as described
in dfs.heartbeat.interval.
</description>
</property>
DN再向NN汇报当前解读的信息,时间间隔默认6小时。
<property>
<name>dfs.blockreport.intervalMsec</name> --块信息报告的时间间隔ms
<value>21600000</value>
<description>Determines block reporting interval in
milliseconds.</description>
</property>
2.心跳每3s一次,DataNode->NameNode我还活着,心跳返回结果带有NameNode->DataNode的命令。
3.超过10分钟+30s没有收到心跳的话,则认为该节点不可用。就认为该节点挂了,不会再向其传输信息。
数据完整性
DataNode 节点保证数据完整性的方法。
1.当 DataNode 读取 Block 的时候,它会计算 CheckSum。
2.如果计算后的 CheckSum,与 Block 创建时值不一样,说明 Block 已经损坏。
3.Client 读取其他 DataNode 上的 Block。
4.常见的校验算法 crc(32),md5(128),sha1(160)
5.DataNode 在其文件创建后周期验证 CheckSum。
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>
HDFS06 DataNode的更多相关文章
- HDFS DataNode 设计实现解析
前文分析了 NameNode,本文进一步解析 DataNode 的设计和实现要点. 文件存储 DataNode 正如其名是负责存储文件数据的节点.HDFS 中文件的存储方式是将文件按块(block)切 ...
- 手动处理datanode磁盘间使用不均的问题
http://wiki.apache.org/hadoop/FAQ#On_an_individual_data_node.2C_how_do_you_balance_the_blocks_on_the ...
- Hadoop集群datanode磁盘不均衡的解决方案
一.引言: Hadoop的HDFS集群非常容易出现机器与机器之间磁盘利用率不平衡的情况,比如集群中添加新的数据节点,节点与节点之间磁盘大小不一样等等.当hdfs出现不平衡状况的时候,将引发很多问题,比 ...
- hadoop 完全分布式 下 datanode无法启动解决方法
问题描述: 在集群模式下更改节点后,启动集群发现 datanode一直启动不起来. 我集群配置:有5个节点,分别为master slave1-5 . 在master以Hadoop用户执行:start- ...
- 格式化namenode,造成无法启动datanode
一个常见的问题:格式化namenode,造成无法启动datanode的问题. 问题描述: 无法启动datanode,查看日志,datanote尝试n次启动无效后,会出现这个语句 INFO ...
- 检查Chunksum与Chunk Data之间的缓冲区发送到DataNode节点
我们会看到左边"iOS Apps"下面有四个选项:"Certificates"."Identifiers"."Devices&qu ...
- 解决hadoop启动后datanode无法启动问题
hadoop部署完成后datanode无法启动问题解决 1.检查是否有遗留的hadoop进程还在运行,如果有的话,先stop-all.sh或kill杀掉: 2.在master节点上,删除/tmp/ha ...
- Hadoop2.6 datanode配置在线更新
datanode 的配置可以在线更新了,http://blog.cloudera.com/blog/2015/05/new-in-cdh-5-4-how-swapping-of-hdfs-datano ...
- NameNode & DataNode
NameNode类位于org.apache.hadoop.hdfs.server.namenode包下. NameNode serves as both directory namespace man ...
随机推荐
- Luogu P2081 [NOI2012]迷失游乐园 | 期望 DP 基环树
题目链接 基环树套路题.(然而各种错误调了好久233) 当$m=n-1$时,原图是一棵树. 先以任意点为根做$dp$,求出从每一个点出发,然后只往自己子树里走时路径的期望长度. 接着再把整棵树再扫一遍 ...
- Linux 内核网桥源码分析
Linux网桥源码的实现 转自: Linux二层网络协议 Linux网桥源码的实现 1.调用 在src/net/core/dev.c的软中断函数static void net_rx_action(st ...
- cf 11D A Simple Task(状压DP)
题意: N个点构成的无向图,M条边描述这个无向图. 问这个无向图中共有多少个环. (1 ≤ n ≤ 19, 0 ≤ m) 思路: 例子: 4 6 1 2 1 3 1 4 2 3 2 4 3 4 答案: ...
- robot framework 导入资源
创建资源后添加关键字 创建资源文件用于存放关键字,项目下的所有套件都可以引用. 1.创建资源 测试项目->new resource->输入资源名称->点击"确认" ...
- 【Java】数组Array
Java基础复习之:数组 简介 数组(Array):多个相同数据类型按照一定顺序排列的集合,并使用一个名字命名,通过编号的方式对这些数据进行统一管理 一维数组 一维数组的声明与初始化 int[] id ...
- Spring 为啥默认把bean设计成单例的?
熟悉Spring开发的朋友都知道Spring提供了5种scope分别是singleton.prototype.request.session.global session. 如下图是官方文档上的截图, ...
- java eclipse调试提示Source not found 或 一闪而过 解决方法
Web工程Eclipse debug方式启动,在断点的位置被成功拦截,但是没有跳转到工程的代码处,提示如下: 当然这个时候如果我继续按F5的话呢,程序又会接着正常运行了.到这里那就是说程序本身是没有 ...
- Django笔记&教程 4-2 模型(models)中的Field(字段)
Django 自学笔记兼学习教程第4章第2节--模型(models)中的Field(字段) 点击查看教程总目录 参考:https://docs.djangoproject.com/en/2.2/ref ...
- liunx基础知识点1:系统管理相关命令、目录操作命令、文本编辑、关闭防火墙、重启和关闭
Linux(一) liunx系统那么重要,作为一个测试人员,不掌握你就损失了好几千,为了这个钱,也为了面子,什么鬼?我爱膨胀.你看看这些知识喽.我整理的,可费工夫了. 下次给大家一个面试题啊,更直观
- SQL Server2019数据库备份与还原脚本,数据库可批量备份
前言 最近公司服务器到期,需要进行数据迁移,而数据库属于多而繁琐,通过图形化界面一个一个备份所需时间成本很大,所以想着写一个sql脚本来执行. 开始 数据库单个备份 数据库批量备份 数据库还原 数据库 ...