Azure SQL managed instance: new member of the family!

Posted in: Cloud, DBA Lounge, Microsoft SQL Server, Technical Track

SQL Server is one of Microsoft’s strongest enterprise software products. Both in terms of revenue and industry reputation, it is widely adopted for its ease of use while at the same time offering high end features in terms of security, performance, availability and reliability.

The SQL Server Family of Products
Nowadays, when I think of SQL Server, I also think of it more like a family of SQL Server products:
1. The retail SQL Server product used on-premises or in IaaS cloud environments.
2. The fully managed Database as a Service: Azure SQL Database.
3. The fully managed Data Warehouse as a Service: Azure SQL Data Warehouse.
And now we’re going to have a new member of the family inside the Azure SQL Database service!

Today at the Data Amp event Scott Guthrie (Executive Vice President of the Cloud and Enterprise group in Microsoft) shared the announcement of this new offering, here’s the slide he showed:

AzureSQLInstance Announcement

Currently being called Azure SQL Managed Instance (final name to be determined), it is here to make migrations of SQL Server to Azure easier than ever. And once you’ve migrated, it will make management easier than ever as well!

What is the use case of this new offering?
Let’s step back and look at why Azure SQL Managed Instances are being released. Currently there is a gap of functionality between the retail SQL Server and Azure SQL Database. For example: a client that has an application that uses multiple databases and lots of code using three part names. Azure SQL Database doesn’t support three part names, so if you wanted to migrate this instance to Azure, your only choice would be to deploy and manage it as a SQL Server VM on IaaS. And yes, you can enable backup and patching agents, but at the end of the day, the configuration of the VM, maintenance of the OS and all the responsibility for SQL Server is still in your hands.

This is where the Azure SQL Managed Instance comes in. It provides a fully managed, higher feature-compatible instance that is a lot more similar to the SQL Server instance concept that we all know from the retail product. You don’t have to be responsible of every bit like with IaaS, while at the same time, you can continue running as an instance, with the features that are not compatible with the Azure SQL Database single database model. This means migration is straightforward without having to worry about compatibility or features not supported. It’s also easier because you don’t have to build every single piece of IaaS.

If you have experience with Azure SQL Database you might be thinking, how does this compare to the elastic database pools? The difference is that the pools are still created from databases that are single entities and the only thing they share are the elastic resources. On the other hand, Azure SQL Managed Instance will hold the database inside the instance container so they will be able to use three part names, linked servers, and other features that we are accustomed to using on the on-premises SQL Server.

Best of all, because Azure SQL Managed Instance is built on top of the PaaS framework that powers Azure SQL Database, once it’s migrated, it is fully managed in terms of OS, built-in HA, backups, etc.

As we can see in the diagram below, Azure SQL Managed Instance sits between having a full VM running SQL Server and the fully contained individual database paradigm of Azure SQL Database. And just like Azure SQL Db, with a Managed Instance the client can enjoy the continuous improvement and release of features that come with Microsoft’s cloud-first development model.

Azure SQL Managed Instance

Bottom Line

Here at Pythian we have seen an exponential increase in projects to help clients adopt and move applications and database workloads to the public cloud. We are very excited about this new offering that will make migrating and managing SQL Server in Azure that much easier. We also anticipate that a very large percentage of our clients’ current SQL Server workloads on-premises will be a perfect fit for Azure SQL Managed Instance.

If you are running SQL Server and planning to migrate to the cloud, I hope I have piqued your interest. In the coming months we will have blog posts  sharing  more details in terms of implementation, features, migration path and more. Stay tuned!



Want to talk with an expert? Schedule a call with our team to get the conversation started.

About the Author

Microsoft Data Platform MVP and SQL Server MCM, Warner has been recognized by his colleagues for his ability to remain calm and collected under pressure. His transparency and candor enable him to develop meaningful relationships with his clients, where he welcomes the opportunity to be challenged. Originally from Costa Rica, Warner is fluent in English and Spanish and, when he isn’t working, can be found watching movies, playing video games, and hosting board game nights at Pythian.

3 Comments. Leave new

Is SQL Azure Managed Instance is dedicated or shared?

Warner Chaves
June 9, 2017 6:20 am

Hi Sumit! There are two dimensions to your question. When talking about dedicated vs shared we can be thinking of:

– logical separation: my instance is isolated from seeing other client instances, exists in it’s own namespace, etc.
– physical separation: my instance is running on dedicated or shared hardware

Now as far as logical separation, yes the instances will be logically stand-alone, just for you. As far as hardware however, it’s unlikely that this is the case.

Microsoft doesn’t give any insight into their hardware configuration for their PaaS services, we provision performance by Database Transaction Units and they make sure their system is resource governed and gives you the performance you need while protecting you from a noisy neighbor. However, like I said, we don’t know what’s under the covers, maybe for the highest level instances that are multiTB in size they do put it in dedicated hardware. The bottom line is that for a user of these cloud services, we need to think different from shared/dedicated from a hardware perspective and think of the performance units that we need, regardless of how Microsoft has to provision them, it’s not our problem!

hamile giyim
July 11, 2017 8:18 am

Best of all, because Azure SQL Managed Instance is built on top of the PaaS framework that powers Azure SQL Database, once it’s migrated, it is fully managed in terms of OS, built-in HA, backups, etc.