Saturday, August 3, 2019

What to Consider before choosing an Azure DBaaS offering


            The below blog content is intended to help the readers in choosing the right DBaaS offering from Azure and the common criteria to be considered while choosing one. This is written based on my own experience with Azure migration POC projects I could be associated with as a DBA, in my recent past .It would be sinful if I don't start with expressing my admiration for Microsoft for developing a cloud platform like Azure that is the coolest in market in terms of cost effectiveness and ease of migration and the level of compatibility it offers with a wide range of Microsoft's own products in the on-premise environments. Those are certainly the reasons why 95% of the fortune 500 companies have decided to migrate to Azure cloud instead of choosing its competitors. 

          If you have decided to go with Azure for both your application deployment and Infrastructure migration, PaaS offering  for the Database (Otherwise known as DBaaS) is certainly the area to focus on,  as IaaS offerings are comparatively expensive for any cloud platform. One needs to start to list down the features he look for in the DBaaS offering. You can look at your On-premise set up to find this out and brainstorm with your peers in the Infra/Application teams to list them.  You should also consider installing Database migration Assistant and run it against a copy of your database backup to find the potential blockers for migration if any for all SQL offerings from Azure. Please download it from here. This will help us to understand the common blockers and compatibility issues one might encounter while attempting to migrate the on-premise database to a DBaaS or SQL on Azure VM. I am adding a screenshot for a preview purpose. 







Below are the DBaas Offerings from Microsoft and some of the features it provides .All of them are built on the latest Standard edition of SQL server and shares features such as built in high availability, automated backups,  online scaling up, and service updates with no interruption to the database service.


1. Single Database


        You can treat them similar to the contained databases we have in on-premise and this is meant for the modern applications that don't need all T-SQL features and are single tenant systems. It has its own set up merits such as the absence of shared resources and better control from an operational standpoint . 


2.Elastic Pool



       These are collection of databases residing in a single Azure SQL server and are meant for multi Tenant SaaS Apps that dont need all instance T-SQL functionalities , SSRS , CLR and service broker . It gives the ability to assign resources to individual databases as per need and both the single and elastic pool DBaas suport size upto a 100 TB (in HyperScale Service tier)  which makes them a great for very large yet simpler systems. For disaster recovery, both elastic pool and single database supports Geo replication which is built on Always-On feature along with Geo-restore (Longer RPO). 

3.Managed Instance


      This is my personal favorite among the azure DBaaS,  as it offers near 100% compatibility with the on-premise SQL server and the no-friction migration it offers. Managed instance supports a wide range of features such as  SSRS , Service broker , CLR,  linked servers . It is comparatively the newest DBaaS from Azure and it got released only in the month of October, 2018.  Managed instance supports size upto 8 TB for General purpose and 4TB for Business critical Service Tiers. Though we can overcome this limitation by having multiple managed instances and having databases spread across them.For disaster recovery , managed instance supports Auto-failover groups ,which is again an extension of Always-on onto the cloud with some operational dissimilarities with the active Geo-replication .

Managed instance also provides support for Transactional replication for all three roles which are publisher, distributor and subscriber while the other two DBaaS can be configured only as Subscribers. 


You can find more feature differences in the azure DBaas offerings  here .

Good luck with your Azure SQL journey!











               


  

No comments:

Post a Comment