有没有一种方法可以过滤不在 Azure Blob 存档层中的 blob?
Is there a way we can filter blobs that are not in archive tier in Azure Blob?
我有一个 blob 容器说“演示”。它有很多文件,很少在热层,很少在归档层。我只想处理那些处于热状态的文件,忽略存档层文件。
- 使用 getmetadata activity 列出所有文件,包括存档层文件
- 使用“az storage blob list throws”错误 - 'This operation is not permitted on an archived blob.'
请指引我正确的方向。
您可以使用 List Blobs
操作,其中 return 是指定容器下的 blob 列表。
方法:GET
请求 URI:https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list
HTTP 版本:HTTP/1.1
这将 return XML 格式的响应正文,您稍后可以根据访问层名称进行过滤。
在上面的URI中,如果不是自动使用最新版本,还需要提供参数include={versions=2019-12-12}
。
For version 2017-04-17 and above, List Blobs returns the AccessTier
element if an access tier has been explicitly set. For Blob Storage or
General Purpose v2 accounts, valid values are Hot/Cool/Archive. If the
blob is in rehydrate pending state then ArchiveStatus
element is
returned with one of the valid values
rehydrate-pending-to-hot
/rehydrate-pending-to-cool
.
参考List Blobs了解更多详情。
我有一个 blob 容器说“演示”。它有很多文件,很少在热层,很少在归档层。我只想处理那些处于热状态的文件,忽略存档层文件。
- 使用 getmetadata activity 列出所有文件,包括存档层文件
- 使用“az storage blob list throws”错误 - 'This operation is not permitted on an archived blob.'
请指引我正确的方向。
您可以使用 List Blobs
操作,其中 return 是指定容器下的 blob 列表。
方法:GET
请求 URI:https://myaccount.blob.core.windows.net/mycontainer?restype=container&comp=list
HTTP 版本:HTTP/1.1
这将 return XML 格式的响应正文,您稍后可以根据访问层名称进行过滤。
在上面的URI中,如果不是自动使用最新版本,还需要提供参数include={versions=2019-12-12}
。
For version 2017-04-17 and above, List Blobs returns the
AccessTier
element if an access tier has been explicitly set. For Blob Storage or General Purpose v2 accounts, valid values are Hot/Cool/Archive. If the blob is in rehydrate pending state thenArchiveStatus
element is returned with one of the valid valuesrehydrate-pending-to-hot
/rehydrate-pending-to-cool
.
参考List Blobs了解更多详情。