New Azure VMs that perform close to on-prem servers?!
- Jeff Taylor
- 1 day ago
- 2 min read
Updated: 20 hours ago
Working with large databases, multi-terabyte in size, I've had clients who have wanted to move to the cloud. However, after testing and comparing the performance of what Azure offered, it hasn't made sense from a performance and cost perspective. To achieve even close to the performance of an on-premises server, one might end up spending close to the purchase price of a new server each month ($33,000+).
Drum roll please....!
Microsoft has, just fresh out of preview right now, new shiny Azure VMs that perform closer to on-prem performance than ever before!

There are three flavors of these new VMs.
We will start with my favorite, as it offers the most performance.
FXmdsv2 Series

Check this out! Up to 96 CPUs, almost 2 TB of RAM, Local disk storage up to 6 disks at 8,640 MBps with up to 1.8 million IOPS (with that speed, that's local NVMe), remote storage at up to 10k MBps and 400k IOPS with a network max of 70k MBps
I'm not sure about you, but I could run a few large databases with these specs. Here is a link to the full information for this flavor of VM.https://learn.microsoft.com/en-us/azure/virtual-machines/sizes/compute-optimized/fxmdsv2-series?tabs=sizeaccelerators
FX Series

Check this out! Up to 48 CPUs, up to 1,008GB of RAM, Local disk storage up to 3,871 MBps with up to 80k IOPS, remote storage at up to 1,258 MBps and 80k IOPS with a network max of 32k MBps.
FXmsv2 Series

The FXmsv2 and FX series are identical, except for one item: local storage. This flavor does not have local storage.
Blazing Fast Local Storage
For SQL Server, local storage is great for tempdb, or buffer pool extensions, which would allow for extremely low latency. If you were to provision one of the first two VMs with over 1,000 MBps, I would bet you have zero or close to zero I/O latency.
Notes
A couple of things to keep in mind...
'Local Storage' seems like it would be permanent storage, just like 'Remote Storage' is actually 'Temporary Local Storage'. This means that each time you reboot, the drive is wiped clean. This also means that if you place your tempdb on this drive in anything but the 'root' drive, you will need to create those folders before SQL Server starts, as it will fail when trying to create tempdb in a folder that doesn't exist.
The first time you provision or if you deallocate and reallocate your server, you will need to format the temporary 'Local Storage' like you would for an old 'on-prem' drive in your server. Here is a link with instructions on formatting your NVMe drives.
These servers are also offered as 'constrained vCPUs', so you can save some money on your per-core SQL Server Enterprise licensing.
Conclusion
With these three new VM series, placing a larger, more performant, and cost-effective database server in the cloud is a possibility.