Note: This question is part of a series of questions that present the same scenario. Each question in the series contains a unique solution that might meet the stated goals. Some question sets might have more than one correct solution, while others might not have a correct solution.
After you answer a question in this section, you will NOT be able to return to it. As a result, these questions will not appear in the review screen.
You have an app named App1 that uses data from two on-premises Microsoft SQL Server databases named DB1 and DB2.
You plan to move DB1 and DB2 to Azure.
You need to implement Azure services to host DB1 and DB2. The solution must support server-side transactions across DB1 and DB2.
Solution: You deploy DB1 and DB2 to SQL Server on an Azure virtual machine.
Does this meet the goal?
Click on the arrows to vote for the correct answer
A. B.A
Understanding distributed transactions.
When both the database management system and client are under the same ownership (e.g. when SQL Server is deployed to a virtual machine), transactions are available and the lock duration can be controlled.
https://docs.particular.net/nservicebus/azure/understanding-transactionality-in-azureThe solution proposed in the question, which is to deploy DB1 and DB2 to SQL Server on an Azure virtual machine, can meet the goal of hosting the databases in Azure. However, it may not fully support server-side transactions across DB1 and DB2, depending on the specific requirements of the application and its usage of the databases.
Here are some points to consider:
Azure SQL Database is a fully managed platform as a service (PaaS) offering that can host SQL Server databases in the cloud without the need to manage the underlying virtual machines. Azure SQL Database provides many benefits such as automatic backups, high availability, and scalability. It also supports server-side transactions across multiple databases.
Deploying SQL Server on an Azure virtual machine (VM) is an infrastructure as a service (IaaS) option that gives more control over the VM's configuration and management. However, this option requires more maintenance effort and may not provide the same level of benefits as Azure SQL Database in terms of automation and scalability.
Server-side transactions across DB1 and DB2 can be achieved through various methods, such as distributed transactions, linked servers, or transactional replication. Each method has its own pros and cons, and the choice depends on the specific requirements and limitations of the databases and the application.
In summary, deploying DB1 and DB2 to SQL Server on an Azure virtual machine can be a valid option for hosting the databases in Azure, but it may require more effort to maintain and may not provide the same level of automation and scalability as Azure SQL Database. The solution can support server-side transactions across DB1 and DB2, but the specific method and configuration depend on the application's requirements and limitations.