In more recent years, public cloud adoption has become an integral part of most businesses' infrastructure strategy and roadmap. Enterprises from around the world have already made the switch from self-hosted infrastructure to public cloud configurations.
And while companies will still need some on-premise technology, they can now develop applications directly in the cloud. In fact, roughly 73% of businesses already have at least one app or part of their infrastructure in the cloud. By 2020, 83% of enterprise workloads will reside in the cloud.
For those looking to go down the road of cloud adoption, several questions come to mind. These are "Which cloud platform should I adopt?" "Which platform provides the most cost-effective services for my needs?" and "How do I go about my cloud adoption?"
How Are Public Clouds Used?
Typically, public cloud services are used as:
- Software as a Service (SaaS) - This allows people to use cloud-based applications.
- Platform as a Service (PaaS) - This is a cloud platform that provides runtime environments for developing, managing, and testing applications.
- Infrastructure as a Service (IaaS) - This is a cloud platform hosting infrastructure components that are present in physical data centers. IaaS is, thus, a virtual data center.
According to industry analyst firm Gartner, the IaaS market has reached $52.9 billion in 2019 and is expected to exceed $83.5 billion by 2021. The SaaS market, on the other hand, is at $87.2 billion and will reach $117.1 billion in two years. Although smaller than both SaaS and IaaS, PaaS will also see steady growth over the coming years. In 2019, the PaaS market is at $18.6 billion, reaching $27.3 billion in 2021.
What's The Public Cloud Market Share
At the moment, three leading cloud platform providers make up the majority of the market share. These are Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP). As of the first quarter of 2019, AWS dominates the market at a 38% percent market share. It's followed by Microsoft Azure with 18% and Google Cloud at 9%.
Now, even if both Azure and GCP are behind AWS in terms of market shares, they have both seen significant growth in recent years. While AWS has seen 41% in growth, Azure and GCP saw 75% and 83%, respectively.
The Big 3 Cloud Platform Summary Comparison
- Amazon Web Services - Having an extensive toolset that continues to expand, AWS's capabilities have a lot to offer for businesses of different sizes and in many industries. Its main issues, however, are in terms of its confusing cost structure and its focus on the public cloud. A lack of attention on hybrid or private clouds means that interoperating with your data center isn't AWS's selling point.
- Microsoft Azure - With a similarly capable could infrastructure, Azure is a close competitor to AWS. Very few companies have the enterprise background and Windows support of Microsoft. As such, Azure knows that many companies operate their own data centers, focusing much of its effort on the hybrid cloud.
- Google Cloud Platform - Though it's the underdog in this top 3 competition, GCP is also the one that entered the market last. It also doesn't have the same enterprise focus as its counterparts, meaning that it doesn't draw in as many corporate customers. That said, the platform is well-funded; it has an in-depth technical expertise and is investing significantly in AI, ML, and data analytics.
AWS Vs Azure Vs Google Cloud Customers
Since it's the oldest on the market, AWS also has the biggest community support and user base. Among its high-profile customers, we can include the likes of Unilever, BMW, Netflix, Airbnb, and Samsung.
Azure has also taken its fair share of well-known customers. In fact, almost 80% of Fortune 500 companies use it. Some of these are Fujifilm, HP, Johnson Controls, Polycom, Apple, and Honeywell, among others.
When it comes to Google Cloud, it also has its own high-end companies that use its services. Among the most noteworthy, we can include PayPal, Bloomberg, 20th Century Fox, Dominos, HSBC Bank, and others.
All three cloud providers offer cloud computing services that can meet even the most basic needs. The main difference lies in the total number of services and how these fit with each company's needs. Below, we will be taking a closer look at each of these platforms in more detail and see which services and features distinguish them from their competition.
AWS Pros and Cons
As mentioned, AWS's primary strength is in the public cloud market, being the cloud IaaS majority market share leader for over a decade. One of the reasons for this popularity is its vast scope of operations. AWS has a broad and growing array of available services.
It also provides a comprehensive network of worldwide data centers. In a sense, AWS is the most mature and enterprise-ready cloud provider as it offers the most capabilities of governing large numbers of resources and users.
On the downside, Amazon's platform has cost-related issues. While it has lowered its prices, many find it difficult to understand its cost structure and manage their costs effectively while running high-volume workloads. Another drawback is its limited hybrid or private cloud capabilities.
Why Choose AWS
AWS is a good choice for both startups and enterprises alike. The platform provides numerous services for both web and analytical workloads as well as large scale data center migrations.
Amazon is also looking to help differently-sized customers by offering niche services via RoboMaker, while also building a virtual private server in the form of LightSail. This way, they want to help even small, single-server workloads to be onboarded without much overhead.
From a compute perspective:
- AWS provides a wide range of virtual machines (VM) types (136 VM types over 26 VM families) and storage options. This allows customers to run small web workloads to large SAP or HPC workloads.
- It also provides Bare-Metal-as-a-Service for single tenancy for compliance and regulatory workloads.
- AWS provides placement groups that ensure virtualized workloads run on designated underlying hardware.
In terms of managed databases, AWS supports MySQL, PostgreSQL, MariaDB, Oracle, and MS SQL. They also feature their own PostgreSQL and MySQL compatible database offerings. For NoSQL databases, they provide DynamoDB for key-value and document, Elasticache for key-value caching, and Neptune for graphs.
AWS also provides a managed VPN Gateway, NAT gateway, Direct Connect Gateway, Transit Gateway, and a recently announced Client VPN service. This will remove the need to deploy OpenVPN servers when managing access to the company's VMs.
As far as network security is concerned, AWS has managed services for:
- Web Application Firewall (WAF)
- AWS Inspector
- AWS Shield for DDoS protection
- GuardDuty for threat detection
- AWS Config and CloudTrail for inventory auditing and policy management
For data security, AWS provides:
- KMS and CloudHSM services for key management
- Encryption at Rest for most storage services
- Macie - an AI-driven data loss prevention (DLP) service
Microsoft Azure Pros and Cons
Though Azure came later on the cloud market than AWS, it got a significant jumpstart by taking its on-premise software and moving it to the cloud. This includes Windows Server, Office365, Sharepoint, .Net, SQL Server, Dynamics Active Directory, and more.
This is particularly important since many businesses use Windows and other Microsoft software. And as Azure is highly integrated with these applications, companies that use Microsoft software will also feel at home using Azure. Also, those that are already Microsoft enterprise customers can expect sizable discounts.
The drawbacks of Azure sometimes come in the form of technical support, training, documentation, and the width of its ISV partner ecosystem.
Why Choose Azure
Azure also provides a wide range of features that may be preferred by customers that are already using Microsoft products. With over 151 VM types over 26 VM families, Azure can support both small web workloads as well as SAP, HPC, and Oracle workloads. It also has Windows and Linux distros like CentOS, SUSE, RHEL, and Ubuntu, as well as a separate family of instances for AI/ML workloads.
For those who want to interface Azure and run services in their own data centers, they can use Azure Stack, its hybrid cloud computing software solution. The platform also offers support for hybrid storage apps like StorSimple. Data centers with predominantly Microsoft workloads that need to migrate to the cloud can use Azure Site Recovery to do so.
When it comes to SQL and NoSQL databases:
- Azure provides managed MS SQL Server and SQL Datawarehouse
- Managed databases for MySQL, PostgreSQL, and MariaDB
- Azure Table for managed key-value storage
- CosmosDB for multi-model globally distributed NoSQL database
In terms of billing, Azure provides a pay-as-you-go (PAYG) model. Those that have existing enterprise accounts can also pre-purchase Azure subscriptions as part of their annual renewals. This makes it easier for budgeting.
Google Cloud Platform Pros and Cons
Unlike the other two, GCP specializes in high compute offerings in the form of ML, Big Data, and analytics. It also offers great scale and load balancing. Many customers choose to use GCP as a secondary provider. Nevertheless, those that are more open-source and DevOps-centric will tend to go with GCP as their main cloud provider.
In terms of downsides, Google's platform doesn't offer the same array of features and services like Azure or AWS. It also doesn't have as many global data centers as its two main competitors, but it's expanding at a rapid pace.
Why Choose GCP
While Google has the smallest number of VM sizes (28 instance types over 4 categories), it makes up for it by allowing its customers to create their own custom sizes based on memory and CPU. This means that users can match their cloud workloads sizing to their own on-premise sizing.
Billing is also based on the total memory and CPU used rather than VMs, which reduces the overall waste of unused capacity. Another waste-reducing feature is its per-second billing instead of the traditional per-hour method. Google also provides automatic discounts that can reduce the on-demand price. The sustained use discount, for instance, offers a price reduction when a VM runs more than a certain number of hours in a month. This makes GCP the most cost-effective cloud provider.
VM startup times in GCP are very fast, making scaling out especially responsive. The platform also helps its users assess, plan, and live-migrate their VMs to GCP for free. It does this through its third-party cloud migration tools like CloudPhysics, Velostrata, and CloudEndure.
Having a global, low latency network, GCP is great at its networking. While other cloud providers limit their VPC networks to any given region, Google's VPC network spans all its regions. This makes it easier to build applications for global customers without the need for cross-region infrastructure design or data replication. The same thing goes for object storage.
GCP provides support for managed PostgreSQL and MySQL databases. Also, for those wanting a globally distributed database, they can use Spanner. This is Google's NewSQL globally distributed database service that provides developers a production-ready storage solution that uses consensus algorithms and atomic clocks, among other such features. These help with synchronizing transactions between nodes.
What Cloud Solution is Best for You?
While the aforementioned services are not all that each platform has to offer, they are, however, the most noteworthy features that set them apart from one another. That said, here is a short rundown to help you make a decision.
Choosing AWS - Amazon's platform has a rich collection of tools and services for large scale uses. That said, you should make sure to understand its pricing structure before running a high volume of workloads on the service.
AWS is a good fit for:
- Larger companies
- More global reach
- Flexibility and a wide range of services
- Stable and reliable services
Choosing Azure - Azure's biggest appeal is its Microsoft software integrations. Similarly, the platform's focus on the hybrid cloud helps bridge your legacy data center environment with the scalable Microsoft cloud.
Azure is a good fit for:
- Companies operating on Windows-based business apps and platforms
- Migrating to the cloud for the first time
- Companies needing a hybrid solution
Choosing GCP - Google is a great platform in terms of its application container deployments, big data, ML, and analytics capabilities. It also offers the best pricing model of all the three.
GCP is a good fit for:
- Its comprehensive container-based model
- Its hyperscale networking environment
- Developing and deploying cloud-based apps and software
- Companies already ahead with their digital migration and that want a leaner, more cost-efficient, and greener tech solution