您现在访问的是微软AZURE全球版技术文档网站,若需要访问由世纪互联运营的MICROSOFT AZURE中国区技术文档网站,请访问 https://docs.azure.cn.

Blob 数据的热访问层、冷访问层和存档访问层

存储在云中的数据以指数速度增长。 要管理不断扩展的存储需求产生的成本,根据访问频率和保留期整理数据将很有帮助。 Azure 存储提供不同的访问层,以便你可以基于使用方式,以最具成本效益的方式存储 Blob 数据。 Azure 存储访问层包括:

  • 热层 - 适用于存储经常访问或修改的数据的联机层。 热层的存储成本最高,但访问成本最低。
  • 冷层 - 适用于存储不经常访问或修改的数据的联机层。 冷层中的数据应至少存储 30 天。 与热层相比,冷层的存储成本较低,访问成本较高。
  • 存档层 - 适用于存储极少访问且延迟要求(以小时计)不严格的数据的脱机层。 存档层中的数据应至少存储 180 天。

Azure 存储容量限制在帐户级别设置,而不是根据访问层设置。 可以选择在一个层中最大化容量使用率,也可以在两个或更多层中分布容量。

联机访问层

当你的数据存储在联机访问层(热层或冷层)中时,用户可以立即访问它。 热层是正在活跃使用的数据的最佳选择,而冷层适用于不常访问但仍必须可供读取和写入的数据。

热层的示例使用方案包括:

  • 处于活跃使用状态或预期会频繁读取和写入的数据。
  • 分阶段进行处理并最终迁移至冷访问层的数据。

冷访问层的使用方案包括:

  • 短期数据备份和灾难恢复。
  • 不经常使用但应立即可用的较旧数据集。
  • 需要经济高效地进行存储并且要收集其他数据以进行处理的大型数据集。

冷层中的数据的可用性略低,但提供与热层相同的高持久性、检索延迟和吞吐量特征。 对于冷层中的数据,略低的可用性和较高的访问成本可能是为了获得更低的整体存储成本(与热层相比)而可接受的折衷。 有关详细信息,请参阅存储的 SLA

如果常规用途 v2 帐户冷层中的某个 Blob 在存储到冷层不足 30 天的时间内被删除或移动到其他层,则会受到提前删除惩罚。 此项费用按比例计算。 例如,如果将某个 Blob 移到冷层,然后在 21 天后将其删除,则需支付相当于将该 Blob 存储在冷层中 9(30 减 21)天的提前删除费用。

热层和冷层支持所有冗余配置。 若要详细了解 Azure 存储中的数据冗余选项,请参阅 Azure 存储冗余

存档访问层

存档层是用于存储极少访问的数据的脱机层。 与热层和冷层相比,存档访问层的存储成本最低,但数据检索成本和延迟较高。 存档访问层的示例使用方案包括:

  • 长期备份、辅助备份和存档数据集
  • 必须保留的原始数据,即使它已处理成最终可用的形式
  • 需要长时间存储并且几乎不访问的合规性和存档数据

数据必须在存档层中保留至少 180 天,否则会产生提前删除费用。 例如,如果将某个 Blob 移到存档层,然后在 45 天后将其删除或移到热层,则需支付相当于将该 Blob 存储在存档层中 135(180 减 45)天的早期删除费用。

当 blob 位于存档层时,无法对其进行读取或修改。 若要读取或下载存档层中的 Blob,必须先将 Blob 解除冻结到联机层(热层或冷层)。 存档层中的数据可能最多需要 15 小时才能解除冻结,具体取决于为解除冻结操作指定的优先级。 有关 blob 解除冻结的详细信息,请参阅存档层中的 blob 解除冻结概述

存档 Blob 的元数据仍可供读取访问,以便你可以列出 Blob 及其属性、元数据和索引标记。 存档层中的 Blob 的元数据是只读的,但 Blob 索引标记是可读或可写的。 存档 Blob 不支持快照。

存档层中的 Blob 支持以下操作:

备注

ZRS、GZRS 或 RA-GZRS 帐户不支持存档层。 支持从 LRS 迁移到 GRS,前提是帐户设置为 LRS 时,没有 blob 被移动到存档层。 如果在帐户成为 LRS 后的 30 天内执行更新,并且在帐户设置为 LRS 时没有 Blob 被移动到存档层,则可以将该帐户移回到 GRS。

默认帐户访问层设置

存储帐户有一个默认访问层设置,表示创建新的 Blob 的联机层。 默认访问层设置可以设置为热层或冷层。 用户可以在上传 Blob 或更改其层时覆盖单个 Blob 的默认设置。

