Cloud Storage 软删除简介

2024 年 3 月,Cloud Storage 发布了一项名为软删除的新功能,该功能与所有现有的 Cloud Storage 功能相兼容。它提供了一种保留和恢复最近删除的数据的方法,可以针对意外和恶意数据删除提供更好的保护。

软删除功能发布后,我们对所有新存储桶和现有存储桶启用了该功能,默认提供 7 天的保护。我们选择默认启用软删除,因为根据我们的客户调查问卷显示,意外和恶意的数据删除事件一直高居数据保护问题之首。对于大多数工作负载而言,软删除应提供高度的保护,而不会对结算造成较大的影响。

您可以通过停用软删除功能或将保护期限延长至最长 90 天,从而更改针对每个存储桶的保护期限。由于被软删除的对象对您的工作负载不可见,因此,启用软删除应是一个完全透明的更改,不会影响您的生产工作流。

本页提供了您可能觉得有用的软删除功能的相关信息,包括该功能的基本作用、促销价格和促销后价格,以及如何评估和更改软删除设置。

功能概览

通过在您选择的保留期(默认为 7 天,该保留期可延长至 90 天,也可以完全停用)内保留最近删除的对象,软删除可提供存储桶级保护,防止意外或恶意删除。通过使用自助恢复功能,您可以从这些不幸发生的事件中恢复。

软删除如何保护对象

通常,删除对象这一操作无法撤消。但是,启用软删除后,被删除的对象会进入软删除状态,您仍然可以从该状态恢复被删除的对象。无论对象被删除的原因是什么 - 无论是被删除 API 删除、被插入/复制/重写 API 覆盖、通过界面被删除,还是由于对象生命周期管理政策而被删除,此恢复操作都可行。

被软删除的对象是指除非指定了特定选项,否则会在对象列表中隐藏的特殊不可读对象。被软删除的对象在被保留指定的软删除保留期后将被永久删除,并且一旦对象进入软删除状态,该保留期将无法被覆盖(无法提前永久删除被软删除的对象)。这针对意外删除和恶意删除事件提供了重大保护。

恢复的工作原理

恢复操作可将一个或多个被软删除的对象复制回它们从中被删除的同一存储桶,使这些对象可作为实时对象再次被访问。您可以通过提供特定的对象列表来执行同步恢复,也可以执行长时间运行的异步操作,该操作将恢复两个时间戳之间删除的所有对象。作为新创建的对象,被恢复的对象具有新的创建日期。使用 Autoclass 时,所有被恢复的对象都将以 Standard Storage 存储类别重新开始生命周期。否则,系统将使用与对象被删除时相同的存储类别创建被恢复的对象。

请务必设置足够长的软删除保留期,以便在发生后悔的删除事件时能够检测到这些事件并完成恢复。按照每小时大约恢复 1,000 万个对象的速率,恢复 10 亿个对象需要 4 天的时间,因此,针对非常大的存储桶,将保留期延长至 7 天以上是明智之举。

软删除还提供针对存储桶级删除事件的保护。如果发生存储桶级删除事件,请首先联系 Google 寻求帮助,以重新创建被删除的存储桶。之后,您可以使用恢复功能恢复该存储桶中的对象。

软删除价格

软删除功能正在促销中,促销期从 2024 年 3 月发布之日起到 2024 年 8 月 31 日结束,在此期间,存储被软删除数据的前 7 天不会产生额外费用。从 2024 年 9 月 1 日起,对于对象自被删除以来处于软删除状态的所有时间,我们将开始按现有价格对现有存储 SKU 的用量进行计费。由于软删除默认会将数据保留 7 天,因此,为了避免对所有结算造成影响,请确保在 2024 年 8 月 25 日之前停用软删除功能。

在 2024 年 9 月 1 日之前,除非您执行恢复操作和/或延长存储桶的软删除保留期,否则软删除不会对结算造成影响。我们这样做的目的是给您留出合理的时间来评估软删除功能对未来结算的影响,并根据您的预算和业务需求,就跨存储桶使用的最佳软删除设置做出明智的决策。

由于所有软删除用量都将计入现有 SKU,因此,任何现有折扣将继续适用于软删除功能产生的任何费用。

请注意,自 2024 年 9 月 1 日起,如果存储桶启用了软删除,对于只有一个存在时间条件的已删除对象,对象生命周期管理结算例外情况将不再适用,这与启用了对象版本控制功能后的情况一致。

静态存储的价格

软删除对结算的主要影响将是针对与被软删除的数据关联的使用量每月额外计费的存储费用。在对象被软删除后,我们将继续根据位置和存储类别对现有存储 SKU 用量进行计费,直到该对象的软删除保留期结束为止。例如,对于 us-east4 中一个 Standard Storage 存储类别的对象,当该对象为实时对象时,我们会按 us-east4 Standard Storage 存储类别 SKU 对它进行计费;在该对象被软删除后,我们会继续按相同的费率针对同一 SKU 对它进行计费,直到它的软删除保留期结束为止(默认为 7 天)。

如上所述,在从软删除功能发布之日起到 2024 年 8 月 31 日为止的促销期内,存储被软删除数据的前 7 天不会产生额外费用。

提前删除费用

对象处于软删除状态的时间将计入任何适用的最短存储时间,具体取决于存储类别和 Autoclass 状态。这对您是有利的,因为启用软删除后,您可以更轻松地满足最短存储时间,避免产生提前删除费用。例如,在不使用 Autoclass 的存储桶中,Nearline Storage 存储类别的最短存储时间为 30 天。在未启用软删除的情况下,如果在 23 天后删除对象,则会产生 7 天的提前删除费用。如果启用了默认保留 7 天的软删除,对象将被收取 30 天的存储费用(包括软删除期),因此不会产生提前删除费用。

