3 ms·
Author here. The key here is that customers can leverage these pools in addition to their existing pools, improving capacity and price. AWS actually supports th
by ericpauley 4y ago
Author here. The key here is that customers can leverage these pools in addition to their existing pools, improving capacity and price. AWS actually supports this out of the box (including substituting instances with drives) by specifying core and memory requirements directly instead of instance types.
- Moissanite 4y agoTotally agree with that; it is a pretty common approach. The only part I don't agree with is calling out the price differences as some kind of "gotcha" that AWS somehow missed, particularly given the speculative "lost revenue" data which have no basis in reality.
- ericpauley 4y agoSee the emphasis on transparent substitutes in the article. This analysis is limited strictly to sets of instances that are fully hardware compatible, meaning AWS could resell one instance as another. There are way more savings to be had as a customer by leveraging instances that aren't transparent substitutes.
- Moissanite 4y agoI read it all, and don't agree with your interpretation of "transparent substitutes" in several of the cases.
- ericpauley 4y agoWhich instances are not transparent substitutes, in your opinion? Keep in mind the defintion here is that Amazon could substitute the image transparently, e.g., by ignoring the additional resources in hypervisor, not that the instances are by default indistinguishable. That being said, the substitute instances considered could be trivially accepted by any task running on the original instance, so long as it doesn't misbehave when given too many resources. In the case of vCPU, you can even hide extra vCPU cores, so a c6g.xlarge can be made effectively indistinguishable from a m6g.2xlarge by disabling the vCPUs at the hypervisor level.
- snake_doc 4y ago> Across all AWS availability zones instances are mispriced by roughly $400/hr at any given time. This means that, with just a single instance of each type, Amazon is missing out on $200/hr or roughy $1.7 million each year. This is over roughly 15,000 pools of instances. Given Amazon controls roughly 100 million IPs, we can guess that each instance pool probably has on the order of 1000 instances (more for smaller instances, less for larger instances). Given this, the average mispriced pool might have hundreds of instances, meaning hundreds of millions each year in missed revenue due to mispriced spot instances. Because amazon keeps their number of instances a secret, it’s difficult to make a precise estimate from the outside, but the missed revenue probably falls somewhere in this range. You are hypothesizing that the price differences produce "lost" revenues. An alternative hypothesis can be that the price differences produce similar or higher level of revenues for AWS through price segmentation, with Amazon recognizing the lack of adoption of certain spot instance bidding features and auction markets reacting appropriately. Unless you have the capacity and quantity demanded for each instance types, you can't prove your hypothesis. You are assuming scenario 3 (below) with no insights into price elasticity of the underlying customers. Example: Baseline: Instance types A and B are equivalent. A is priced at $3, with capacity of 1000, quantity demanded of 800. B is priced at $2, with capacity of 1000, quantity demanded of 200. Total quantity demanded = 1,000. Revenues from instance type A = $3 x 800 = $2,400 Revenues from instance type B = $2 x 200 = $ 400 Total revenues = $2,800 Scenario 1: All customers purchase instance B instead due to better price discovery. Revenues from instance type A = $3 x 0 = $0 Revenues from instance type B = $2 x 1,000 = $ $2,000 Total quantity demanded = 1,000. Total revenues = $2,000 Amazon loses $800 in revenues, there are no "lost" revenues" recovered. Scenario 2: Amazon changes instance type B price to $3. Total quantity demand decreases to 900 due to price elasticity of instance type B customers. Revenues from instance type A = $3 x 800 = $2,400 Revenues from instance type B = $3 x 100 = $300 Total revenues = $2,700 Amazon loses $100 in revenues, there are no "lost" revenues recovered. Scenario 3: Amazon changes instance type B price to $3. Total quantity demand remains at 1,000. Revenues from instance type A = $3 x 800 = $2,400 Revenues from instance type B = $3 x 200 = $600 Total revenues = $3,000 Amazon recovers $200 in "lost" revenues.
- pclmulqdq 4y agoThe mispricing is likely good for Amazon. It indicates that most people aren't doing this arbitrage, so Amazon can milk them for extra money.