如何提升HDFS节点退役时的副本迁移效率?
- 内容介绍
- 文章标签
- 相关推荐
本文共计275个文字,预计阅读时间需要2分钟。
一、场景:当HDFS更换机器时,需要导出当前节点数据时,通过查看NameNode节点50070web服务,发现问题:发现正在迁移的数据节点blocks数据过大,约一千多万个block,大小约5T,速度太慢了。
一、场景当hdfs更换机器需要退役当前节点数据时候,通过查看namenode节点50070web服务
问题:发现正在迁移的节点数据blocks太大,一千多万个block,大约在5T左右,速度太慢了,基本上得跑3周,20天左右才能把数据迁移完
要注意在decommisstion in progress状态的时候来做。
方法:
界面添加自定义参数:
dfs.namenode.replication.max-streams dfs.namenode.replication.work.multiplier.per.iteration dfs.namenode.replication.max-streams-hard-limit
值要大于或者等于dfs.namenode.replication.max-streams
默认参数是2/4/2,可以修改为10/20/5
效果:
测试2w个blocks(15G左右),速度提升4-5倍
注意点:
生产环境值修改太大,会影响网络,导致其他跑批有影响
本文共计275个文字,预计阅读时间需要2分钟。
一、场景:当HDFS更换机器时,需要导出当前节点数据时,通过查看NameNode节点50070web服务,发现问题:发现正在迁移的数据节点blocks数据过大,约一千多万个block,大小约5T,速度太慢了。
一、场景当hdfs更换机器需要退役当前节点数据时候,通过查看namenode节点50070web服务
问题:发现正在迁移的节点数据blocks太大,一千多万个block,大约在5T左右,速度太慢了,基本上得跑3周,20天左右才能把数据迁移完
要注意在decommisstion in progress状态的时候来做。
方法:
界面添加自定义参数:
dfs.namenode.replication.max-streams dfs.namenode.replication.work.multiplier.per.iteration dfs.namenode.replication.max-streams-hard-limit
值要大于或者等于dfs.namenode.replication.max-streams
默认参数是2/4/2,可以修改为10/20/5
效果:
测试2w个blocks(15G左右),速度提升4-5倍
注意点:
生产环境值修改太大,会影响网络,导致其他跑批有影响

