Hadoop核心组件之HDFS(二)

HDFS的高可靠性的策略机制有哪些?

分布式文件系统(HDFS)的高可靠性主要是由多种策略及机制共同作用实现的。

常见的三种错误情况:文件损坏、网络或者机器失效、NameNode挂掉。

下面我们来看下解决三种常见错误的可靠性策略:
1.文件完整性
–CRC32校验,验证数据是否损坏 
在文件建立时,每个数据块都产生校验和,校验和会保存在.meta文件内;
客户端获取数据时可以检查校验和是否相同,从而发现数据块是否损坏;
如果正在读取的数据块损坏,则可以继续读取其它副本。NameNode标记该块已经损坏,然后复制block达到预期设置的文件备份数;DataNode 在其文件创建后三周验证其checksum。
2.网络或者机器失效
–冗余副本策略
可以指定数据文件的副本数量,默认是3;
保证所有的数据块都有副本,不至于在一个Datanode宕机后,数据的丢失。


–机架策略 
集群一般放在不同机架上,机架间带宽要比机架内带宽要小;HDFS具有“机架感知”能力,它能自动实现在本机架A上存放一个副本,然后在其它机架B上的随机一台机器再存放一副本,在B机架的另一台机器再存放一个副本(假定副本数量设置为3)。这样可以防止机架失效时数据丢失,也可以提高带宽利用率。


–心跳机制策略
NameNode周期性从datanode接收心跳信号和块报告,NameNode根据块报告验证元数据;
NameNode对没有按时发送心跳的DataNode会被标记为宕机,不会再给它任何I/O请求;
DataNode失效造成副本数量下降,并且低于预先设置的阈值,NameNode会检测出这些数据块,然后复制block达到预期设置的文件备份数;


补充:
	**心跳机制超长时间计算**:默认为10分30秒
3.NameNode挂掉
–磁盘元数据存储:FSImage(文件系统镜像)、Editlog(操作日志)
NameNode启动时先加载fsimage和edits文件生成新的fsimage和edits文件,然后等待DataNode注册与发送Block Report。两个阶段完成,实现重建元数据


–FSImage,Editlog多份存储,定期合并(可设置合并条件)
FSImage(文件系统镜像)、Editlog(操作日志)可以多份存储,还可以设置存储在多个磁盘上,一旦一块磁盘坏掉,其他磁盘还有备份。FSImage,Editlog会定期合并形成新的FSimage,然后清空Editlog文件。


–主备NameNode实时切换 
可搭建HA高可用,两个NameNode同时存在,一主一备,两个NameNode元数据保持高度一致性。一旦主NameNode出现问题,马上切换到备用NameNode。


其他高可靠性机制
除了针对常见错误的可靠性策略,HDFS还提供了一些保证系统可靠的机制


-安全模式
安全模式阶段本质上就是保证副本数量的一个阶段。
NameNode启动时会先经过一个“安全模式”阶段,安全模式阶段不会产生数据写;
在安全模式阶段NameNode收集各个DataNode的报告,当数据块达到最小副本数以上时,会被认为是“安全”的;在一定比例(可设置)的数据块被确定为“安全”后,再过若干时间(默认30s),安全模式结束;当检测到副本数不足的数据块时,该块会被复制直到达到最小副本数。


-快照机制
支持存储某个时间点的映像,需要时可以使数据重返这个时间点的状态;


-回收站
删除文件时,其实是放入回收站/trash,回收站里的文件可以快速恢复;
可以设置一个时间阈值,当回收站里文件的存放时间超过这个阈值,就被彻底删除,并且释放占用的数据块。


补充:
	1.在安全模式下不可以进行以下操作:
		1)创建文件夹
		2)上传文件
		3)删除文件
注意:启动了namenode,未启动datanode,则文件系统处于安全模式,只可以查看文件系统上有哪些文件,不可以查看文件内容,因为datanode都还没启动,怎么可能可以查看文件内容

	2.如何离开安全模式(重点)
		1)修复丢失数据
		2)调低阀值和datanode数量
		3)通过命令进入或者离开安全模式
		hdfs dfsadmin -safemode enter|leave
		4)重新格式化集群
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值