1
我在hdfs中有一个目录,每两天获取一次文件。我想将这个目录中的所有文件复制到另一个文件中,这样如果今天有新文件出现,我希望将文件复制到重复目录中。将数据从一个HDFS目录复制到另一个连续
我们如何在Hdfs中做到这一点。
我知道我们可以在linux中使用rsync来做到这一点。在Hdfs中也有类似的方法吗?
我在hdfs中有一个目录,每两天获取一次文件。我想将这个目录中的所有文件复制到另一个文件中,这样如果今天有新文件出现,我希望将文件复制到重复目录中。将数据从一个HDFS目录复制到另一个连续
我们如何在Hdfs中做到这一点。
我知道我们可以在linux中使用rsync来做到这一点。在Hdfs中也有类似的方法吗?
不,HDFS没有可用的文件同步方法。您必须手动或通过任何调度程序(cron
)执行hdfs dfs -cp
或hadoop distcp
。
如果文件数量多,distcp
是首选。如果源和目标的大小,块大小,或校验和不同
hadoop distcp -update <src_dir> <dest_dir>
的-update
标志将覆盖。
'distcp''-update'就像你说的覆盖整个目录。有没有办法只检查是否只有变化,如果有变化,然后只更新那些变化 – User12345
不,它只覆盖更改。如果源有10个文件,并且目标已经有5个文件,distcp将只写剩余的5个文件到目的地。这个更新标志将检查那些已经存在的5个文件中是否有更新,如果有更新会被覆盖或者被跳过。 – franklinsijo