In the first post of this series, we discussed what a Discount Cloud Instance is and when they are beneficial to use. In this post, we will look at the specific offerings by Amazon (EC2 Spot Instances) and Google (Preemptible VMs) and compare them to Azure’s Low Priority Virtual Machines. In addition to each having a different name, they also treat them in very different ways and have their own individual benefits and drawbacks.
When a provider is willing to provide historical data relative to the availability of their Discount Cloud Instances, it can allow potential users to analyze it for a number of different purposes. Most notably, being able to better time their requests so that they obtain the best pricing when otherwise they might miss their chance. Thus far, Azure does not seem to offer this data. Google likewise does not provide access to their data but have claimed the preemption rate across a 7 day period is 5%-15%. This is where AWS far outshines the other two. AWS offers all historical availability and pricing data on all of their instance types across all zones and regions, allowing users to perform whatever analyses they want and make the best future purchasing decisions.
Fixed vs. Floating Price
One major benefit of using Low Priority VMs (or Google’s Preemptible VMs) is that each offers a simple, fixed rate per instance. Each option provides fixed pricing at approximately 20% of the standard cost. AWS Spot Instances, on the other hand, utilize a flexible pricing strategy. Originally, users would bid on Spot Instances and those who bid highest were granted the instances. Now, however, they have a system more similar to the others, except that the price does increase and decrease with demand. According to Amazon, this results in a savings of 70%-90%, so nearly identical to that offered by Microsoft and Google. However, for those planning to make consistent use of these on a larger scale, it can be worth analyzing the Spot Price Historical Data that AWS offers and determining where the cheapest instances can be found, and at what times. By doing so, you stand a good chance of bringing your savings closer to the 90% mark and slightly outpacing the others.
Right now, Azure has use of Low Priority VMs limited strictly to Azure Batch. This means that they are only usable by those making use of this particular Azure service, so if a customer wanted to obtain some amount of space and design their own system to containerize and operate algorithms against them, they would not be able to utilize Low Priority VM cost savings. On the other hand, Google and Amazon allow you to obtain them as if they were any other instance and utilize them until they are revoked for full-price paying users or they have an expiring time limit. This flexibility affords them far more potential use cases than Azure allows for.
Ease of Use
One area where Azure seems to stand out is the ease with which you can obtain Discount Instances. While creating the settings for your Azure Batch job, you can specify how much of it you want to run on Low Priority VMs, and then Batch takes care of managing the servers from there forward. Google has similar options for selecting Preemptible VMs in a Managed Instance Group by creating templates that allow for them, but this is a bit of extra effort over Azure’s offering. AWS does not appear to have much in support of a quick setup for Spot Instance use.
Revocation of Discount Cloud Instance
Both Google and AWS inform a user with a notification that they are revoking the use of the instance from that user with about 30-seconds to 1-minute warning. This allows the user to write a script that can save the current state of the program and create a backup of the instance if they choose. Azure, however, only allows the user to specify whether to delete the VM entirely when revoked, or maintain them in disk space to continue from where they left off before.
In our next and final post, we will discuss the impacts of these differences and what we believe Azure could take away from their competitors to further stand out in the market.