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

标签 hadoop replication

我有一个关于 hadoop 复制的问题。

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

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

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

是否有任何选项可以使此更改持久化?

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

最佳答案

如果您想要默认复制因子以外的东西,则需要在创建文件时明确设置复制因子。

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

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

关于hadoop - 如何使文件的 hadoop 复制因子更改持久化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16810463/

相关文章:

replication - 使用 CouchDB 进行选择性复制

security - CouchDB 中的基本 HTTP 身份验证对于跨 EC2 区域的复制是否足够安全?

hadoop - Distcp - 容器运行超出物理内存限制

hadoop - pig 脚本问题

hadoop - 为什么 BytesWritable.setSize(size) 使字节空间为 1.5*size?

Postgresql 复制 : londiste vs. slony

hadoop - Hadoop 映射器如何处理部分溢出到下一个 block 的记录?

hadoop - 无效的作业 session 异常 : Output directory not set

database - 嵌入式沙发数据库

mysql - 何时以及如何使用 mysql ReplicationConnection 和 ReplicationDriver?