我有一个S3存储桶,该存储桶不会删除过期的对象删除标记。
存储桶是:
我设置的生命周期规则(如下图):
我仔细检查并删除(使用UI EDIT:和生命周期规则)一堆对象,并且能够验证生命周期规则确实在1天的间隔后确实删除了原始对象,但是删除标记(现在技术上已过期的对象删除标记)仍然存在。已经5天了,删除标记仍然保留。为了将删除标记也永久删除,我还需要做些其他事情吗?
答案 0 :(得分:2)
事实证明,答案是:耐心。生命周期规则DID最终清理了过期的对象删除标记。
我已经删除了约100TB的数据,因此它生成了很多过期的对象删除标记-因此,AWS用了1个星期以上的时间来删除它们。在获得客户支持后-他们提到了一些有助于理解这一点的东西,请强调:
请注意,生命周期可能需要一些时间才能真正实现 使对象过期或删除标记,即使将其标记为 合格,并将它们放入队列。因此,尽管S3停止充电一次 这些对象被标记为过期,它们可能会继续存在直到 生命周期实际上使它们到期。此外,此持续时间为 还受到该产品生命周期服务总体负载的影响 特定的AWS区域。
话虽如此,请注意S3生命周期最终将 使符合条件的对象过期/过渡,但是它没有 修正了要依赖的SLA。在大多数用例中,这是正常现象 并且可以接受。对于需要及时清理的用例 删除标记,最好有一些其他过程 同步删除这些删除标记,而不是等待 最终清洁它们的生命周期。