Migrate Microsoft SQL Server Databases to Azure - Solution Recommendation

Azure Solution for Hosting DB1 and DB2

Question

You have an app named App1 that uses two on-premises Microsoft SQL Server databases named DB1 and DB2.

You plan to migrate DB1 and DB2 to Azure.

You need to recommend an Azure solution to host DB1 and DB2. The solution must meet the following requirements:

-> Support server-side transactions across DB1 and DB2.

-> Minimize administrative effort to update the solution.

What should you recommend?

Answers

Explanations

Click on the arrows to vote for the correct answer

A. B. C. D.

C

SQL Managed Instance enables system administrators to spend less time on administrative tasks because the service either performs them for you or greatly simplifies those tasks.

Note: Azure SQL Managed Instance is designed for customers looking to migrate a large number of apps from an on-premises or IaaS, self-built, or ISV provided environment to a fully managed PaaS cloud environment, with as low a migration effort as possible. Using the fully automated Azure Data Migration Service, customers can lift and shift their existing SQL Server instance to SQL Managed Instance, which offers compatibility with SQL Server and complete isolation of customer instances with native VNet support. With Software Assurance, you can exchange your existing licenses for discounted rates on SQL Managed Instance using the Azure Hybrid Benefit for SQL Server. SQL Managed Instance is the best migration destination in the cloud for SQL Server instances that require high security and a rich programmability surface.

https://docs.microsoft.com/en-us/azure/azure-sql/managed-instance/sql-managed-instance-paas-overview

The correct answer for this scenario is C. Two Azure SQL databases on the same Azure SQL Database managed instance.

Here's why:

Azure SQL Database is a fully managed Platform as a Service (PaaS) offering that provides a variety of features and services that simplify the management and deployment of SQL Server databases in the cloud.

Option A, two Azure SQL databases in an elastic pool, is not a suitable solution for this scenario because elastic pools are designed to provide resource flexibility and cost savings for multiple databases with varying and unpredictable usage patterns. However, they do not support server-side transactions across multiple databases.

Option B, two Azure SQL databases on different Azure SQL Database servers, would require additional administrative effort to manage and maintain multiple servers. It is also not possible to perform server-side transactions across databases on different servers.

Option D, two SQL Server databases on an Azure virtual machine, would require additional administrative effort to manage the virtual machine, OS, and SQL Server installations. Additionally, there would be additional costs associated with maintaining the virtual machine.

Option C, two Azure SQL databases on the same Azure SQL Database managed instance, is the recommended solution for this scenario because it provides a fully managed platform with high availability and scalability features. It also supports server-side transactions across multiple databases on the same instance, minimizing administrative effort. Additionally, Azure SQL Database managed instance provides features like automatic patching, automated backups, and easy scalability to meet changing workloads.

In summary, the recommended solution is to migrate DB1 and DB2 to two Azure SQL databases on the same Azure SQL Database managed instance to support server-side transactions and minimize administrative effort.