gpt4 book ai didi

hadoop - 如何防止 `hadoop fs rmr ` 创建 $folder$ 文件?

转载 作者:可可西里 更新时间:2023-11-01 16:21:07 26 4
gpt4 key购买 nike

我们正在使用 Amazon 的 Elastic Map Reduce 来执行一些大型文件处理作业。作为我们工作流程的一部分,我们偶尔需要从 S3 中删除可能已经存在的文件。我们使用 hadoop fs 接口(interface)这样做,如下所示:

hadoop fs -rmr s3://mybucket/a/b/myfile.log

这会适本地从 S3 中删除文件,但会在原处留下一个名为“s3://mybucket/a/b_$folder$”的空文件。如 this question 中所述, Hadoop 的 Pig 无法处理这些文件,因此工作流中的后续步骤可能会因该文件而阻塞。

(请注意,我们使用-rmr 还是-rm 还是使用s3:// 似乎并不重要或 s3n:// 作为方案:所有这些都表现出所描述的行为。)

如何使用 hadoop fs 接口(interface)从 S3 中删除文件并确保不留下这些麻烦的文件?

最佳答案

我无法确定是否可以通过这种方式使用 hadoop fs 接口(interface)。然而,s3cmd 接口(interface)做正确的事情(但一次只针对一个键):

s3cmd del s3://mybucket/a/b/myfile.log

这需要先使用您的 AWS 凭证配置一个 ~/.s3cfg 文件。 s3cmd --configure 将以交互方式帮助您创建此文件。

关于hadoop - 如何防止 `hadoop fs rmr <uri>` 创建 $folder$ 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5749272/

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