Many parents have experienced the horror of learning that the free game app they downloaded for their kid cost...
an arm and a leg due to unauthorized in-app purchases. These types of apps make it easy for anyone to buy items regardless of who pays the bill. It's a lesson about reading the fine print that's often learned the hard way.
Your first cloud bill can mirror this scenario if you aren't careful. A recent webinar given by Joey D'Antoni, principal consultant at Denny Cherry & Associates Consulting, reviewed the traits of expensive cloud bills and how users can avoid these pitfalls in SQL Server cloud and other database cloud environments.
What makes a cloud bill expensive?
The first step to avoiding a high cloud bill is figuring out what exactly makes it so expensive in the first place. It's important to keep in mind that the cloud does not mesh with some systems. For example, systems with large virtual machines that run constantly can wind up being expensive. Resources in the SQL Server cloud aren't cheap, and reserving them can get pricey.
"If all of your workloads are very monolithic and very large and run all the time, the cloud may not be a good fit for you," D'Antoni said. SQL Server cloud can be a great resource for some systems, but if it doesn't work for you, it's time to cut your losses and move onto something else.
Similarly, nonproduction machines that don't need to run 24/7 but are left on nonstop drain resources. If an environment is required to run for, say, six hours, but is left on all day, it spends a whopping 18 hours wasting valuable resources. If a system can be automated to switch itself off when not in use, then it should be, he said.
Another money-saving tip is to make sure you've applied your software licenses correctly. This is especially relevant when using Oracle and Microsoft cloud platforms. Both companies allow users to bring their existing software license (BYOL) to their respective cloud platforms.
"If you're choosing a SQL Server image that does not have BYOL in front of it as a prefix, you're renting your SQL Server license from Microsoft," which can increase costs, D'Antoni said. "If you have a license on-prem, it's perfectly valid in Azure."
Right-sizing is important
Like getting a jumbo popcorn at the movie theater, oversizing results in waste and overspending. With virtualization, you won't get the density that you want. However, undersizing will result in unhappy users, and cutting cloud capacity will ultimately hinder them. Understanding your storage performance is important.
"You really can't build database servers on non-SSD [solid-state drive] storage in the cloud because there's no fast-spinning disk like you have on-prem," D'Antoni said. "It's either you have SSD or you have really slow storage."
Collecting data upfront is key to determining the amount of storage you need. You can collect metadata about your servers, which makes it easy to see a performance baseline for a server once it's in the cloud. If you don't have the proper tools or if you're trying to collect data across many servers, this can be very difficult.
D'Antoni recommends taking advantage of application scaling and autoscaling, but cautions that these options don't always work for database servers because the engine has to restart. Application scaling and autoscaling can be very helpful for app tiers, however.
How to cope with other cloud expenses
Prepaying is another option to consider, as it can help cut additional costs. Cloud platforms like Microsoft Azure often include pricing calculators to help you determine how much you'll pay for each cloud service.
"One of the things your finance people like is the fact that the cloud moves what is traditionally a lot of capital expense or long-term investment into operational expense," D'Antoni said in the webinar. "Instead of buying your servers and depreciating them over time, you're actually paying them month by month, more like an electrical bill."
If possible, evaluate cloud regions, as some regions are cheaper than others; currently, there is a 43% difference between Azure's least expensive -- West US 2 -- and most expensive -- Japan East -- regions. The price of cloud regions fluctuates, so check often.
Your cloud bills don't need to be high in order for the service to be effective. By exploring your financial options and going over them in detail, you can get the most bang for your buck.