Azure IaaS Versus PaaS Database Offerings

 


The first option is the Infrastructure as a Service. That means to provision a SQL Server installation on an Azure Virtual machine. This is a SQL Server inside a fully managed virtual machine. It is still a virtual machine and you need to manage the instance of SQL Server manually. 
Suitable for migrating on premises SQL Server databases and applications without any database change. This is Lift and Shift scenario. The SQL Server installed on a virtual machine is identical to the SQL Server you have installed on premises. Also, this option gives you full control over the database engine. You can control the timings of maintenance or patching of your database engine. You can also pause or stop the virtual machine whenever you don't need the SQL Server to save some cost. And this option is fully customizable, means you can easily go with the Pay as you Go model, or you can also bring your existing license to save some money

High availability, disaster recovery is also your responsibility and many companies don't even implement disaster recovery just because of the cost in management and in infrastructure to have a disaster recovery site available. Performance and Change control is your responsibility. Every time that you make a configuration change, you are responsible for that change, and you have to make sure that you test it. When it comes to security you have to manage the users, the roles and general access to your SQL Server and the database inside.

The other option is Platform as a Service or Database as a service offering. Here you create a resource of type Azure SQL Database, and create your database and tables in this instance. Don't need to worry about getting a computer, installing operating system, or installing the database engine, patching the operating system, or scaling your database. All of these taken care of by the Microsoft Azure. 
Using Azure SQL Database, you can benefit from some features that are not available even in onpremises SQL Server, such as building high availability, intelligence and database management tools. Pay as you Go model gives you the option to scale up or scale out for greater power when needed. In most cases, scale up or scaling out cause no interruption in the service, which is good option for highly available applications. Azure SQL Database has multiple deployment options, purchasing models and service tiers. In the upcoming lectures, we will see all this into more details. 

The main responsibility for you is to choose the right service tier to begin with, as that will define the features, performance and recovery characteristics of the database. Azure SQL Database will provide high availability and disaster recovery capabilities. Your responsibility is to test your application with those capabilities and make sure that everything will work correctly in the case of a disaster. For performance, Azure SQL Database has many inbuilt tools which provide you with the report and the other indicators and the data, but ultimately is it still will be your responsibility, as SQL Server Database can't anticipate every single query that is going on against your database. So you have to make sure that performance is acceptable for your applications and your users, and you still might have to do index tuning and SQL tuning and all. Change Control, of course, is still your responsibility. If you do any changes in schema in configuration of the SQL Database, you have to be the one responsible for testing them. And again, Azure SQL Database provide many tools to handle the security, but ultimately it is still your responsibility, whether it's to create a new login or roles or database users that will still be under your control. 

Comments