gpt4 book ai didi

Hadoop DistCp 通过重命名处理相同的文件名

转载 作者:可可西里 更新时间:2023-11-01 14:20:04 25 4
gpt4 key购买 nike

有什么方法可以运行 DistCp,但可以选择在文件名冲突时重命名?也许用一个例子来解释是最容易的。

假设我正在将 hdfs:///foo 复制到 hdfs:///bar,foo 包含这些文件:

hdfs:///foo/a
hdfs:///foo/b
hdfs:///foo/c

bar 包含这些:

hdfs:///bar/a
hdfs:///bar/b

然后在复制之后,我希望 bar 包含如下内容:

hdfs:///bar/a
hdfs:///bar/a-copy1
hdfs:///bar/b
hdfs:///bar/b-copy1
hdfs:///bar/c

如果没有这样的选择,最可靠/最有效的方法是什么?我自己开发的 distcp 版本当然可以完成它,但这似乎需要大量工作并且很容易出错。基本上,我根本不关心文件名,只关心它们的目录,我想定期将大量数据复制到“合并”目录中。

最佳答案

Distcp 没有那个选项。如果您为此使用 Java API,则可以通过检查目标路径是否存在并更改路径(如果它已经存在)来轻松处理。您可以使用 exists(Path p) 方法检查 FileSystem 对象。

关于Hadoop DistCp 通过重命名处理相同的文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23479536/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com