一、场景 当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倍
注意点:
生产环境值修改太大,会影响网络,导致其他跑批有影响