覆盖期间 Azure Blob 可用性

2024-02-15

天蓝色的 blob 在被新版本覆盖时是否可供下载?

根据我使用 Cloud Storage Studio 的测试,下载被阻止,直到覆盖完成,但是我的测试来自同一台计算机,因此我无法确定这是正确的。

如果它在覆盖期间不可用,那么我认为解决方案(以保持可用性)将是使用不同的 blob 名称上传,然后在完成后重命名。有没有人有比这更好的解决方案?


该 blob 在覆盖期间可用。但是,您看到的内容取决于您使用的是块 blob 还是页 blob。对于块 blob,您将下载旧版本,直到最终块提交。最终的 PutBlockList 操作将以原子方式将 blob 更新到新版本。然而,我实际上不确定对于非常大的 blob,您正在下载 PutBlockList 以原子方式更新 blob 时会发生什么。选择是:a.) 请求继续使用较旧的 blob,b.) 连接已断开,或者 c:) 您开始下载新 blob 的字节。测试是多么有趣的事情啊!

如果您使用页面 blob(没有租约),则当页面范围在您下方更新时,您将读取不一致的数据。每个页面范围更新都是原子的,但它看起来很奇怪,除非您租用 blob 并将其他读取器排除在外(读取器可以快照租用的 blob 并读取状态)。

我可能会尝试在读取场景中测试块 blob 更新,看看会发生什么。但是,您的核心问题应该得到回答:该 blob 可用。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

覆盖期间 Azure Blob 可用性 的相关文章

随机推荐