Designing Solutions using Azure Premium Storage

Designing Solutions using Azure Premium Storage

Azure Premium Storage

I was talking to a friend and we were discussing on the right capacity sizing on Microsoft Azure Cloud. Picking right size of VM that has enough CPU, Memory and Network capability to support the workload. In this article, we will consolidate the Azure Premium Storage options available on Microsoft official sites that will help all of us to size the Infrastructure carefully.

For example – If we need to size Oracle database on Azure, we  need to know size of data that will be on Azure and also the IO per second (IOPS) required by the database so that its current sizing and future limitations are known before hand.

Some key points to remember on Azure Premium Storage –

  • Premium Storage is available only for Azure DS and GS series Virtual Machines
  • Azure DS and GS series Virtual Machines support Standard and Performance disks
  • They provide up to 80,000 IOPS and 2000 MBps bandwidth per VM for GS Series VMs
  • They provide up to 50,000 IOPS and 512 MBps bandwidth per VM for DS Series VMs
  • Premium Storage is available only for Page Blobs
  • The Input/Output (I/O)  size is 256KB
  • Supports up to 64 TB Storage, less than 1 milisecond latency for read operations.
  • Supports up to 35 TB of Storage per Storage account
  • Premium Storage supports LRS replication (Locally Redundant), giving 3 copies of your data. For Geo-replication, you could use snapshots that are taken on Standard storage.
  • Up to 10 TB of Snapshots can be taken per Storage account
  • Total number of Snapshots can be up to 100 per Premium Storage account


Premium Storage Disk Type

It is important to know the various disk size options, IOPS and network throughput options available within Azure Premium Storage and accordingly choose the right size Virtual Machine [VM].

Storage Disk Type P10 P20 P30
Disk Size 128 GiB 512 GiB 1024 Gib (1TB)
IOPS per Disk 500 2300 5000
Throughput per Disk 100 MBPS 150 MBPS 200 MBPS

Azure DS and GS Series Virtual Machines

Standard Tier VMs : DS Series

Size CPU (Cores) Memory (GB) Data Disks (1023 GB) IOPS / Bandwidth (MBPS
Standard_DS1 1 3.5 2 3,200 / 32 MB
Standard_DS2 2 7 4 6,400 / 64 MB
Standard_DS3 4 14 8 12,800 / 128 MB
Standard_DS4 8 28 16 25,600 / 256 MB
Standard_DS11 2 14 4 6,400 / 64 MB
Standard_DS12 4 28 8 12,800 / 128MB
Standard_DS13 8 56 16 25,600 / 256 MB
Standard_DS14 16 112 32 50,000 / 512 MB

Standard Tier VMs : GS Series

Size CPU (Cores) Memory (GB) Data Disks (1023 GB) IOPS / Bandwidth (MBPS)
Standard_GS1 2 28 4 5,000 / 125 MB
Standard_GS2 4 56 8 10,000 / 250 MB
Standard_GS3 8 112 16 20,000 / 500 MB
Standard_GS4 16 224 32 40,000 / 1,000 MB
Standard_GS5 32 448 64 80,000 / 2,000 MB

Looking at the table above, you need to pick the VMs size and Storage type accordingly. For example, a Standard_DS1 VM with P10 Performance Storage will only give you 32 MB/s throughput even though P10 supports 100 MB/s network bandwidth. This is because Standard_DS1 VM only provides up to 32 MB/s network throughput.

We recommend to use multiple Storage accounts if you need more throughput and Storage capacity. A Storage account supports up to 35TB of Storage. So if you need more Storage then use multiple accounts, and provision Hard disks accordingly for your use.

How to attach Premium Storage to Azure Virtual Machine

You first need to create Azure Premium Storage account and then use Azure PowerShell to create and add Virtual hard disk to Azure Virtual Machine.

New-AzureStorageAccount -StorageAccountName "yourpremiumaccount" -Location "West US" -Type "Premium_LRS"

Type – “Premium_LRS” is the key here to create Premium Storage account

$storageAccount = "yourpremiumaccount"
$vmName ="yourVM"
$vm = Get-AzureVM -ServiceName $vmName -Name $vmName
$LunNo = 1
$path = "http://" + $storageAccount + "" + "myDataDisk_" + $LunNo + "_P1O.vhd"
$label = "Disk " + $LunNo
Add-AzureDataDisk -CreateNew -MediaLocation $path -DiskSizeInGB 128 -DiskLabel $label -LUN $LunNo -HostCaching ReadOnly -VM $vm | Update-AzureVm

The above command will add additional disk to an existing Virtual Machine created on Azure Premium Storage.

I hope you would have liked this article. I will add more content on Azure Capacity Planning, Storages shortly. In the meanwhile, please drop comments if you have any question.


About The Author

Related posts

Leave a Reply

Your email address will not be published. Required fields are marked *