The public cloud marketplace consists of numerous cloud providers. Amazon, Microsoft and Google account for 62% of the total 2022 cloud market. The remaining public cloud market is divided among IBM, Alibaba, Oracle and several smaller players. This article examines cloud offerings from Amazon, Microsoft and Google.
AWS, shown in Figure 1, is one of the largest cloud providers. The AWS cloud consists of more than 200 individual services and earns more than $70 billion per year in revenue, based on research from Dgtl Infra.
Amazon doesn't provide a standardized uptime commitment or service-level agreement (SLA) across the entire AWS cloud, but rather provides SLAs for each individual service. In the case of EC2 -- Amazon's platform for hosting VM instances -- Amazon offers a regional-level SLA of 99.99% and an instance-level SLA of 99.5%. The company provides a tiered system of service credits, where the service credit percentage is tied to the duration of an outage, with longer outages eligible for larger service credits.
Regions and zones
One of the most important considerations when evaluating a cloud provider is the number of global regions and availability zones offered. Amazon currently consists of 27 regions around the globe and has a total of 87 availability zones.
Another important factor when selecting a public cloud are the options for interacting with cloud resources. Cloud providers such as Amazon, Microsoft and Google make SDKs available to developers so applications can more easily use cloud resources. From an administrative standpoint, the various cloud providers offer both a web portal and a command-line interface (CLI). Amazon's management portal for AWS is shown in Figure 1. The command-line environment, known as AWS CLI, can be installed on Windows, MacOS or Linux. Although the supported commands largely resemble those used in Linux environments, Amazon also offers a PowerShell version of the AWS CLI.
Like the competing clouds, Amazon uses a pay-as-you-go model for its AWS cloud resources. The formulas used to calculate usage costs are quite complex, but Amazon offers a pricing calculator that can help determine overall costs. Amazon also makes some resources available in a free tier. These free tier resources tend to be helpful to those who want to learn how the various AWS services work without investing a lot of money.
2. Microsoft Azure
Microsoft Azure, shown in Figure 2, is widely considered the world's second largest cloud. Based on research from Dgtl Infra, Microsoft generates more than $90 billion in revenue from its cloud services; however, those revenues are tied not only to Azure, but to cloud services such as Microsoft 365.
Like AWS, Microsoft has a separate SLA for each individual service within its Azure cloud. Microsoft's uptime guarantee for Azure VMs is very similar to Amazon's SLA. VMs consisting of at least two instances and deployed across two availability zones are guaranteed to have 99.99% availability. That drops to 99.95% availability if the instances are in the same availability zone. The SLA for single-instance VMs varies depending on the hardware configuration, but all VM instances are guaranteed to have at least 95% availability. Like Amazon, Microsoft offers credits when SLAs aren't met.
Regions and zones
Microsoft maintains numerous regions and availability zones within the Azure cloud. These availability zones are separate data centers within a region, with a round-trip latency within the region of less than 2 milliseconds. Microsoft currently offers 27 regions that each support multiple availability zones. In total, there are 60 regions and 116 availability zones.
The Microsoft Azure portal, shown in Figure 2, is relatively easy to navigate and most Azure services and resources can be managed from within the portal without having to delve into the command-line environment. For those who would prefer to use a command-line environment, Microsoft offers the Azure CLI. Like the Amazon CLI, the Azure CLI can be installed on Windows, Linux or MacOS. There's also an option to run the Azure CLI in Docker or in Azure Cloud Shell. Like the AWS CLI, the Azure CLI uses Linux-style commands. Microsoft also offers Azure PowerShell, which is essentially a PowerShell module that can be used to manage Azure resources from a PowerShell session.
Microsoft claims "AWS is up to five times more expensive than Azure for Windows Server and SQL Server." Microsoft further states that running Windows VMs on Azure can yield up to a 71% savings over running those VMs on AWS EC2. The company makes similar claims about SQL managed instances and SQL Server VMs with savings of 85% and 45%, respectively. Ultimately, the amount paid depends on several factors. Microsoft provides a pricing calculator to estimate the cost of running various workloads on Azure.
3. Google Cloud
The Google Cloud, shown in Figure 3, is the third largest cloud platform, and generates more than $20 billion in revenue each year based on research from Dgtl Infra.
Like Microsoft and Amazon, Google ties its SLAs to specific services. In the case of Google's Compute Engine, a single instance is guaranteed to have greater than 99.5% availability. That number increases to 99.99% for instances in multiple zones or for load-balanced instances. Google also offers a financial credit when it fails to meet its SLAs.
Regions and zones
Google has an impressive number of data centers in the Asia-Pacific region, North America, South America, Europe and the Middle East. Collectively, these account for the company's 34 regions and 103 availability zones. There are approximately three dozen availability zones in North America alone.
In addition to the web portal shown above, Google offers a command-line environment known as gcloud CLI. It supports Linux-style commands and can be installed on Linux, MacOS or Windows. There are also downloads available for Debian, Ubuntu, Red Hat, Fedora and CentOS.
Google offers the same type of pay-as-you-go pricing as other providers. Those who wish to try out Google Cloud can receive up to $300 in free credits and access to more than 20 products within the Google Cloud. Because cloud pricing tends to be complex, Google provides a pricing calculator that can estimate what it will cost to run various workloads in Google Cloud.