The three Azure SQL options side by side: IaaS or PaaS, compatibility, management and availability.
From Ultra Transcenders DP-900 by Tony Rough (publishing soon)
Azure SQL is the collective name for the family of Microsoft SQL Server-based database services in Azure. All three members speak Transact-SQL, but they differ in service model, compatibility, architecture and availability.
| Feature | SQL Server on Azure VMs | Azure SQL Managed Instance | Azure SQL Database |
|---|---|---|---|
| Type of cloud service | IaaS | PaaS | PaaS |
| SQL Server compatibility | Fully compatible with on-premises physical and virtualised installations; lift and shift without change | Near-100% compatibility with SQL Server; most databases migrate with minimal code changes | Supports most core database-level capabilities; some features an on-premises app depends on may be missing |
| Architecture | SQL Server instances installed in a VM; each instance can hold multiple databases | Each managed instance can hold multiple databases; instance pools share resources across smaller instances | A single database on a logical server, or an elastic pool sharing resources across databases |
| Availability (SLA) | 99.99% | 99.99% | 99.995% |
| Management | Customer manages everything: OS and SQL Server updates, configuration, backups | Fully automated updates, backups and recovery | Fully automated updates, backups and recovery |
| Best fit | Migrate or extend on-premises SQL Server and keep full control of server and database configuration | Most cloud migrations, especially with minimal changes to existing apps | New cloud solutions, or apps with minimal instance-level dependencies |
Two words in the table need a definition. Lift and shift means moving an existing application and its database to the cloud as they are, with little or no change. An SLA (service level agreement) is Microsoft’s availability guarantee; Azure SQL Database has the highest of the three, at least 99.995% of the time. Figure 4.1 places the three options on a spectrum from control to managed service.
Common trap: Assuming the option with the most control also has the highest availability guarantee - Azure SQL Database has the highest SLA of the family (99.995%); SQL Server on Azure VMs and SQL Managed Instance are listed at 99.99%.
This note is one section of Ultra Transcenders DP-900: Microsoft Azure Data Fundamentals, an independent study guide that explains every topic the exam covers by technology, with comparison tables, diagrams and the common traps, plus a glossary linked to Microsoft Learn.
Publishing soon on Amazon in Kindle and paperback editions.
About the book · DP-900 terms in the glossary · All DP-900 study notes
What each ACID property guarantees in a transactional (OLTP) database, with the classic funds-transfer example.
How extract-transform-load and extract-load-transform differ, and why ELT is common in modern lakehouses.
How OLTP and analytical systems differ in purpose, data shape, queries and users.
How normalisation splits data into one table per entity, linked by keys, so each fact is stored once.
Which Azure SQL option or open-source database service fits a requirement, and why.
Storage and access costs, minimum retention periods, Archive rehydration and lifecycle management policies.
The key characteristics of Azure Cosmos DB: schema-agnostic items, automatic indexing, global distribution and low latency.