列出和恢复被软删除对象的费用

执行恢复操作不会产生按 GiB 处理费用。这包括在恢复 Nearline、Coldline 或 Archive 对象时不会产生任何检索费用。

与恢复相关的操作的主要费用是与存储桶的位置类型相关的 A 类操作。对于您提供了要恢复的特定对象列表的同步恢复,我们将针对恢复的每个对象计量一次 A 类操作。无论对象的实际存储类别是什么,此操作始终将作为标准 A 类操作计费,因为我们不想对恢复较冷对象进行惩罚。对于我们首先必须确定要恢复哪些对象的异步恢复,我们还将在开始恢复之前对每一千个扫描的对象收取一次标准 A 类操作的费用。

由于恢复操作会在您的存储桶中创建一个具有新创建日期的新实时对象,因此,在恢复流程创建该新对象后,我们将对该对象进行正常计费,并且所有正常的价格和存储时间要求都将适用于该新对象。我们将继续对这些被恢复对象的软删除版本进行计费,尽管根据 7 天的默认软删除保留期,通常只会有几天的重叠。

评估影响并自定义设置

Google 决定默认启用软删除,因为我们认为该功能是将使大多数客户受益的一项高价值功能,并且在大多数情况下不会对结算造成较大的影响。但是,您可能认为 7 天软删除保留政策不适用于您的部分或全部 Cloud Storage 存储桶。在 2024 年 8 月 25 日之前,您应对所有不需要这项保护的存储桶(例如包含大量短期临时数据的存储桶)停用软删除。相反,对于需要为关键业务数据提供更多保护的存储桶,您也可以选择将 7 天的保留期延长至 90 天。

为帮助您评估软删除功能是否适用于您的存储桶并自动执行设置,除了以下信息外,您可能还需要查看 Managing Cloud Storage soft delete at scale(大规模管理 Cloud Storage 软删除)这一博文,获取最佳实践和示例脚本。此博文还说明了如何通过 Terraform 模板修改软删除设置。

增强型存储指标

我们正在增强 Cloud Monitoring 存储指标,以便您可以检查任何存储桶上的当前字节数、非当前字节数和被软删除的字节数。

对于已启用软删除的存储桶,要检查软删除功能对结算的影响,最简单的方法是查看 storage/v2/total_bytes 指标,该指标为您提供在上次使用日结束时存储桶中所有对象的总大小,这些对象按存储类别和对象类型(实时、非当前、被软删除)分组。如果您比较被软删除的字节数相对于总字节数的百分比,则可以很好地估算软删除对您每月存储费用的结算影响(前提是您的删除操作是以相对稳定的速率执行的,以便它们被此指标所捕获)。

我们还添加了一个新的 storage/v2/deleted_bytes 指标,该指标提供每个存储桶中已删除字节的增量计数(按存储类别分组)。即使停用软删除,您也可以将此指标与 total_bytes 指标一起使用来比较删除率,从而估算软删除对特定存储桶的结算影响。

示例:

  • 如需计算软删除的绝对结算影响,您可以使用 storage/v2/deleted_bytes 指标,该指标衡量一段时间内删除的字节数。软删除的绝对费用计算方式如下:软删除保留期 × 删除的字节数 × $/GiB 每月价格。例如,对于 us-central1 中存储类别为 Standard Storage 的一个存储桶,一年内的删除量为 100,000 GB,如果对该存储桶启用 7 天软删除政策,那么按定价计算的费用为 7 / 30.4375 × 100,000 × $0.02 = $459.96(其中,30.4375 为每月的平均天数)。
  • 如需计算软删除的相对费用,您可以将 storage/v2/deleted_bytes 指标与 storage/v2/total_byte_seconds 指标组合使用:软删除保留期 × 删除的字节数 / 总字节数。继续上面的示例,假设该存储桶一年有每月 1,000,000 GB 的存储空间,在这种情况下,启用软删除的相对费用为:7 / 30.4375 × 100,000 / 1,000,000 = 大约 2% 的影响。

对于那些使用对象版本控制的人,请注意,我们会将实时与非当前字节和对象计数作为新指标的一部分公开(这是新的可见性),即使对于那些选择停用软删除功能的人来说也可能很有用。

在新指标推出后,存储指标文档中将提供有关增强型指标的完整信息。

如何自定义软删除设置?

您可以为每个存储桶单独调整软删除保留期。若要停用软删除功能,请将其保留期更改为零。我们将提供示例脚本,以帮助您评估您的所有存储桶是否适合软删除功能并自动更新设置 - 即使针对数百万个存储桶也是如此。此外,您不妨考虑自定义 TerraformKCC 脚本中以及其他存储桶创建工作流中的软删除设置,让创建的新存储桶具有符合您业务需求的设置。 

最后,您可以创建组织政策限制条件,以对新创建的存储桶强制执行特定软删除设置。

Google Cloud
  • ‪English‬
  • ‪Deutsch‬
  • ‪Español‬
  • ‪Español (Latinoamérica)‬
  • ‪Français‬
  • ‪Indonesia‬
  • ‪Italiano‬
  • ‪Português (Brasil)‬
  • ‪简体中文‬
  • ‪繁體中文‬
  • ‪日本語‬
  • ‪한국어‬
控制台