即将过期的对象 - Amazon Simple Storage Service
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

即将过期的对象

当一个对象根据其生命周期配置达到其生命周期终点时,Amazon S3 会根据存储桶所处的状态采取行动。

  • 不受版本控制的存储桶 – Amazon S3 会将该对象加入移除队列并异步移除该对象,从而永久移除该对象。

  • 受版本控制的存储桶 – 如果当前对象版本不是删除标记,Amazon S3 将添加具有唯一的版本 ID 的删除标记。这会使当前对象版本变为非当前版本,并使删除标记变为当前版本。

  • 已暂停版本控制的存储桶 – Amazon S3 创建版本 ID 为 null 的删除标记。此删除标记会在版本层次结构中将任何对象版本替换为 null 版本 ID,从而实际上删除对象。

对于受版本控制的存储桶(也即,已启用版本控制或已暂停版本控制),有一些指导 Amazon S3 如何处理过期操作的注意事项。对于启用版本控制或暂停版本控制的存储桶,以下内容适用:

  • 对象过期仅适用于对象的当前版本(它对非当前对象版本没有影响)。

  • 如果有一个或多个对象版本,并且删除标记是当前版本,则 Amazon S3 不会执行任何操作。

  • 如果当前对象版本是唯一的对象版本并且它还是删除标记(也称为过期对象删除标记,在这种情况下,所有对象版本都已删除,您只剩下一个删除标记),则 Amazon S3 将删除过期对象删除标记。您还可以使用过期操作来指示 Amazon S3 移除所有过期对象删除标记。有关示例,请查看 示例 7:移除过期对象删除标记

有关更多信息,请参阅在 S3 存储桶中使用版本控制

重要

当您在 S3 生命周期配置中有多个规则时,对象可能变得有资格执行多个 S3 生命周期操作。在这种情况下,Amazon S3 遵循以下一般规则:

  • 永久删除优先于转换。

  • 转换优先于删除标记的创建。

  • 当对象有资格进行 S3 Glacier Flexible Retrieval 和 S3 Standard-IA(或 S3 One Zone-IA)转换时,Amazon S3 将选择 S3 Glacier Flexible Retrieval 转换。

有关示例,请参阅示例 5:重叠的筛选条件、冲突的生命周期操作,以及 Amazon S3 如何处理非版本化的存储桶

如何查找对象何时过期

要找出对象计划过期的时间,可使用 HEAD 对象GET 对象 API 操作。这些 API 操作返回的响应标头提供了对象不再可供缓存的日期和时间。

注意
  • 过期日期和 Amazon S3 删除对象的日期之间可能会有一段延迟。对象过期后,不会再向您收取相关的过期或存储时间费用。

  • 在更新、禁用或删除生命周期规则之前,请使用 LIST API 操作(例如 ListObjectsV2ListObjectVersionsListMultipartUploads)或 Amazon S3 清单,根据您的应用场景验证 Amazon S3 是否已过渡符合条件的对象并使其过期。

最小存储持续时间收费

如果您创建的 S3 生命周期过期规则将促使在 S3 Standard-IA 或 S3 One Zone-IA 存储中存储不到 30 天的对象过期,则您需要支付 30 天的费用。如果您创建的生命周期过期规则将促使存储在 S3 Glacier Flexible Retrieval 存储中不到 90 天的对象过期,则您需要支付 90 天的费用。如果您创建的生命周期过期规则将促使存储在 S3 Glacier Deep Archive 存储中不到 180 天的对象过期,则您需要支付 180 天的费用。

有关更多信息,请参阅 Amazon S3 定价