首页 > 解决方案 > HDFS 上的块多久复制一次?

问题描述

我有一个关于 hadoop hdfs 块复制的问题。假设在一个数据节点上写入了一个块,并且 DFS 的复制因子为 3,那么 namenode 需要多长时间才能将这个块复制到其他数据节点上?是瞬时的吗?如果不是,那么在将块写入数据节点后,假设该数据节点上的磁盘发生故障且无法恢复,是否意味着该块永远丢失?以及namenode多久检查一次丢失/损坏的块?

标签: hadoophdfsdistributed-computingnamenode

解决方案


您可能想查看这篇对 hdfs 写入有很好描述的文章。它应该是即时的,具体取决于集群的繁忙程度:

https://data-flair.training/blogs/hdfs-data-write-operation/ 如果 DataNode 在 HDFS 中写入文件时失败会发生什么?在向 DataNode 写入数据时,如果 DataNode 失败,则会发生以下操作,这对写入数据的客户端是透明的。

  1. 管道关闭,然后将 ack 队列中的数据包添加到数据队列的前面,从而使故障节点下游的 DataNode 不会错过任何数据包。

推荐阅读