Azure Storage IOPS

Understand why performance might suffer if you have more than 40 virtual disks in a single storage account.

John Savill

September 17, 2014

1 Min Read
problems and solutions signs

Q: I have a lot of disks in an Azure storage account, and performance seems to be suffering—why?

A: Each disk attached to a standard-tier virtual machine has a 500 I/O operations per second (IOPS) limit. However, each storage account also has an IOPS limit, which is currently 20,000 as documented in "Azure Subscription and Service Limits, Quotas, and Constraints." This is important because it means if you have more than 40 disks in a single storage account then you'll hit the storage account limit before the actual disk limit, and performance will start to suffer. It's therefore important to not have more than 40 disks in a single storage account if you intend to push the disks to their IOPS limit.

An easy way to check the number of disks in a storage account that are actually attached to virtual machines is through the following PowerShell code:

Get-AzureDisk | Where-Object {$_.AttachedTo } | Group-Object {$_.Medialink.Host.Split('.')[0]} -NoElement

This code will output the number of disks attached to a virtual machine for each storage account. If you see a number greater than 40, you should move storage—especially if you're seeing performance issues.

About the Author

Sign up for the ITPro Today newsletter
Stay on top of the IT universe with commentary, news analysis, how-to's, and tips delivered to your inbox daily.

You May Also Like