When building a virtual server in Azure, it can be somewhat of a guessing game when determining which setting will yield the best performance for your new instances. In this article by Jason Roth we get a few helpful tips on what setting make sense for your SQL Server instances in Azure.
Quick check list
The following is a quick check list for optimal performance of SQL Server on Azure Virtual Machines:
|VM size||DS3 or higher for SQL Enterprise edition.
DS2 or higher for SQL Standard and Web editions.
|Storage||Use Premium Storage. Standard storage is only recommended for dev/test.
Keep the storage account and SQL Server VM in the same region.
Disable Azure geo-redundant storage (geo-replication) on the storage account.
|Disks||Use a minimum of 2 P30 disks (1 for log files; 1 for data files and TempDB).
Avoid using operating system or temporary disks for database storage or logging.
Enable read caching on the disk(s) hosting the data files and TempDB.
Do not enable caching on disk(s) hosting the log file.
Important: Stop the SQL Server service when changing the cache settings for an Azure VM disk.
Stripe multiple Azure data disks to get increased IO throughput.
Format with documented allocation sizes.
|I/O||Enable database page compression.
Enable instant file initialization for data files.
Limit or disable autogrow on the database.
Disable autoshrink on the database.
Move all databases to data disks, including system databases.
Move SQL Server error log and trace file directories to data disks.
Setup default backup and database file locations.
Enable locked pages.
Apply SQL Server performance fixes.
|Feature specific||Back up directly to blob storage.|
You can get all the information here.