【问题标题】:Azure Blob Storage: How to enumerate blobs in long-running and recoverable fashion?Azure Blob 存储:如何以长期运行和可恢复的方式枚举 Blob?
【发布时间】:2017-09-04 20:12:19
【问题描述】:

我需要在冗长的操作中枚举数百万个 blob。来自List Blobs documentation,我仍然有以下问题:

  • NextMarker 值的持续时间或到期时间是多少?
  • 我可以在不同的 HTTPS 连接上使用 NextMarker 的值吗?可能来自另一台机器(IP 地址)?
  • 我能否使用NextMarker 的相同值多次调用 List Blob API?他们都会返回下一页吗? (如果每次调用的页面可能不同,我可以 - 我不需要 100% 的可靠性)。

【问题讨论】:

    标签: c# rest azure azure-storage azure-blob-storage


    【解决方案1】:

    正如您在doc 中看到的,NextMarker 只是一个字符串,它代表要枚举的下一个 blob。所以你的问题的答案是:

    1. NextMarker 值没有过期时间。
    2. 您可以在不同的 HTTPS 连接或另一台计算机(IP 地址)上使用它。
    3. 您可以使用相同的 NextMarker 值多次调用 List Blob API,只要您没有在两个 List Blob 请求之间更改容器的内容,它们都会返回下一页。

    【讨论】:

    • 我看到了,但我引用的文档说:“请注意,NextMarker 的值应该被视为不透明。”理想情况下,MS 应该说明这些功能。但是给你似乎是一个权威来源,我会将此标记为解决方案。谢谢!
    • 我上面提到的只是 Azure Blob 存储服务的当前行为,但是鉴于 REST API 文档并没有明确宣布该行为,官方文档说“注意 NextMarker 的值应该是视为不透明”,服务可能会在未来更改实现。
    猜你喜欢
    • 2014-08-06
    • 2021-03-26
    • 2019-04-16
    • 1970-01-01
    • 2016-08-30
    • 2016-06-16
    • 2012-03-02
    • 2016-03-04
    • 2016-09-12
    相关资源
    最近更新 更多