Microsoft Azure SQL Database is a general-purpose relational database offered by Microsoft. The fully managed database service supports structures such as relational data, JSON, spatial, and XML. Azure SQL Database is highly compatible with SQL Server engine.

The fully managed relational database has built-in intelligence that allows it to automatically tune performance and detect threats. Microsoft Azure manages the underlying infrastructure and takes care of patching and updating of the code base.

Azure SQL provides three different deployment options; Single database which has its own set of resources, elastic pool which is a collection of databases with a shared set of resources and Managed instance which is a collection of system and user databases with a shared set of resources.

Azure SQL deployment options
Azure SQL deployment options

Single database: Each database remains isolated and has its own compute, memory, and storage resources and remains isolated. Resources can be scaled up or down dynamically.  Azure’s hyperscale service tier for single database allows customers to scale up to 100 TB, with quick backup and restore capabilities.

Elastic pool: This service helps reduce cost as customers can create new databases or move a single database into a resource pool, sharing resources and save money. Resources in an Elastic pool can be dynamically scaled up or down.

Managed instances: Managed instances remain isolated from each other and come with a guaranteed set of resources. Instance databases share a set of resources only with other databases within the managed instance.  Managed instances have the ability to dynamically scale resources up or down.

According to Microsoft, “Managed Instance is ideal for migrating a large number of existing SQL Server databases from on-premises or virtual machines to SQL Database.”

AZURE SQL:  Autonomous Features

Azure SQL Database has autonomous features such as automated tuning and intelligent query processing.

Automatic tuning uses AI and machine learning to improve database performance as it continuously monitors queries executed on a database and performs tuning actions.

This is achieved through dynamically adapting database to the changing workloads and applying tuning recommendations. Automatic tuning learns horizontally from all databases on Azure through AI and it dynamically improves its tuning actions. The longer an Azure SQL Database runs with automatic tuning on, the better it performs. – Microsoft Azure

Automatic Tuning

How Automatic Tuning works on Azure SQL

Intelligent query processing is another feature that’s designed to improve performance with minimal implementation effort. This includes adaptive query processing, which is used to apply optimization strategies to the application workload runtime conditions and approximate query processing, which can be used to aggregate large datasets.

Azure SQL Pricing

Microsoft uses the pay as you pricing model for Azure SQL. Customers will only be charged for the resources they consume every hour and there will be no upfront fees, long term commitments, and termination fees.

By reserving Azure SQL capacity on a one year or three year term customer can reduce cost by up to 33% compared to licence-included pricing.

Depending on the deployment model, Azure SQL Database customers can choose from two purchasing models:

  • vCore-based purchasing model allows customers to select the exact amount of storage capacity and compute power needed to run their application.

  • DTU-based purchasing model allows customers to select bundled compute&storage packages that can be used for common workloads.

Azure SQL Database purchasing models
Azure SQL Database purchasing models

By Deployment Model:

  • The single database and elastic pool deployment options in Azure SQL Database can be bought using both the DTU-based purchasing model and the vCore-based purchasing model.

  • The managed instance deployment option in Azure SQL Database is only available for purchase through vCore-based purchasing model.