我是HDFS的新手,很抱歉,如果我的问题太天真了。
假设我们将文件存储在Hadoop集群中。有些文件非常受欢迎,并且会经常请求(但不是经常将它们放在内存中)而不是另一个。 值得保留该文件的更多副本(副本)。
我可以在HDFS中实现它,还是有任何最佳实践来解决这个问题?
答案 0 :(得分:1)
是的,您可以单独为整个群集/目录/文件执行此操作。
您可以使用Hadoop FS shell在每个文件的基础上更改复制因子(例如3)。
[sys@localhost ~]$ hadoop fs –setrep –w 3 /my/file
或者,您可以更改目录下所有文件的复制因子(假设为3)。
[sys@localhost ~]$ hadoop fs –setrep –w 3 -R /my/dir
将整个HDFS的复制更改为1:
[sys@localhost ~]$ hadoop fs -setrep -w 1 -R /
但复制因子应位于 dfs.replication.max 和 dfs.replication.min 值之间。