存储帐户的 Azure 存储可伸缩性和性能目标Azure Storage scalability and performance targets for storage accounts

本文详细介绍了 Azure 存储帐户的可伸缩性和性能目标。This article details the scalability and performance targets for Azure storage accounts. 以下所列的可伸缩性和性能目标为高端目标,但却是能够实现的。The scalability and performance targets listed here are high-end targets, but are achievable. 在任何情况下,存储帐户实现的请求速率和带宽取决于存储对象大小、使用的访问模式、应用程序执行的工作负荷类型。In all cases, the request rate and bandwidth achieved by your storage account depends upon the size of objects stored, the access patterns utilized, and the type of workload your application performs.

请务必测试服务,以确定其性能是否达到要求。Be sure to test your service to determine whether its performance meets your requirements. 如果可能,应避免流量速率突发峰值,并确保流量在各个分区上均匀分布。If possible, avoid sudden spikes in the rate of traffic and ensure that traffic is well-distributed across partitions.

当应用程序达到分区能够处理的工作负荷极限时,Azure 存储将开始返回错误代码 503(服务器忙)或错误代码 500(操作超时)响应。When your application reaches the limit of what a partition can handle for your workload, Azure Storage begins to return error code 503 (Server Busy) or error code 500 (Operation Timeout) responses. 如果发生 503 错误,请考虑修改应用程序以使用指数退避策略进行重试。If 503 errors are occurring, consider modifying your application to use an exponential backoff policy for retries. 使用指数退让策略,可以减少分区上的负载,缓解该分区的流量高峰。The exponential backoff allows the load on the partition to decrease, and to ease out spikes in traffic to that partition.

存储帐户缩放限制Storage account scale limits

下表介绍 Azure 常规用途 v1、v2 和 Blob 存储帐户的默认限制。The following table describes default limits for Azure general-purpose v1, v2, and Blob storage accounts. “传入” 限制是指请求中发送到存储帐户的所有数据。The ingress limit refers to all data from requests that are sent to a storage account. “传出” 限制是指响应中从存储帐户接收的所有数据。The egress limit refers to all data from responses that are received from a storage account.

ResourceResource 默认限制Default limit
每个订阅每个区域的存储帐户数,包括标准帐户和高级帐户Number of storage accounts per region per subscription, including both standard and premium accounts 250250
最大存储帐户容量Maximum storage account capacity 500 TB500 TB
每个存储帐户的 Blob 容器、Blob、文件共享、表、队列、实体或消息数上限Maximum number of blob containers, blobs, file shares, tables, queues, entities, or messages per storage account 无限制No limit
每个存储帐户的最大请求速率1Maximum request rate1 per storage account 每秒 20,000 个请求20,000 requests per second
每个存储帐户的最大入口1Maximum ingress1 per storage account 如果已启用 RA-GRS/GRS,则为 5 Gbps;对于 LRS,为 10 Gbps25 Gbps if RA-GRS/GRS is enabled, 10 Gbps for LRS2
常规用途 v2 存储帐户和 Blob 存储帐户的最大出口Maximum egress for general-purpose v2 and Blob storage accounts 50 Gbps50 Gbps
常规用途 v1 存储帐户的最大出口Maximum egress for general-purpose v1 storage accounts 如果已启用 RA-GRS/GRS,则为 10 Gbps;对于 LRS,为 15 Gbps210 Gbps if RA-GRS/GRS is enabled, 15 Gbps for LRS 2

1 Azure 标准存储帐户根据请求支持更高的容量上限和更高的入口上限。1Azure Standard Storage accounts support higher capacity limits and higher limits for ingress by request. 若要请求提高帐户入口上限,请与 Azure 支持联系。To request an increase in account limits for ingress, contact Azure Support.

2 如果启用了读取访问权限 (RA-GRS),则辅助位置的出口目标与主位置的出口目标相同。2 If you have Read-access enabled (RA-GRS), the egress targets for the secondary location are identical to those of the primary location. Azure 存储复制选项包括:Azure Storage replication options include:

Note

大多数情况下,建议使用常规用途 v2 存储帐户。We recommend that you use a general-purpose v2 storage account for most scenarios. 可以轻松将常规用途 v1 或 Azure Blob 存储帐户升级到常规用途 v2 帐户,无需停机且无需复制数据。You can easily upgrade a general-purpose v1 or an Azure Blob storage account to a general-purpose v2 account with no downtime and without the need to copy data.

