T-SQL Tuesday is a monthly event where SQL Server bloggers write a post based on a subject chosen by the month’s host. You can find a list of all past topics at tsqltuesday.com. This month’s host is Koen Verbeeck (t|b) and his topic is The times they are a-changing inspired by the blog post Will the Cloud Eat My DBA Job? by Kendra Little.
Azure SQL Database is causing some DBAs to lose sleep at night because it manages:
- Backups – The main responsibility of DBAs
- High Availability
But don’t despair, there’s still plenty to do:
- Query tuning – this is more important than ever
- Index maintenance
So new DBAs may be thinking of focusing on query tuning and ignoring backups, but I would say, stick to the Hierarchy of Database Needs:
- Future Proofing
I say this because Azure SQL Database is a managed service. Managed services are perfect for small teams with limited resources. These teams can’t afford a dedicated DBA, so they use a managed service and the price is vendor lock in.
Azure SQL Database does not exist on any other cloud platform, moving from Azure to another platform will be very difficult. You may require code changes and you can’t get a backup file to transfer the data. This risks of this vendor lock in are:
- If the vendor decides they no longer want to support a feature anymore, you have to drop what your doing and change your application. Do you have workloads running on old versions of SQL Server? Whatever your reason is for not upgrading, you wont have that choice in the cloud.
- If the vendor decides to push their prices up, you have no choice other than to take the hit.
If you were able to move your entire stack between vendors then these risks would be reduced. You could also switch vendors when one is having a bad day like AWS did earlier this year.
How to avoid cloud vendor lock in?
Stay on prem.
This is the easiest way to solve the problems outlined above and there will always be companies running databases on prem.
How to avoid cloud vendor lock in in the cloud?
Running SQL Server in VMs.
This would allow companies to use distributed AGs, log shipping, replication or just backup files to distribute their data across the different cloud vendors or even on prem. An orchestration tool like Kubernetes could be used to lift and shift containerised app\web servers between vendors.
This wont be simple and keeping it cost effective will be challenging, but companies that are concerned about the points above will avoid managed services.
So I would say DBAs should keep working with the on prem edition. This is what will be running in the cloud based VMs or on prem.
Thanks for reading.
If you would like to be the host of a T-SQL2sday event, then read these rules and contact Adam Machanic.