如何使文件持久化的hadoop复制因子更改

时间:2013-05-29 09:39:43

标签: hadoop replication

我有关于hadoop复制的问题。

我使用下面提到的命令更改了hadoop中特定目录中文件的复制因子:

hadoop dfs -setrep -R 3 -w /data/routing

成功并将此目录中所有文件的复制因子设置为3。但是,在此目录下写入的任何新文件仍然具有默认复制因子,即2

是否有任何选项可以使此更改持续存在?

实际上我希望在此目录下编写的所有新文件始终具有复制因子3,而不管默认复制因子是什么。

1 个答案:

答案 0 :(得分:1)

如果您需要默认复制因子以外的其他内容,则需要在创建文件时显式设置复制因子。

目录下的文件是通过mapreduce作业创建的,还是手动使用其他进程?

对于mapreduce,只需更改/设置默认复制因子的作业配置值 - dfs.replication。如果您在某些Java代码中手动创建文件,请查看FileSystem.create(Path, short)的API