有关 Azure 存储帐户的详细信息,请参阅存储帐户概述For more information on Azure Storage accounts, see Storage account overview.

如果应用程序的需求超过单个存储帐户的伸缩性目标,则可以构建使用多个存储帐户的应用程序。If the needs of your application exceed the scalability targets of a single storage account, you can build your application to use multiple storage accounts. 然后,可以将数据对象分布到这些存储帐户中。You can then partition your data objects across those storage accounts. 有关批量定价的信息,请参阅 Azure 存储定价For information on volume pricing, see Azure Storage pricing.

所有存储帐户都在扁平网络拓扑上运行,无论它们创建于何时,都支持本文所述的可伸缩性和性能目标。All storage accounts run on a flat network topology and support the scalability and performance targets outlined in this article, regardless of when they were created. 有关 Azure 存储的扁平网络体系结构和可伸缩性的详细信息,请参阅 Azure 存储:具有高度一致性的高可用云存储服务For more information on the Azure Storage flat network architecture and on scalability, see Azure Storage: A Highly Available Cloud Storage Service with Strong Consistency.

高级性能存储帐户缩放限制Premium performance storage account scale limits

高级性能、常规用途 v1 或 v2 存储帐户有以下可伸缩性目标:Premium performance, general-purpose v1, or v2 storage accounts have the following scalability targets:

总帐户容量Total account capacity 本地冗余存储帐户的总带宽Total bandwidth for a locally redundant storage account
磁盘容量:35 TBDisk capacity: 35 TB
快照容量:10 TBSnapshot capacity: 10 TB
为入站1 和出站2 流量提供最高 50 Gbps 的带宽Up to 50 gigabits per second for inbound1 + outbound2

1 发送到存储帐户的所有数据(请求)1 All data (requests) that are sent to a storage account

2 从存储帐户接收的所有数据(响应)2 All data (responses) that are received from a storage account

如果要对非托管磁盘使用高级性能存储帐户并且应用程序超过了单个存储帐户的可伸缩性目标,可以考虑迁移到托管磁盘。If you are using premium performance storage accounts for unmanaged disks and your application exceeds the scalability targets of a single storage account, you might want to migrate to managed disks. 如果不想迁移到托管磁盘,请将应用程序构建为使用多个存储帐户。If you don't want to migrate to managed disks, build your application to use multiple storage accounts. 然后,在这些存储帐户中将数据分区。Then, partition your data across those storage accounts. 例如,如果要将 51-TB 的磁盘附加到多个 VM,请将这些磁盘分散在两个存储帐户中。For example, if you want to attach 51-TB disks across multiple VMs, spread them across two storage accounts. 35 TB 是单个高级存储帐户的限制。35 TB is the limit for a single premium storage account. 请确保单个高级性能存储帐户永远不会超过 35 TB 的预配磁盘。Make sure that a single premium performance storage account never has more than 35 TB of provisioned disks.

存储资源提供程序缩放限制Storage resource provider scale limits

仅当使用 Azure 资源管理器对 Azure 存储执行管理操作时,以下限制才适用。The following limits apply only when you perform management operations by using Azure Resource Manager with Azure Storage.

资源Resource 默认限制Default limit
存储帐户管理操作数(读取)Storage account management operations (read) 每 5 分钟 800 次800 per 5 minutes
存储帐户管理操作数(写入)Storage account management operations (write) 每小时 200 次200 per hour
存储帐户管理操作数(列出)Storage account management operations (list) 每 5 分钟 100 次100 per 5 minutes

Azure Blob 存储缩放目标Azure Blob storage scale targets

ResourceResource 目标Target
单个 Blob 容器的最大大小Maximum size of single blob container 与最大存储帐户容量相同Same as maximum storage account capacity
块 Blob 或附加 Blob 中的块数上限Maximum number of blocks in a block blob or append blob 50,000 块50,000 blocks
块 Blob 中块的最大大小Maximum size of a block in a block blob 100 MiB100 MiB
块 Blob 的最大大小Maximum size of a block blob 50,000 X 100 MiB(大约 4.75 TiB)50,000 X 100 MiB (approximately 4.75 TiB)
附加 Blob 中块的最大大小Maximum size of a block in an append blob 4 MiB4 MiB
附加 Blob 的最大大小Maximum size of an append blob 50,000 x 4 MiB(大约 195 GiB)50,000 x 4 MiB (approximately 195 GiB)
页 Blob 的最大大小Maximum size of a page blob 8 TiB8 TiB
每个 Blob 容器存储的访问策略的最大数目Maximum number of stored access policies per blob container 55
单个 Blob 的目标吞吐量Target throughput for single blob 上限为存储帐户的传入/传出限制1Up to storage account ingress/egress limits1

