HDFS(Hadoop Distributed File System)的副本机制是其高可靠性和容错能力的核心设计之一。副本机制通过在集群中存储多个数据副本,确保在节点故障时数据仍然可用。
1. 副本机制的核心设计
-
默认副本数:HDFS默认将每个数据块存储3个副本(可通过配置参数
dfs.replication
调整)。 -
副本分布策略:HDFS遵循以下原则分布副本:
-
第一个副本:优先存储在客户端所在的节点(如果客户端在集群外,则随机选择一个节点)。
-
第二个副本:存储在与第一个副本不同机架的节点上。
-
第三个副本:存储在与第二个副本相同机架的另一个节点上。
-
更多副本:随机分布在集群的其他节点上。
-
-
机架感知(Rack Awareness):
-
HDFS通过机架感知策略,确保副本分布在不同的机架上,以防止机架故障导致的数据丢失。
-
机架信息由管理员配置(通常通过脚本或配置文件实现)。
-
2. 副本机制的工作流程
-
写入数据时:
<