默认情况下,新的常规用途 v2 存储帐户的默认访问层设置为热层。 创建存储帐户时或创建存储帐户后,可以更改默认访问层设置。 如果在上传 Blob 时未更改存储帐户的此设置,而且也没有明确设置层,则默认情况下会将新 Blob 上传到热层。

如果 Blob 没有显式分配的层,则会从默认帐户访问层设置推断相应的层。 如果 Blob 的访问层是根据默认帐户访问层设置推断得出的,则 Azure 门户会将访问层显示为“热(推断)”或“冷(推断)”。

更改存储账户的默认访问层设置适用于帐户中尚未显式设置访问层的所有 Blob。 如果在常规用途 v2 帐户中将默认访问层设置从“热”切换为“冷”,则按推断访问层的所有 Blob 的写入操作次数(以 10,000 次为单位)收费。 如果在常规用途 v2 帐户中从冷切换为热,则会按读取操作次数(以 10,000 次为单位)和数据检索量(以 GB 为单位)收费。

创建旧 Blob 存储帐户时,必须在创建时将默认访问层设置指定为热或冷。 在旧 Blob 存储帐户中,将默认帐户访问层设置从热更改为冷是免费的。 如果在 Blob 存储帐户中从冷切换为热,则会按读取操作次数(以 10,000 次为单位)和数据检索量(以 GB 为单位)收费。 Microsoft 建议尽可能使用常规用途 v2 存储帐户,而不是 Blob 存储帐户。

备注

存档层不支持作为存储帐户的默认访问层。

设置或更改 Blob 的层

若要在创建 Blob 时显式设置其层,请在上传 Blob 时指定层。

创建 Blob 后,可以通过以下两种方式之一更改其层:

  • 直接或通过生命周期管理策略调用设置 Blob 层操作。 将 Blob 的层从较热的层更改为较冷的层时,调用设置 Blob 层通常是最佳选择。
  • 调用复制 Blob 操作以将 Blob 从一个层复制到另一个层。 对于大多数将 Blob 从存档层解除冻结到联机层或将 Blob 从冷层移动到热层的方案中,建议调用复制 Blob。 如果源 Blob 的所需存储间隔尚未过去,则可以通过复制 Blob 来避免提前删除惩罚。 但是,复制 Blob 会导致产生两个 Blob,即源 Blob 和目标 Blob 的容量费用。

将 Blob 的层从热层更改为冷层或存档层是即时的,就像从冷层更改为热层一样。 将 Blob 从存档层解除冻结到热层或冷层可能最多需要 15 小时。

在冷层和存档层之间移动 Blob 时,请注意以下几点:

  • 如果根据存储帐户的默认访问层,Blob 的层已推断为冷层,并且该 Blob 被移到存档层,则无需支付提前删除费用。
  • 如果 Blob 显式移动到冷层,然后移动到存档层,则会收取提前删除费用。

下表总结了在各个层之间移动 Blob 时可以采用的方法。

源/目标 热层 冷层 存档层
热存储层 不可用 使用“设置 Blob 层”或“复制 Blob”将 Blob 的层从热更改为冷 。 了解详细信息...

使用生命周期管理策略将 Blob 移动到冷层。 了解详细信息...
使用“设置 Blob 层”或“复制 Blob”将 Blob 的层从热更改为存档 。 了解详细信息...

使用生命周期管理策略存档 Blob。 了解详细信息...
冷存储层 使用“设置 Blob 层”或“复制 Blob”将 Blob 的层从冷更改为热 。 了解详细信息...

使用生命周期管理策略将 Blob 移动到热层。 了解详细信息...
不可用 使用“设置 Blob 层”或“复制 Blob”将 Blob 的层从冷更改为存档 。 了解详细信息...

使用生命周期管理策略存档 Blob。 了解详细信息...
存档存储层 使用“设置 Blob 层”或“复制 Blob”将数据层解除冻结到热层 。 了解详细信息... 使用“设置 Blob 层”或“复制 Blob”将数据层解除冻结到冷层 。 了解详细信息... 不可用

Blob 生命周期管理

Blob 存储生命周期管理提供基于规则的策略,用于在满足指定条件时将数据转移到所需的访问层。 还可以使用生命周期管理在生命周期结束时使数据过期。 请参阅通过自动执行 Azure Blob 存储访问层来优化成本来了解详细信息。

备注

