No matter the scale of your business from small to large, you likely have a database and, managing it will cost money. Moving to the cloud can reduce your total cost of ownership (TCO), depending on how you view that cost and how you migrate. For this article, I will speak specifically about Microsoft’s offering to move SQL Server to Azure.
TCO Breakdown
The number one cost companies look at is licensing. Managing licensing in any business can be a headache and time-consuming. It can come in different flavours of OEM, Volume Licensing, Enterprise Agreements with or without Software Assurance. Your cost can range depending on physical machine characteristics, to the portability of the license itself. Modern-day database licensing has moved to core-based licensing, so the number of physical cores you have (or Virtual Processors) can dictate the cost of the license. I’m not going to delve in the nuances of the variation of licensing here but just to point out that there is a high variation.
Infrastructure
This can typically be a little more difficult to calculate because it depends on what you know about the environment to begin with. Here is a list and let’s see if you can guess how much it costs:
· Server Hardware
· Storage (SAN/NAS)
o Primary
o Backup
· Operation System License
· Datacenter Costs
o Lease
o Power / UPS
o Cooling
· Communications (Ethernet, Fibre Channel)
o Per/port costs
o Licensing costs
o Switches
Don’t forget about high availability (more than one server and switches), and disaster recovery (additional gear in a remote location). Also, a lot of the hardware generally loses warranty after 4-5 years, so consider the refresh you need to do as well!
Third-Party Solutions
This may or may not apply but, chances are there is some vendor software or hardware, that you need to pay for to manage backups, security, compliance, automation, etc. Those typically have a yearly cost as well.
IT labor costs
Now here’s the one that probably costs the most that is probably not accounted for. There will always be ongoing maintenance of databases (indexes tuning, code optimization, ensuring backups are done, testing restores, etc.). You also must consider upgrades, migrations, building, retiring, testing, etc. All these items cost time away from your talent helping with more business-aligned projects that add actual value to the business.
How can Azure Help with Your SQL Server Migration?
Licensing
The amount you pay depends on how much power you need. Resizing is easy so you can adjust your costs and it is transparent in Azure with breakdowns of each resource. In some cases, you can pause, and resume, resources, and billing can be on a per month, per day, or even per hour basis so you can decide when you need it (think about those “test” servers constantly running for instance).
You can transfer existing licenses from on-premise to Azure and may even get a discount depending on your Software Assurance and what sizing you go to.
IT Labor Costs / Infrastructure
If you look at this graphic from Microsoft, it sums up what you free up from your IT professionals.
As you can see, if you just put SQL in a virtual machine on Azure then, you still need to manage the Operating System (OS), Middleware, and runtime. That does take a lot of your plate, but if you go to Platform as a service then, you get rid of that as well. What does that all mean?
Let’s consider Windows 2008 and SQL Server 2008 end of life scenario, you now need an upgrade/migration strategy to move off it or pay a lot for security updates which are critical to your business. If you go to IaaS yes, you are supported for a while longer, and you don’t have to worry about networking, storage, servers or the virtualization infrastructure anymore, but you are still tied to a particular Operating System and SQL Server version.
If you look back to SQL 2000, SQL 2005 and SQL 2008 days as the name suggests, there is a 3-5-year gap between releases, now you have SQL 2012, 2014, 2016, 2017, 2019! These days you might be looking at an upgrade/migration as soon as you did the last one! These types of projects can be extremely time consuming, not just the act itself, but the planning, the compliance checks, the compatibility checks, testing, and so on. Through the constant patching on there, you could spend a fair chunk of IT resources to just keep you SQL Servers up to date.
As a long-time Data Base Analyst, myself, this was an absolute time hog that could have been reallocated to help modernizing code, building a new system for a new project, trying out new technologies that can add value to the business.
Provisioning new databases servers can also sink a lot of time depending on your existing infrastructure. Consider the existing capacity you currently have and the turn around time it takes to get a new SQL Server up. Let’s say you have the capacity for a new Virtual Machine with CPU, Memory, and Storage, because adding to that can be a long lead time. You still need to have some one provision the VM and configure it appropriately for the needs of the SQL Server, and patched. Now it’s passed to the DBA who likely has scripts to install and configure SQL Server, afterwards perhaps some testing and likely some compliance checks to make sure best practices are being adhered to. And finally, setup some maintenance plans to make sure the database is backed up securely. A new database is created and let’s say because of the type of data that will be in this database requires that Transparent Data Encryption needs to be enabled. What if the DBA doesn’t enable TDE on the database? If they do, did they use the proper certificates by standards set in place? Does the underlying disk have the speed to support TDE because TDE will also apply to TempDB? That is just one factor.
In Azure, provisioning becomes really easy either through the GUI or using PowerShell and certain things like TDE are enabled by default and backed by many compliance global standards, databases are backed up automatically, and retention can be adjusted or vaulted, there is no VM with PaaS so you eliminate that whole step. You don’t have to think about if you have capacity, you just need to start off with the lowest level you need, and if you need more then you can resize it up easily, same for dialing it back down. Depending on the type of Azure SQL Server offering you choose it can be provisioned in a couple of minutes to a few hours and you are up and running!
Replace Existing Software Vendor Costs
There are many vendors in the Azure space as well, but usually for different reasons. So, in this sense, it may not go away, but some of them can depending on what value they offer. This is a case by case basis, but all should be evaluated, for example, backup software. You probably don’t need it in PaaS because it is taken care of for you. This can reduce the licensing costs of vendor software as well.
How can Softlanding Help with Your SQL Server Migration?
Moving to Azure is just like migrating to a new machine with a new OS and new version of SQL Server, however, it can be a time sink and there are some caveats with each offering. There are a few flavours of SQL Server in Azure and each one has its long list of Stock Keeping Units (SKUs). Along with that, you must consider the applications that talk to the SQL Server and vice versa. You need to look out for feature parity, migration blockers, and performance inhibitors.
Softlanding can do an assessment of your SQL Server environment and create a road map to a successful migration, and we can even assist or do the migration for you with proper sizing to keep the costs down. Contact us for more information.
If you want to learn more about your TCO should you are thinking of moving SQL Server to Azure, you can visit https://azure.microsoft.com/en-ca/pricing/tco/calculator/ and try it yourself.