Contents
- Contents
- Prerequisites
- Introduction
- What is Cloud Computing?
- The Pros & Cons of Cloud Computing
- Core Cloud Computing Models
- Leading Cloud Providers
- Summary
Prerequisites
None
Introduction
Since its emergence as a mainstream technology in the late 2000’s, cloud computing has emerged as a paradigm shift in the way organizations leverage and manage their IT resources, offering unparalleled flexibility, scalability, and cost-efficiency compared to traditional on-premises infrastructure.
Before the emergence of cloud computing, organizations had to provision and manage their own data centers. Setting up and maintaining a data center required significant up-front investment in physical infrastructure such as servers, networking equipment, and storage systems. Organizations had to carefully consider their future resource needs in an attempt to avoid over-provisioning or under-provisioning resources, which could result in wasted expenses or performance bottlenecks and a poor customer experience as a result.
Managing a data center also involved ongoing tasks such as hardware maintenance, software updates, security management, and scalability planning. This required dedicated IT staff and resources, diverting attention and resources away from core business activities.
This model of self hosting data centers was costly and inflexible, making it challenging for organizations to adapt to rapidly changing business requirements and technological advancements. Cloud computing revolutionized this landscape by offering a more agile, scalable, and cost-effective alternative.
In this article, we’ll step through a brief introduction to cloud computing. We’ll look at what cloud computing is, some of the benefits and potential pitfalls of operating in the cloud and the types of cloud computing models available to organizations. We’ll conclude the article by examining some of the leading cloud providers as of Q1 2024, and finally summarize everything that we’ve learned about cloud computing.
What is Cloud Computing?
Cloud computing refers to the delivery of computing services, including servers, storage, databases, networking, software, and more, over the internet. This means that organizations can leverage the hardware and software provided by data centers owned by cloud providers, without the upfront expense of setting up their own local infrastructure.
Cloud providers are typically very large organizations that operate a network of data centers distributed across multiple geographic locations all around the world. When deploying solutions to the cloud, organizations can benefit from this global network of data centers by deploying resources to wherever they are needed. For example, data could be stored for European customers in EU data centers to comply with GDPR, or web servers deployed to a North American data center to give US customers low latency access to a company website.
The concept of cloud computing originated in the 1960s when computer scientist J.C.R. Licklider envisioned a global network of interconnected computers that would function as an “intergalactic network.” This vision laid the groundwork for the development of ARPANET, the precursor to the modern internet.
The term “cloud computing” did not gain traction until the mid 1990’s, primarily in academic and research circles. It wasn’t until the early 2000s that cloud computing finally emerged as a mainstream technology. The first public cloud platform, Amazon Web Services (AWS), launched in 2006 offering a range of cloud services, including computing power, storage, and databases, on a pay-as-you-go basis.
The Pros & Cons of Cloud Computing
There are many benefits associated with operating in the cloud. Some of the key benefits of cloud computing include:
- Scalability – Many services that public cloud providers offer allow you to easily scale your solutions to meet demand. Its possible to scale your solutions to serve millions of concurrent users at peak times, all the way down to zero users during periods of inactivity.
- Flexibility – You can access cloud services from any device that has an internet connection. This gives you seamless access to your resources whether you’re working from home, in the office, or on the go.
- Cost-efficiency – Cloud computing typically offers a pay-as-you-go pricing model, meaning that you only pay for the resources and services that you use. This eliminates the need for upfront (and usually costly) investments in hardware and infrastructure.
- Reliability – Cloud platforms are built on redundant infrastructure and advanced data centers, ensuring high availability and reliability for your solutions.
While cloud computing has a number of benefits, there are also potential pitfalls and challenges that come with operating in the cloud. Some of these include:
- Regulatory Compliance – Storing data in the cloud may raise concerns about data privacy and compliance with regulations such as GDPR or HIPAA. When you store data in the cloud, you must ensure that you comply with all relevant regulations. Some cloud services, particularly those where the user has limited to no control of the underlying infrastructure, may not be able to meet these regulatory requirements.
- Vendor Lock-in – When using the proprietary tools and services offered by a cloud provider, its possible become dependent on these services, making it challenging to switch to alternative solutions. The result of this is that users may become reluctant to adopt new technologies due to the associated costs and complexities, stifling flexibility and innovation.
- Limited Control Over Infrastructure – When using cloud compute services, particularly fully managed ones, control of the underlying infrastructure is usually handed to the cloud provider. While this means you don’t have to manage this infrastructure, this lack of control can be a problem for users with specific security, performance, or regulatory requirements that cannot be met without having a high degree of control over the underlying infrastructure.
- Cost-overruns – Cost is a double-edged sword in the cloud. While the pay-as-you-go pricing model can provide some big cost savings over operating your own infrastructure, you should monitor and configure your solutions carefully to avoid cost overruns and unexpected charges. Factors such as data transfer fees, storage costs, and even bugs in your application code can quickly rack up a significant bill.
Core Cloud Computing Models
Services offered by cloud providers generally fall into one of three core cloud computing models. These are Infrastructure as a Service (IaaS), Platform as a Service (PaaS) and Software as a Service (SaaS). In this section, we explore what each model provides, the characteristics of these models and some example use cases for each model.
Infrastructure as a Service (IaaS)
IaaS is a model of cloud computing that provides infrastructure such as storage, networking and virtual machines to the user. The cloud provider rents these resources to the user on an on demand basis and makes these accessible to the user over the internet.
In this model of cloud computing, the user does not need to operate their own infrastructure, they can simply rent the resources they need from the cloud provider on a pay as you go basis. The user does not need to manage any bare metal infrastructure, they are typically only responsible for managing the operating system of the virtual machines they use, along with any middleware, applications and data hosted on them.
IaaS allows users to avoid the up-front costs of purchasing and maintaining their own data centers. IaaS also allows users to scale infrastructure up and down to address rising or falling demand. On premise data centers on the other hand must maintain enough capacity to meet peaks in demand, resulted in wasted resources when demand is low.
An example use case for IaaS is performing a lift and shift migration of existing on-premise solutions to the cloud. Since the user maintains control of the operating system of rented machines and everything running within them, they can easily port applications running on on-premise hardware to the cloud with few modifications.
Platform as a Service (PaaS)
The PaaS model builds on the IaaS model by abstracting away the operating system and middleware layers, so that the user can focus only on managing applications and data. The cloud provider manages all hardware, operating system and middleware on behalf of the user, and provides the user with the tools necessary to build, test, deploy and run their applications.
PaaS enables the user to rapidly develop applications quickly and cost effectively at the expense of having limited control over the underlying infrastructure that runs them. This tradeoff is generally worthwhile, particularly if the user is not subject to controls or regulations regarding how data is stored or handled. Users in heavily regulated industries may be better served by the IaaS model, where they have much greater control over the underlying infrastructure.
PaaS is well suited to the development of cloud native applications. These applications are generally composed of small independent services, called microservices, that can work together to provide complex functionality.
Software as a Service (SaaS)
The SaaS model provides users with ready to use software, typically in exchange for an ongoing subscription fee. The cloud provider manages the infrastructure, operating system and application, as well as ongoing maintenance and upgrades to the software. The user simply accesses and uses the software via a web browser, purpose built app, API or other tool.
SaaS offers the simplest user experience of all the cloud computing models. The user has no control over the underlying infrastructure, they simply use the provided software to meet their needs. Since the software is hosted on the cloud, it is typically accessible from any location or device that the user is able to connect to the internet.
There are many examples of personal and enterprise SaaS products. These include mail services such as gmail, file storage apps like dropbox and google drive, collaboration tools such as slack and photo editing software like adobe photoshop. Most people will have used some type of SaaS software in their day to day lives.
Leading Cloud Providers
To conclude this article, we examine some of the most well known and respected cloud providers. At the time of writing, the three largest providers in order of market share are:
- Amazon Web Services (AWS)
- Microsoft Azure
- Google Cloud Platform (GCP)
AWS is the largest cloud provider with 31% of total market share, followed by Microsoft Azure with 24% and GCP in a distant third place with 11%. These top three providers alone account for a whopping two thirds of total market share of all cloud providers, in an industry worth approximately $620 billion as of the end of 2023.
While each of these cloud providers are well respected and offer capabilities that can satisfy the needs of most organizations, each cloud provider has its own unique set of strengths. We examine these in more detail below.
Amazon Web Services
Amazon Web Services (AWS), inaugurated by Amazon in 2006, is the oldest and most mature cloud service provider among the top three peers. Operating an extensive network of 105 availability zones dispersed across 33 global regions, AWS ensures robust coverage and reliability on a truly global scale. With an array of over 230 services, AWS boasts one of the most comprehensive service portfolios in the industry, accompanied by a thriving user community. AWS is an ideal choice for large enterprises seeking tried and true solutions capable of meeting the stringent requirements of highly regulated industries and discerning clients.
Microsoft Azure
Microsoft introduced Azure in 2010, quickly establishing a formidable presence in the cloud computing arena. With a footprint spanning over 60 geographic regions and a network of over 300 data centers, Azure’s unparalleled global coverage surpasses its competitors in reach and accessibility. Offering a diverse array of over 200 services, Azure presents a compelling option for organizations seeking to seamlessly transition their existing on-premise Microsoft applications and infrastructure to the cloud, using Azure’s streamlined migration process.
Google Cloud Platform
Introduced in 2011, Google Cloud Platform (GCP) is the youngest among the top three cloud providers, but over time has solidified its position as a major player in the industry. Boasting an expansive network of 121 availability zones distributed across 40 geographic regions, GCP’s global coverage is on par with its top three rivals. Despite having a comparably small portfolio of services compared to AWS and Azure, GCP excels in networking and data analytics, drawing from its extensive expertise in these domains. GCP is a great choice for organizations seeking top-tier solutions in big data and machine learning, or ultra-low latency networking requirements.
Summary
In this article we introduced the concept of cloud computing. We defined cloud computing as:
“the delivery of computing services, including servers, storage, databases, networking, software, and more, over the internet.”
We looked at the benefits of cloud computing, which included improved scalability, flexibility, cost-efficiency and reliability over traditional on-premise data centers.
We also looked at some of the challenges associated with cloud computing. These included concerns around regulatory compliance, vendor lock-in, limited control over infrastructure and cost-overruns.
We finished our introduction to cloud computing with a look at the Top 3 cloud providers. In order of market share, these were Amazon Web Services (AWS), Microsoft Azure and Google Cloud Platform (GCP).





Leave a comment