All Things Distributed
In the many meetings with customers in which I have done a deep dive on their architecture and applications to help them create an accurate cost picture, I have observed two common patterns: 1) It is hard for customers to come to an accurate Total Cost of Ownership (TCO) calculation of an on-premise installation and 2) they struggle with how to account for the “Return on Agility”; the fact that they are now able to pursue business opportunities much faster at much lower costs points than before. Both of these are important as they help customer accurately gauge the economic benefits of running their applications in the cloud. The best practices that we are collecting in the AWS Economics Center are there to help our customers get a total view on their IT cost such that they can accurately compare on-premise and cloud.
Total Cost of Ownership
An apples to apples comparison of the costs associated with running various usage patterns on-premises and with AWS requires more than a simple comparison of hardware expense versus always-on utility pricing for compute and storage. The cost of acquiring and operating your own data center or leasing collocated equipment needs to factor in related costs for what needs to be done to run even the most basic datacenter. This starts with procuring the datacenter space, arranging power, cooling and physical security, then buying the servers, wiring them up, connecting them to the storage and backup devices, building a network infrastructure, and making sure all of the hardware is imaged with right software, provisioned and managed, and that ongoing maintenance is performed, and problems fixed in a reasonable timeframe.
Owning your own hardware is extremely inflexible, you have to over-scale and plan for peak demand and if you make a mistake with the type of hardware you are stuck with it. AWS on the other hand is extremely flexible, not only in what you want to run when you want to run it, but also in a variety of pricing models that allow you to really drive cost down for your use case. As such when calculating the cost of using AWS, you need to go beyond simply multiplying on-demand pricing for all the services and multiplying hourly usage assuming it will be running 24*7 all the time.
There are several ways we enable our customers to take advantage of our price structure, whether they are small or large, running variable or predictable workloads. The AWS Economics Center now features the TCO of Web Applications whitepaper
This white paper provides a detailed view of the comparable costs of running various workloads on-premises and in the AWS Cloud and offers guidance on how to work out an apples-to-apples comparison of the TCO of running web applications in the AWS Cloud versus running them on-premises.Below are some highlights of the Web Applications white paper. Best practices show that there are substantial savings to be had with each of the three types of usage patterns: steady state, spiky predictable and uncertain predictable. Here’s a summary chart of the TCO analysis.
<img src=”/images/TCO.png”/ width="650">
What this chart summarizes is that
If you have a web application for which you expect uniform steady state traffic, the most cost-effective option is to use Heavy Utilization Reserved Instances (RIs). This option offers 68% savings over the on-premises option. 3-Year Heavy Utilization Reserved Instances offer the maximum savings over equivalent servers deployed in an on-premises environment.
When you expect your web application to have spiky usage patterns, the most cost-effective option is to use Reserved Instances for your baseline servers and On-Demand instances to handle spikes of your traffic. This option offers 72% savings over the on-premises option. The significant savings is because you are using your resources efficiently, only when you need them, stopping them after your peak traffic subsides, and not paying anything when you don’t need them.
If you are dealing with a new web application and are unsure about its traffic pattern, the most cost-effective option is to use On-Demand Instances because there is no upfront commitment, and the overall cost is a tiny compared to what you would pay in the on-premises option. With AWS, customers can start-out with minimal risks and no upfront commitment using on-demand pricing. If their projects are successful, customers often shift into some combination of reserved and on-demand instances to lock in additional price savings as their usage patterns become more predictable. Making predictions about web traffic is a very difficult endeavor. The odds of guessing wrong are very high, as are the costs. This is also a good illustration of one of the really exciting benefits of Cloud Computing – lowering the cost of failure. When you lower the cost of failing with new web application projects, you have an opportunity to change the dynamics of decision-making in your company towards encouraging more innovation. With Cloud Computing, you can experiment often, fail quickly at very low cost and likely end up with more innovation, as more of your company’s ideas are tested in the market.
Some of our customers are even more adventurous and also include capacity from the spot market to even drive their cost down further. Below are two charts that Ryan Parker of Pinterest shared with us at the AWS Summit in NYC. The left one shows the hourly cost of autoscaling his web servers with only on-demand instances while at the right are his costs with his always needs met by Reserved Instances and his variable needs by a combination of On-Demand and Spot.
Another issue that I have heard complicates their TCO calculations is the continuous price reduction. AWS has lowered it prices more than 20 times in the past 6 years, and is likely to continue to do so in the future. A customer I recently met had executed a consolidation project for 20 types of invoice processing on AWS with the calculation that the project would pay back for itself in 2 years. However during development and the year of business AWS lowered it prices a number of times such that the project paid back for itself in 8 months. The customer complained a bit that she had to redo the projections several times but she was very happy with the results :-).
Return on Agility
Many of our customers come to AWS with a reduction of TCO and other cost savings in mind but after using AWS for a while most of them will claim that agility is the even more benefit for them. Agility has many different faces within an enterprise : Operational advantages such as setting up infrastructure in minutes rather than months, completing massive computational projects with a large number of resources quickly, and scaling architecture up and down to provide the needed IT resources only when you need them, deliver targeted IT solutions fast for individual business units – these deliver a “return on agility.” The return on agility delivers business value by allowing you adapt rapidly, while remaining focused on your core competencies rather than distracted by operating IT infrastructure.
But more importantly it allows the business to change and dramatically reduce time-to-market for products. It drives down the cost of experimentation and allows companies to explore many more product directions with minimal risk. In the current economic climate where capital is scarce, being able to develop new products rapidly without the need for major capital investments is crucial to the success of businesses.
While agility changes everything for a business, saving money in the process continue to be a good thing. There are seven fundamental ways customers are saving money with AWS today:
We’re seeing how customers from startups with hyper growth to large organizations with stable workloads are able to leverage our low prices, usage based billing, tiered pricing, and instance types to continuously drive cost out of their workflows in these seven ways. To find out more, visit our Economics Center at aws.amazon.com/economics.