MapReduce基础:HDFS的数据完整性

xiaoxiao2021-02-28  124

HDFS会对写入的所有数据计算校验和,并在读取数据时验证校验和。

DataNode负责在接收到数据后存储该数据及验证校验和

 

恢复损坏的Block, 主要有以下几步:

1)客户端在读取Block时,如果检测到错误,首先向NameNode报告已损坏的Block及其正在尝试读操作的这个DataNode, 再抛出ChecksumException

2)NameNode将这个Block副本标记为已损坏,这样NameNode就不会把客户端指向这个Block,也不会复制这个Block到其他的DataNode

3)NameNode会把一个好的Block复制到另一个DataNode上, 如此一来,Block的副本因子又回到期望水平。

4)最后,NameNode把已损坏的Block副本删除

转载请注明原文地址: https://www.6miu.com/read-59464.html

最新回复(0)