将 Amazon EMR 与 Amazon S3 结合使用时,能否安全地删除 Amazon S3 存储桶中带有 _$folder$ 后缀的空文件?

1 分钟阅读
0

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

解决方法

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

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


相关信息

上传数据到 Amazon S3

配置输出位置

AWS 官方
AWS 官方已更新 3 年前