1 单一对象吞吐量取决于多个因素,包括但不限于:并发性、请求大小、性能层、源上传速度和目标下载速度。1 Single object throughput depends on several factors, including, but not limited to: concurrency, request size, performance tier, speed of source for uploads, and destination for downloads. 若要利用高吞吐量块 Blob 性能增强功能,请使用 4 MiB 以上(Data Lake Storage Gen2 则为 256 KiB 以上)的放置 Blob 或放置块请求大小。To take advantage of high-throughput block blob performance enhancements, use a Put Blob or Put Block request size of > 4 MiB (> 256 KiB for Data Lake Storage Gen2).

Azure 文件规模目标Azure Files scale targets

有关 Azure 文件缩放和性能目标的详细信息,请参阅 Azure 文件可伸缩性和性能目标For more information on the scale and performance targets for Azure Files, see Azure Files scalability and performance targets.

ResourceResource 标准文件共享Standard file shares
文件共享的最小大小Minimum size of a file share 没有最小值;提前支付No minimum; pay in advance
文件共享的最大大小Maximum size of a file share 5 TiB5 TiB
文件共享中文件的最大大小Maximum size of a file in a file share 1 TiB1 TiB
文件共享中的文件数上限Maximum number of files in a file share 无限制No limit
每个共享的最大 IOPSMaximum IOPS per share 1,000 IOPS1,000 IOPS
每个文件共享的存储的访问策略的最大数目Maximum number of stored access policies per file share 55
单个文件共享的目标吞吐量Target throughput for a single file share 最多 60 MiB/秒Up to 60 MiB/sec
单个文件共享的最大流出量Maximum egress for a single file share 查看标准文件共享目标吞吐量See standard file share target throughput
单个文件共享的最大流入量Maximum ingress for a single file share 查看标准文件共享目标吞吐量See standard file share target throughput
每个文件打开图柄的最大数目Maximum open handles per file 2,000 个打开句柄2,000 open handles
共享快照的最大数目Maximum number of share snapshots 200 个共享快照200 share snapshots
最大对象(目录和文件)名称长度Maximum object (directories and files) name length 2,048 个字符2,048 characters
最大路径名组成部分(在路径 \A\B\C\D 中,每个字母是一个组成部分)Maximum pathname component (in the path \A\B\C\D, each letter is a component) 255 个字符255 characters

Azure 队列存储缩放目标Azure Queue storage scale targets

资源Resource 目标Target
单个队列的最大大小Maximum size of a single queue 500 TiB500 TiB
队列中消息的最大大小Maximum size of a message in a queue 64 KiB64 KiB
每个队列存储的访问策略的最大数目Maximum number of stored access policies per queue 55
每个存储帐户的最大请求速率Maximum request rate per storage account 每秒 20,000 条消息,假定消息大小为 1-KiB20,000 messages per second, which assumes a 1-KiB message size
单个队列的目标吞吐量(1-KiB 消息)Target throughput for a single queue (1-KiB messages) 每秒最多 2,000 条消息Up to 2,000 messages per second

Azure 表存储缩放目标Azure Table storage scale targets

ResourceResource 目标Target
单个表的最大大小Maximum size of a single table 500 TiB500 TiB
表实体的最大大小Maximum size of a table entity 1 MiB1 MiB
表实体中属性的最大数目Maximum number of properties in a table entity 255,包含三个系统属性:PartitionKey、RowKey 和 Timestamp255, which includes three system properties: PartitionKey, RowKey, and Timestamp
实体中属性值的最大总大小Maximum total size of property values in an entity 1 MiB1 MiB
实体中单个属性的最大总大小Maximum total size of an individual property in an entity 因属性类型而异。Varies by property type. 有关详细信息,请参阅了解表服务数据模型中的属性类型For more information, see Property Types in Understanding the Table Service Data Model.
每个表存储的访问策略的最大数目Maximum number of stored access policies per table 55
每个存储帐户的最大请求速率Maximum request rate per storage account 20,000 事务/秒,假定实体大小为 1-KiB20,000 transactions per second, which assumes a 1-KiB entity size
单个表分区的目标吞吐量(1 KiB 实体)Target throughput for a single table partition (1 KiB-entities) 每秒最多 2,000 个实体Up to 2,000 entities per second

另请参阅See also