hdfs将如何选择要删除的副本?

w41d8nur  于 2021-05-29  发布在  Hadoop
关注(0)|答案(2)|浏览(476)

假设:我有一个hadoop集群,其中每个数据幻灯片都设置为有3个副本。
有一天,一个datanode被拔掉(假设里面存储的数据是好的),然后hdfs将为这个节点中存储的数据生成新的拷贝,这样数据幻灯片仍然有3个拷贝。但如果第二天再次插入datanode,则某些数据幻灯片有4个副本,那么hdfs必须删除4个副本中的1个。
我的问题是hdfs如何选择要删除的文件?随机?或者只是删除最新的一个(这意味着datanode将被清除)?

nszi6y05

nszi6y051#

问题:但是如果datanode被修复并重新开始工作,一些数据幻灯片有4个副本,那么hdfs必须删除4个副本中的1个
正如您所提到的,在hdfs中,当任何datanode拔出时,均衡器将在另一个节点中创建丢失的拷贝,以保持块的适当复制因子。
现在,如果我们想将相同的/diff节点包含到hdfs中,我们就这样做了 format 并包含要群集的节点。因此,在任何时候集群中都不会有过多的复制块。

wlzqhblo

wlzqhblo2#

datanode中的数据在崩溃时会被清除,这就是hdfs中保持复制的原因,以确保在datanode发生故障时始终存在数据可用性。

相关问题