无法使用设置 Blob 层或使用 Azure Blob 存储生命周期管理将存储在高级块 Blob 存储帐户中的数据分层到热、冷或存档访问层。 若要移动数据,必须使用通过 URL 放置块 API 或支持此 API 的 AzCopy 版本,将块 Blob 存储帐户中的 Blob 同步复制到其他帐户中的热层。 通过 URL 放置块 API 同步复制服务器上的数据,这意味着只有在所有数据都从原服务器位置移动到目标位置后,调用才会完成。

访问层选项摘要

下表汇总了热、冷和存档访问层的功能。

热存储层 冷存储层 存档存储层
可用性 99.9% 99% Offline
可用性
(RA-GRS 读取)
99.99% 99.9% Offline
使用费 存储成本较高,但访问和事务成本较低 存储成本较低,但访问和事务成本较高 存储成本最低,但访问和事务成本最高
建议的最短数据保留期 空值 30 天1 180 天
延迟
(距第一字节时间)
毫秒 毫秒 小时2
受支持的冗余配置 全部 全部 仅限 LRS、GRS 和 RA-GRS3

1 常规用途 v2 帐户冷层中的对象的最短保留期为 30 天。 对于 Blob 存储帐户,冷层没有最短保留期。

2 从存档层解除冻结 Blob 时,可以选择标准或高解除冻结优先级选项。 每个选项的检索延迟和成本有所不同。 有关详细信息,请参阅存档层中的 Blob 解除冻结概述

3 有关 Azure 存储中的冗余配置的详细信息,请参阅 Azure 存储冗余

定价和计费

所有存储帐户使用的定价模型都适用于块 Blob 存储,具体取决于 Blob 的层。 请记住以下部分中所述的计费注意事项。

有关块 Blob 定价的详细信息,请参阅块 Blob 定价

存储容量成本

除了存储的数据量,存储数据的成本将因访问层而异。 层越冷,每 GB 容量成本越低。

数据访问成本

层越冷,数据访问费用越高。 对于冷访问层和存档访问层中的数据,需要按 GB 支付读取方面的数据访问费用。

事务成本

层越冷,每个层的按事务收费越高。

异地复制数据传输成本

此费用仅适用于配置了异地复制的帐户,包括 GRS 和 RA-GRS。 异地复制数据传输会产生每 GB 费用。

出站数据传输成本

出站数据传输(从 Azure 区域传输出的数据)需按每 GB 的带宽使用量计费。 有关出站数据传输费用的详细信息,请参阅带宽定价详细信息页。

更改默认帐户访问层

更改帐户访问层会导致尚未显式设置层的所有 Blob 产生层更改费。 有关详细信息,请参阅以下部分:更改 Blob 的访问层

更改 Blob 的访问层

更改 Blob 的层时,请记住以下计费影响:

  • 在各个层之间上传或移动 blob 时,系统会在上传时或层发生更改时立即按相应的费率收费。
  • 将 Blob 移到更冷的层(热到冷、热到存档或冷到存档)时,操作按目标层写入操作计费,具体来说就是按目标层的写入操作次数(以 10,000 次为单位)和数据写入量(以 GB 为单位)收费。
  • 将 Blob 移到更暖的层(存档到冷、存档到热或冷到热)时,操作按从源层读取计费,具体来说就是按源层的读取操作次数(以 10,000 次为单位)和数据检索量(以 GB 为单位)收费。 也可能还会收取从池或存档层移出的任何 Blob 的早期删除费用。
  • 从存档层解除冻结某个 Blob 时,该 Blob 的数据将按存档数据收费,直到数据还原且 Blob 的层更改为热层或冷层为止。

下表总结了如何对层更改进行计费。

写入费用(操作 + 访问) 读取费用(操作 + 访问)
“设置 Blob 层”操作 “热”到“冷”
热到存档
冷到存档
“存档”到“冷”
“存档”到“热”
冷到热

当版本控制已启用或 Blob 包含快照时,更改 Blob 的访问层可能会产生额外费用。 有关启用了版本控制的 blob 的信息,请参阅 blob 版本控制文档中的定价和计费。 有关包含快照的 Blob 的信息,请参阅 Blob 快照文档中的定价和计费

功能支持

下表显示你的帐户如何支持此功能,以及启用某些功能后对支持的影响。

存储帐户类型 Blob 存储(默认支持) Data Lake Storage Gen2 1 NFS 3.0 1 SFTP 1
标准常规用途 v2 是 是 是 是
高级块 blob 否 否 否 否

1 Data Lake Storage Gen2、网络文件系统 (NFS) 3.0 协议和安全文件传输协议 (SFTP) 支持都需要一个启用了分层命名空间的存储帐户。

有关功能支持(按区域)的信息,请参阅可用的 Azure 产品(按区域)

后续步骤