gpt4 book ai didi

hadoop - HDFS 中的 block 复制限制

转载 作者:可可西里 更新时间:2023-11-01 15:00:30 24 4
gpt4 key购买 nike

我目前正在重建具有区域服务器和数据节点的服务器。当我关闭一个数据节点时,10 分钟后,它所拥有的 block 将在其他数据节点之间重新复制,这是应该的。我们有 10 个数据节点,因此在重新复制 block 时我看到网络流量很大。但是,我发现每台服务器的流量大约只有 500-600mbps(所有机器都有千兆位接口(interface)),所以它绝对不受网络限制。我试图弄清楚是什么限制了数据节点发送和接收 block 的速度。每个数据节点有六个 7200 rpm sata 驱动器,在此期间 IO 使用率非常低,每个驱动器的峰值仅为 20-30%。 hdfs 是否内置了限制 block 复制速度的限制?

最佳答案

复制工作的速率受 HDFS 限制,以便在常规集群加载期间发生故障时不会干扰集群流量。

控制这个的属性是dfs.namenode.replication.work.multiplier.per.iteration (2), dfs.namenode.replication.max -streams (2)dfs.namenode.replication.max-streams-hard-limit (4)。最重要的是在每次发生心跳时控制要调度到 DN 的工作速率,另外两个进一步限制 DataNode 一次完成的最大并行线程网络传输。 () 中的值表示它们的默认值。在 https://hadoop.apache.org/docs/current/hadoop-project-dist/hadoop-hdfs/hdfs-default.xml 上可以找到对此的一些描述。

您也许可以尝试将值集分别增加到 (10, 50, 100) 以改善网络使用(需要重启 NameNode),但请注意,由于更多的设置,您的 DN 内存使用可能会略有增加阻止信息传播给它。 DN 角色的这些值的合理堆大小约为 4 GB。

附言这些值不是我亲自在生产系统上尝试过的。您也不希望最大化重新复制工作负载,从而影响正常的集群工作,因为由于缺乏网络资源,恢复 1/3 副本的优先级可能低于丢失作业/查询 SLA(除非您有非常快速的网络,即使在负载期间也始终未得到充分利用)。尝试调整它,直到您对结果满意为止。

关于hadoop - HDFS 中的 block 复制限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17599498/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com