Battle of the Clouds: AWS vs. Azure vs. Google vs. IBM
The cloud market has grown at lightning speed for the last decade, and rightfully so. Cloud platforms offer flexibility and scalability at a cost and performance ratio that’s nearly impossible to match by on-premise set ups.
There are hundreds of public cloud service providers in the market today, but as with most industries, a few key players have dominated the market: Amazon Web Services (AWS), Microsoft Azure, Google Cloud Platform (GCP) and the IBM Cloud.
Each of these cloud providers have hundreds of services to offer: some of which are very similar across all the vendors, while others are unique to that specific provider (e.g. Azure AD). Pricing varies widely between similar services, so comparing each cloud service can take up an entire book. However, in this article, we will provide a high level comparison between these cloud platforms to help you decide which is the most suitable for your business.
Amazon Web Services
AWS is a cloud computing platform developed by Amazon—the retail e-commerce giant. Launched in 2006, AWS was an early pioneer in the cloud industry and has grown to become the market leader with a 32% market share.
AWS is the first choice for IaaS (Infrastructure-as-a-Service) platform for many enterprises. It provides over 200 cloud services at a competitive price in 245 countries around the world. AWS is constantly adding new services and updating existing ones, helping their customers experiment and innovate with the latest technologies. At re:Invent 2020, Amazon’s annual user conference, they announced nearly 150 new features and enhancements. AWS boasts some of the biggest brands as its clientele like Netflix, BBC, Adobe, and Coca Cola.
AWS has the biggest market share of all 4 platforms, perhaps due to its extensive feature list. The image below shows only part of AWS services:
Its main cloud compute service is EC2—virtual servers that provide secure and flexible compute capacity in the cloud. It supports Windows, Linux, and other Unix operating systems and can facilitate high performance computing.
Other AWS services you may be familiar with include VPC, IAM, S3 storage, RDS Elastic Load Balancing, and Auto Scaling. Similar versions of these services are available from other cloud providers, but as a pioneer in the cloud industry, Amazon has definitely been a driving force behind these.
Besides the core computing, storage, and database services, AWS also offers a number of “serverless” services. This includes containerized applications running on Kubernetes clusters, code development, integration, deployment, and Lambda functions just to name just a few.
Some of the other popular AWS services include: Redshift for data warehousing, EMR for Analytics, Kinesis for streaming data, DynamoDB for NoSQL database, Route 53 for DNS, or SQS for message queuing.
Amazon develops and markets its AWS services at a fierce rate to keep ahead of the competition and brings in new services each year.
Although the market leader, AWS has a complex pricing structure. It can be so complex that AWS now actually offers a pricing calculator to enable customers to forecast their cloud spending.
Taking advantage of AWS features whilst keeping costs under control requires continuous cost optimization efforts. However, it also has a free usage tier across various services, available for the first year after sign-up.
One of Microsoft’s main cloud-based compute services is the Azure Virtual Machine. Similar to EC2, Azure Virtual Machines support both Windows and Linux, and have high performance computing options available. They also come with server app runtimes such as .NET, Java and Python.
Azure also offers a containerization service called Azure Kubernetes Service (AKS). This is a serverless container system that deploys containerized applications within minutes. Other popular Azure services include: Azure SQL database, Data Factory, Azure Synapse, Azure AD, Azure DevOps, Azure Bots, etc.
Machine Learning and AI have been hot topics in recent years. Azure has definitely taken note of this, and launched the Azure Machine Learning service, available to users of all skill levels.
Besides traditional cloud services, Azure also offers cloud-hosted versions of Microsoft applications such as Office 365, SharePoint online, SQL Server and Active Directory. For this reason, Azure is the preferred choice for enterprises who rely heavily on Microsoft applications.
The following image shows the broad categories of Azure services available:
Google Cloud Platform
As of 2021, GCP offers over 120 cloud services. Although its portfolio of cloud services is not as extensive as AWS or Azure, GCP is incredibly well-funded. Additionally, its tools for machine learning and containers are some of the best in the industry. Google’s commitment to open source also makes it an attractive choice for developers. The image below shows a partial list of services:
Google Cloud Platform offers over 120 services to its customers. Although this is a smaller number compared to its competitors, there’s still a wide variety of compute, networking, storage and machine learning services to make it the third-most popular cloud platform to enterprises. One of its primary services is the Compute Engine which supports almost any operating system and has options for both custom and pre-defined machine types. Also, if you are a fan of Kubernetes container orchestration services, Google may be the right choice for you as they originally designed it, giving them extensive experience with the now open-source containerization system.
Other popular GCP services include Cloud Pub/Sub, BigQuery, Apigee, Lokker, Firestore, etc.
Similar to Microsoft’s Office 365 product suite that uses the Azure cloud backend—Google offers Google Workspace—a collection of collaboration tools such as Gmail, Google Calendar, Meet, Google Drive, Google Docs, and Google Sheets.
One advantage Google has over AWS is its large-scale private networks. AWS relies heavily on the public internet for data transmission, making it more latent than Google. If low latency is important to your business, Google might win the battle.
For those who care about their carbon footprint, GCP has the added benefit of using carbon-neutral infrastructure.
Pricing is an area where Google has tried to differentiate themselves from other providers. It has made its pricing structure more transparent and easier for customers to understand. It has also tried to beat the prices of most cloud providers, and offers competitive discounts. Users can use the Google cloud platform pricing calculator to estimate their workload costs.
Another key differentiator is that Google charges per second of resource usage, compared to the per minute charging model of AWS and Azure. This won’t be a benefit to customers who don’t scale down their servers often, but for those who do, it could be a game changer.
After its acquisition of SoftLayer in 2013 (the largest private cloud provider at the time), IBM has continued to grow its cloud services and is currently listed as one of the leaders in the Gartner Magic Quadrant for Cloud. Although most businesses focus on “The Big 3” (AWS, Azure, and GCP) when evaluating cloud providers, IBM Cloud is also worth investigating.
IBM offers the same core cloud services as AWS, Azure and Google, but following their acquisition of RedHat in 2019, it shifted its focus on marketing a hybrid cloud solution model.
IBM provides the core cloud services such as compute, storage and networking. As of 2021, there are over 190 services in the portfolio, some of which are shown in the image below:
For compute, organizations have the choice of bare-metal or virtual servers. With bare-metal servers, clients have sole access to the entire server and can fully customize it according to need, thus avoiding the “noisy neighbour” effect and improving overall performance.
Final Words: Making a Decision
Comparing AWS to Azure to Google to IBM isn’t a simple task. It becomes even more difficult for organizations that have never used any cloud platform and are only just starting the journey.
For one thing, providers are always updating pricing across their service range. And the same service across different cloud providers would be available in a number of configurations that can’t be compared apple to apple.
To show this, let’s consider cloud-hosted VMs: AWS calls them EC2, Azure calls them VMs, GCP calls them compute engines, and IBM cloud calls these Virtual Servers. Although they mean the same thing, their prices will depend on which region you are creating them, the vCPU/RAM combination, if you are pre-purchasing the instance, if the VM is sharing the host with other cloud tenants, and so on. How do you compare with all the variables in place?
We summarized each provider’s features and pricing which should give you a broad idea of how they could fit with your business goals. The table below shows a high-level feature comparison:
For the majority of organizations, the real battle is usually between AWS and Azure. These two have the widest range of features and largest global footprint. If you are a large organization, requiring stability, AWS or Azure would be a safe bet. However, many large organizations are also now moving to multi-cloud environments whereby they are signing up for a third, or even fourth provider. So don’t discount GCP and IBM cloud!
For example, if you are building a system with IBM Watson, signing up for the IBM cloud may be the logical choice. Similarly, If you’re looking for an open-source friendly environment, a more transparent pricing structure, or want to use the most advanced machine learning and AI tools, Google could be a better fit.
Ultimately, your decision should be based on the following points:
- What features you need for your cloud-based application so it aligns with your business goals.
- Which cloud providers offer most (if not all) of the features needed.
- The calculated estimated price for the workload if hosted on that cloud platform.
- The ability to cut down on up-front costs (e.g. pre-purchasing instances and capacity, purchasing multiple services, existing user discounts, etc.)
- Available data sovereignty and data protection in the selected region.
- Available network bandwidth for large data transfers.
- Service Level Agreements.
- Training, support, and available professional services.
We would also encourage readers to sign up to each of these cloud providers and take advantage of the free services available. You can then run some sample workloads on each platform to see how it affects the price, and performance.