Azure + SQL Server Performance Best Practice
By Kepion Solution - Updated March 24, 2017
A recent article by Jason Roth from Microsoft details out the best practices for hosting Azure + SQL Server. Following the recommendations below can help the performance characteristics of any Kepion implementation on Azure. For the full article, click here.
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.
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.|