【发布时间】:2019-05-17 15:16:24
【问题描述】:
我们正试图从我们的一个 blob 存储帐户中移动一些数据,但我们受到了限制。
最初,我们获得了 9gbps,但很快我们就被限制到了 1.1gbps。
我们还开始收到错误消息,说 Azure 强行关闭了连接并且我们遇到了网络超时。
有没有人经历过这种情况或对不断增加的限制有任何了解?
【问题讨论】:
标签: azure blob azure-blob-storage
我们正试图从我们的一个 blob 存储帐户中移动一些数据,但我们受到了限制。
最初,我们获得了 9gbps,但很快我们就被限制到了 1.1gbps。
我们还开始收到错误消息,说 Azure 强行关闭了连接并且我们遇到了网络超时。
有没有人经历过这种情况或对不断增加的限制有任何了解?
【问题讨论】:
标签: azure blob azure-blob-storage
根据Azure subscription and service limits, quotas, and constraints的官方文档Storage limits,您的方案有一些限制,不能如下所示。
- 每个存储帐户的最大请求速率1:每秒 20,000 个请求
- 最大出口:
- 对于通用 v2 和 Blob 存储帐户(所有区域):50 Gbps
- 对于通用 v1 存储帐户(美国地区):如果启用 RA-GRS/GRS,则为 20 Gbps,对于 LRS/ZRS 2,为 30 Gbps
- 对于通用 v1 存储帐户(非美国区域):如果启用 RA-GRS/GRS,则为 10 Gbps,对于 LRS/ZRS 2,为 15 Gbps
- 单个 blob 的目标吞吐量:每秒最多 60 MiB,或每秒最多 500 个请求
考虑到将数据下载到本地环境,除了您的网络带宽和稳定性,您必须计算每个 blob 的最大并发请求数不超过 500 和所有请求的总数不超过 20,000 如果你愿意以编程方式移动数据。所以它是高并发控制的关键。
如果只是通过编程在Azure内部移动数据,最好的方法是使用官方传输数据工具AzCopy(用于Windows或Linux)和Azure Data Factory。那么您就无需考虑这些限制,只需等待移动进度完成即可。
如有任何疑问,请随时告诉我。
【讨论】:
max concurrent number of requests per blob not over 500没有找到这个,你是怎么得到这个的?