HDFS复制因子发生变化

use*_*193 7 hdfs

如果在群集中更改复制因子,例如,从5到3并且群集重新启动,那么旧文件块会发生什么?它们是否会被视为过度复制并被删除或复制因素仅适用于新文件?这意味着旧文件块被复制5次,新文件块(重启后)被复制3次.如果未重新启动群集会发生什么?

Har*_*h J 11

如果在群集中更改复制因子,例如,从5到3并且群集重新启动,那么旧文件块会发生什么?

现有/旧文件块没有任何反应.

它们是否会被视为过度复制并被删除或复制因素仅适用于新文件?

新复制因子仅适用于新文件,因为复制因子不是HDFS范围的设置,而是每文件属性.

这意味着旧文件块被复制5次,新文件块(重启后)被复制3次.

它的反转.复制因子设置为3的现有文件将继续携带3个块.使用较高默认复制因子创建的新文件将包含5个块.

如果未重新启动群集会发生什么?

如果重新启动或未重新启动群集,则不会发生任何事情.由于该属性是每个文件,并且在创建文件时由客户端引导,因此不需要群集重新启动来更改此配置.您只需要更新您的客户端配置.

如果您希望更改所有旧文件的复制因子,请考虑运行复制更改器命令: hadoop fs -setrep -R 5 /