Why Does Amazon Web Services Have Three Deployment Options?
You might be curious about why Amazon Web Services (AWS) offers three deployment options, especially when two of the three options provide discounts on the already low on-demand pricing that Amazon offers.
After all, AWS pricing is already lower than most users can achieve by other means. For example, AWS pricing compared to other cloud providers can be as low as 12 percent of the amount that other providers charge for a similar service. If you're already 88-percent less expensive than the alternatives, why provide ways to save even more money? Is that just "leaving money on the table," so to speak?
There are two answers to this question — one AWS-focused and one user-focused.
Benefits to Amazon Web Services of deployment options
The AWS-focused answer has to do with what Amazon is selling: computing capacity. The cost structure of computing capacity is largely fixed cost, with very small amounts of variable cost.
In other words, Amazon spends a lot of money building data centers and funding the smart software it has created to provide automated computing services in those data centers, but it doesn't spend much to run those services. Most of its costs are fixed, whether or not any user work is going on within AWS.
In common with other industries that share these characteristics, the key to maximum profitability is to drive the maximum use of capacity. This may entail selling part of the capacity at a lower price than it may otherwise be sold for.
An easy analogy to help in understanding this concept is the airline industry. It costs a lot to buy an airplane, fuel it, and staff it to fly to destinations. The cost associated with placing an additional passenger on an airplane is quite low — perhaps a couple sodas or a low-cost meal on an international flight.
Selling a seat that would otherwise remain unoccupied provides almost pure additional profit, assuming that the fixed cost of flying the airplane has been covered. And even if it hasn't, it's better to gain some revenue to apply against the fixed cost than to suffer the loss associated with flying the airplane without that additional revenue.
Airline pricing is a curious case, however: Rather than sell unused capacity at a low price near departure time to induce people to purchase an otherwise unoccupied seat, airlines typically charge very high prices.
The reason is presumably that they believe they're selling a last-minute ticket to someone for whom the ability to go to the intended destination is highly valuable — a businessperson for whom reaching that destination is quite important. This situation is different from cruise ships, which typically sell last-minute capacity quite cheaply in an effort to fill the vessel.
Amazon clearly considers itself more like the cruise industry than the airline industry, in that it doesn't attempt to sell excess capacity at a premium. In some ways, it makes sense. After all, there's commonly little time pressure to run a job at a certain point, so it would be difficult to charge a premium. In fact, in some ways, AWS is clearly like the cruise industry.
Just as there is little demand for cruises during certain months of the year (for example, the Christmas holiday period, when people are engaged in family activities), sometimes AWS experiences low use volumes — for example, during the middle of the night, when few people are using applications that require AWS resources, but clearly not during the Christmas holiday period, when AWS customers probably experience very high usage because many of them are e-commerce sites.
From the Amazon perspective, offering a mix of instance purchase options is a way to drive capacity utilization upward, leading to the highest possible revenue stream.
The question remains, though: Why is Amazon doing this for customers, many of whom, presumably, would use on-demand instances in place of the lower-cost options? Netflix and Pinterest, after all, aren't likely to stop using AWS, even if it were to cost more.
Because AWS is much cheaper than the alternatives, whether in a company's own data center or in another cloud provider's capacity, these customers are captives to some degree and, would presumably pay the full on-demand price.
Benefits to customers of deployment options
So why should Amazon go out of its way to provide even lower-cost alternatives? The answer has to do with Amazon's general approach to business. It believes that if it provides great value to customers, even if it fails to derive a maximum margin in the short term, it will prosper in the long term.
By offering a way to achieve lower-cost computing during times of low demand, it reinforces its position of offering the best possible computing prices and increases its long-term customer loyalty. Amazon's approach in all elements of its business is to offer the best possible value to customers, with the belief that this approach will provide long-term dividends to the company.
By the way, an added benefit of Amazon's options for instance pricing may not be obvious to you if you haven't worked much with cloud computing: transparency in pricing. Amazon lists on-demand and reserved instance pricing on its website and lets customers easily find current and historic spot-instance pricing. Customers then know immediately how much an application costs to run or how much it's likely to cost if it's run on spot-price instances.
This strategy is in stark contrast to most other cloud providers, who require you to talk with a salesperson to find out service prices. That method costs you time — you have to schedule the discussion, describe your use, estimate how much capacity you'll require, and specify the time commitment you're willing to make.
And then, of course, you have to negotiate the price and negotiate the terms of a contract. All of this is extremely annoying. It's as inconvenient as buying a car — and as painful as visiting a dentist. That Amazon posts its prices publicly is much more revolutionary than it may seem — and it's a true benefit of using the service.