Open In App

Microsoft Azure – Azure SQL Managed Instance Deployment Options

Last Updated : 30 Mar, 2023
Like Article

In this article, we will take a deeper look at the differences between Azure SQL Managed Instance and Azure SQL Database. When you’re going to deploy a Managed Instance, you’re first going to have some choices to make. You can deploy a single instance, which is like a single instance of SQL Server, get these capabilities of your surface area, of your virtual networks, all the management capabilities, and then you can deploy databases with that instance.

This type of deployment can take time as Azure is deploying an entire Ring for your instance. We have this option now in preview called an instance pool, where you can pre-provision the instance, which makes an instance pool deployment much faster. It’s a more cost-efficient migration scenario because, for example, you’re going to be the host of smaller numbers of cores in these instance pool situations. 

Service Tiers -Managed Instance:

Currently, in public preview, you start with an instance, you pick an instance pool, and then you’re going to dive into a service tier choices for deploying Managed Instance. 

When we look at the service tier for Managed Instance, it’s a pretty easy decision. There are two options available:

  1. General-purpose
  2. Business-critical

Now, most of the users run on general-purpose, but some others have really extreme requirements that they need around recovery or latency and they want to take advantage of a Readable secondary. Those are the main decision points between general-purpose and business-critical. 

Purchasing Options:

Now, when it comes to purchasing options, there’s only one model, the vCore model, so you don’t have to make a choice there. This is going to let you scale your compute independently from your storage. Now, when we talk about general-purpose, it’s critical to talk about Remote storage. It means that your data and log files are going to be stored in remote storage where your TempDB is going to be running on a local SSD. To compare that with business-critical, everything is going to be running on local SSD. 

Memory & Performance Decisions:

When we talk about IOPS, and this might be a new term to you, this is IO per second. You’re going to get better IOPS from business-critical. Additionally, in-memory OLTP is only available in the business-critical tier, if something you’re application or workload requires, you’re definitely going to want to consider the business-critical tier.

 Finally, what happens in the backend is Azure basically deploys an availability group for you. Azure creates four replicas for you, and one of those Azure actually allows you to leverage as a readable secondary. 

If you want to separate your read and write workloads, this can be done with business-critical. For Azure SQL Managed Instance, you really have two options: general purpose, which is going to be best for most of the users, and business-critical for if you need low latency, the readable secondary, or really fast recovery. 

Difference between Azure SQL Managed Instance and Azure SQL Database:

Azure SQL Managed Instance Azure SQL Database
Single Instance Instance Pool Single Database Elastic Pool
SQL Server surface area(majorly) Pre-provision compute resources for migration Hyperscale storage(100TB+) Resource sharing between multiple databases for price  optimization
Native virtual network support Enable cost-efficient migration Serverless compute Simplified performance management for multiple databases
Fully managed Service Ability to host smaller instances (2Vcore) Fully managed service Fully managed service
Currently in public preview

Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads