在将 Amazon EMR 与 Amazon S3 一起使用时,具有 _$folder$ 后缀的空文件出现在 S3 存储桶中。能否安全地删除这些文件?

上次更新时间:2019 年 10 月 22 日

使用 Amazon EMR 将数据传输至 Amazon Simple Storage Service (Amazon S3) 或传出其中的数据时,若干个具有“_$folder$”后缀的空文件出现在 S3 存储桶中。这些文件是什么,删除它们是否安全?

解决方法

“_$folder$”文件为占位符。当您使用 -mkdir 命令在 S3 存储桶中创建文件夹时,Apache Hadoop 将会创建这些文件。在放置第一个对象之前,Hadoop 不会创建此文件夹。如果在放置至少一个对象之前删除“_$folder$”文件,则 Hadoop 无法创建该文件夹。这会导致出现“无此文件或目录”错误。

一般而言,最好不要删除“_$folder$”文件。这样做可能会导致 Amazon EMR 作业出现性能问题。例外情况是,如果从 Amazon S3 中手动删除此文件夹,然后尝试在 Amazon EMR 作业中或使用 Hadoop 命令重新创建文件夹。如果在尝试重新创建此文件夹之前未删除“_$folder$”文件,则会收到“文件已存在”错误。


这篇文章对您有帮助吗?

我们可以改进什么?


需要更多帮助吗?