Azure Blob - 直接存储到存档层

Posted

技术标签:

【中文标题】Azure Blob - 直接存储到存档层【英文标题】:Azure blobs - Store directly to archive tier 【发布时间】:2019-03-20 02:09:30 【问题描述】:

我按照https://docs.microsoft.com/en-us/azure/storage/blobs/storage-quickstart-blobs-python 的快速入门学习了如何使用 python 将文件作为 blob 存储上传到 Azure。

由于我想将其用作 DR 解决方案并希望最大限度地降低成本,因此我想使用存档层。

我知道我可以在上传 Blob 后立即使用 def set_standard_blob_tier(self, container_name, blob_name, standard_blob_tier, timeout=None)

但是,如果可能的话,我更喜欢将其直接上传到存档层(而不是将其上传到默认层,即热或冷然后移动它)。

所以我有几个问题:

    有可能吗?如果是,如何?

    由于我是云新手,这两个选项之间的总成本有什么不同吗? (如您所见,目前,每个 blob 将在冷却层中停留几秒钟,然后再移动到存档层,因此这段时间可能会产生成本,此外,层之间的传输也会产生成本)。

谢谢!

【问题讨论】:

【参考方案1】:

有可能吗?如果是,怎么做?

目前无法将 blob 直接上传到存档层。您需要在热层或冷层中上传 Blob,然后在上传后将层更改为存档。

由于我对云还很陌生,因为在术语上存在任何差异 两个选项之间的总成本? (如您所知,目前, 每个 blob 将在冷却层中停留几秒钟,然后再移动到 存档层,因此可能会有一段时间的成本,并且在 此外,层之间的转移成本)。

不确定我是否理解这个问题,但每个访问层(热、冷和存档)对存储和交易成本都有不同的定价。热层具有最高的存储和最低的交易成本,而归档层具有最低的存储和最高的交易成本。

此外,将层从存档更改为热层或冷层是一项耗时的操作(而相反的操作几乎是瞬间完成的)。

此外,如果您在归档 blob 后的 6 个月内将 blob 从归档层移至热/冷层,您将被罚款。

请在此处阅读有关存储层的更多信息:https://docs.microsoft.com/en-us/azure/storage/blobs/storage-blob-storage-tiers。

更新

    将等级从“酷”更改为“存档”是否需要付费?

是的。将层从酷更改为存档是有成本的。如果我没记错的话,将层从酷更改为存档被视为写入操作。如果您在美国西部地区为 10000 个 blob 执行此操作,那么您只需为这 10000 个 blob 支付 0.11 美元。因此,如果您为 100 个 blob 执行此操作,您将支付 $0.0011 ($0.11 * 100 / 10000)。

    我会为文件在酷层中的几秒钟付费吗 (在上传和移至存档之间)?

再次,答案是肯定的。定价将取决于您在凉爽层中存储的数据量以及在哪个区域存储多长时间。例如,如果您在美国西部地区将 1 GB 的数据存储在 Cool tier 中一个月,您将支付 0.0152 美元。您只需要计算按比例分配的金额即可。

有关定价的更多信息,请参阅此链接:https://azure.microsoft.com/en-us/pricing/details/storage/blobs/。

【讨论】:

谢谢!我将尝试澄清这个问题:目前,因为我无法直接上传到存档层,我需要将其上传到酷层,然后将其更改为存档(上传后立即)。 1. 从酷到存档需要付费吗? 2. 我会为文件在酷层中的几秒钟(上传和移动到存档之间)收费吗? 更新了我的答案。 HTH。【参考方案2】:

根据存档层发布的最新功能,支持直接上传到“存档”层。

不过,我认为目前 Python SDK 还不支持。 (支持 .Net/Java)

https://azure.microsoft.com/en-in/blog/azure-archive-storage-expanded-capabilities-faster-simpler-better/

    将 blob 直接上传到选择的访问层(热、冷或存档)

【讨论】:

如果您不认为这将支持 Python SDK,那么它不会回答所提出的问题。 Python SDK 目前不支持,但我认为最终会支持。刚刚更新,直接上传功能将于 2020 年 4 月 21 日正式发布

以上是关于Azure Blob - 直接存储到存档层的主要内容,如果未能解决你的问题,请参考以下文章

是否始终需要对(Azure Blob 存储)存档层进行再水化?

Azure Javascript SDK 无法为具有访问层“存档”的 Blob 复制 Blob (sync/beginCopyBlobUrl)

Azure Blob PHP SDK - 直接从自定义多部分 API 请求上传到 Azure 存储

通过直接 URL 浏览时上传到 Azure Blob 存储的图像不可用

直接从浏览器将文件上传到 Azure Blob 存储?

直接从前端将数据上传到 Azure Blob 存储时的安全问题