When I first started working in the tech industry, I'll admit that it took me a while to figure out the answer to this top-of-mind question:
What the heck is "the cloud"?
It seemed like such a simple question, but I didn't have the courage to come out and ask it. So, like any good blogger, I resorted to the internet to figure it out.
And what I learned is, "the cloud" is a pretty big deal that powers how a lot of modern technology companies operate.
You see, the cloud refers to how and where data is stored — and perhaps more importantly, where it isn't. The cloud allows software and services to run on the internet, instead of only locally on one device, because the data is stored remotely across a variety of different servers.
As you might have guessed, thinking about all of the other services you can access from any online device, the cloud is a big deal. You might also be wondering, how are these cloud-based services built?
You'll learn how different cloud computing services are used to build the technologies you use every day in this blog post. And if you're still confused about the cloud, don't worry — clearer skies are ahead.
IaaS, PaaS, and SaaS stand for the three main categories of cloud computing. Cloud computing is the practice of using a network of different servers that host, store, manage, and process data online — in "the cloud," as I mentioned earlier.
Let’s go over a quick definition for each of these services.
IaaS (Infrastructure as a Service): IaaS products allow organizations to manage their business resources — such as their network, servers, and data storage — on the cloud.
PaaS (Platform as a Service): PaaS products allow businesses and developers to host, build, and deploy consumer-facing apps.
SaaS (Software as a Service): By far the most common cloud service, SaaS products offer both consumers and businesses cloud-based tools and applications for everyday use.
These software and services can be accessed on any internet browser, or via online apps that can be used on different devices. One key example: the cloud lets your team collaborate on Google Docs instead of forcing you to work on one Microsoft Word document and send it around to each other.
Compare that with on-premises software, which is installed locally on a server or device at an organization’s physical location.
On-premises services are deployed, hosted, and maintained on hardware at an organization’s building or campus. While cloud-based software can be accessed via the internet, on-premises software requires you to buy a license, which can then be installed on the organization’s hardware. For cloud-based services, you’d typically pay a subscription instead.
Since most software and platform providers now run on a cloud-computing model, it’s challenging to find active examples of on-premises software. One example would be Adobe Photoshop Elements. While you can still install it via the cloud, you can buy a license in CD-ROM format and install it locally.
Now that you have an overview of the different cloud services, let’s break it down a little further.
IaaS (Infrastructure as a Service)
IaaS, or infrastructure as a service, is a cloud-based service that allows resources to be delivered to organizations virtually (or through the cloud). IaaS tools help organizations build and manage servers, networks, operating systems, and data storage without needing to buy hardware.
IaaS customers can control their data infrastructure without having to physically manage it on-site. Instead, they store data on the servers of IaaS providers, and use a dashboard or API (application programming interface) to access and manage their resources.
What does IaaS do?
IaaS helps companies build and manage data as they grow, paying for the storage and server space that’s needed without having to actually host and manage servers themselves on-site. IaaS products make up the foundations of building new technologies delivered over the cloud.
IaaS providers manage their customers’ data on physical servers across the world. Think of an IaaS tool as a server — only you don’t have to manage a physical server, because the IaaS provider does it for you.
IaaS products deliver storage systems, networks, and servers virtually to enterprise businesses. Organizations can access and manage their data through either a dashboard or by creating a native dashboard, then connecting it to the IaaS provider’s API.
IaaS cloud infrastructure offers companies and administrators the greatest level of control and power over software and hardware. It also has other benefits:
Its pay-as-you-go model allows businesses to only pay for the resources they use.
Organizations have complete control over their infrastructure.
It can be scaled or downsized as needed.
There’s no need to buy a physical server or maintain it.
The principal drawback of relying on an IaaS tool is that you're still responsible for being “technologically” secure. In addition:
You have to make sure that your apps and operating systems are working properly and providing utmost security.
You’re in charge of the data — if any of it is lost, it’s up to you to recover it.
Because it provides the greatest amount of control, IaaS tools are also the most hands-on. IaaS firms only provide the servers and its API, and everything else must be configured on your end.
Amazon Web Services (AWS): AWS is overseen by Amazon and is used for on-demand cloud computing and purchased for on a recurring subscription basis. AWS helps companies store data and deliver content — in fact, it's helping you read this blog post right now.
Microsoft Azure: Microsoft Azure is a cloud-computing IaaS product that allows for building, testing, and managing applications through a network of Microsoft data centers.
Google Cloud: Google Cloud is an IaaS platform that businesses can use to natively run Windows, Oracle, and SAP. Additionally, a business can manage its enterprise database and use AI solutions to increase operational efficiency within the firm.
IBM Cloud: IBM Cloud is another IaaS product that allows businesses to “allocate your computer, network, storage and security resources on demand.” In other words, businesses only use resources when needed, increasing efficiency.
PaaS (Platform as a Service)
A PaaS, or platform as a service, provides developers with a framework they can use to build custom applications. PaaS doesn’t deliver software over the internet, but rather a platform that developers can use to create online software and apps.
What does PaaS do?
PaaS products let developers build custom applications online without having to deal with data serving, storage, and management.
Think of PaaS as a much, much more scaled-down version of IaaS. A platform as a service still provides customers with servers and data centers on which they can store their information (in this instance, an app), but its customer is a developer creating a single app that will then be delivered over the internet to consumers. You can think of PaaS as the platform where SaaS applications are made.
PaaS provides a secure platform on which developers can create software and apps for consumer use. Developers access PaaS tools over the web. For instance, take a look at the Heroku dashboard, where I was prompted to create an app.
Developers use PaaS because it’s cost-effective and allows for easy collaboration for an entire team. Consider building an app on your local drive, then trying to deploy it online — that’s difficult or might take too many steps.
With a PaaS, developers build their app right on the platform, then deploy it immediately.
PaaS tools are very easy to use and sign-up for.
Developers can collaborate with other developers on a single app.
Developers can easily customize and update apps without thinking about software upkeep on the backend. Just code and go.
If the app grows in adoption and usage, PaaS platforms offer great flexibility and scalability.
The disadvantage of the PaaS model is you can only control what's built on the platform — if there’s an outage or issue with the hardware or operating system, it will take out the software with it.
Other drawbacks include:
It’s very limited in that you only have control over the code of the app and not the infrastructure behind it. Only small to medium firms should use it.
The data isn’t stored by you, but rather by the PaaS organization. This poses a security risk to your app’s users.
You’re limited by the PaaS terms of service, so you can’t extensively customize how the platform works on your end.
Google App Engine: Google App Engine allows developers to build and host web applications in cloud-based data centers that Google manages.
Red Hat OpenShift: Red Hat OpenShift is an on-premises containerization PaaS software.
Heroku: Developers can use this PaaS tool to build, manage, and grow consumer-facing apps.
Apprenda: Apprenda is a PaaS product that allows developers and businesses to host an entire application portfolio. Build and deploy applications of all types on this platform.
Next up, let's dive into SaaS — the acronym you're likely most familiar with.
SaaS (Software as a Service)
SaaS, or software as a service, refers to cloud-based software that is hosted online by a company, is available for purchase on a subscription basis, and is delivered to buyers via the internet.
What does SaaS do?
SaaS products are among the most popular cloud computing services used by companies to build and grow businesses. SaaS is easy to use and manage, and it's highly scalable, as it doesn't need to be downloaded and installed on individual devices to deploy it to an entire team or company. This is particularly helpful for distributed global teams who don't work in close proximity.
SaaS companies deliver their products over the web to end users. These tools can either be used as a web app (such as Google Docs) or downloaded and installed on the device (such as Adobe Creative Cloud). With a SaaS app, there’s no need for a specialist to come in and manually install it on each laptop using a purchased license.
The biggest advantage of using SaaS products is how easy they are to set up and start using. Because SaaS products are cloud-based, all you need to do is log online to start accessing the applications, without need for locally hosting the software on on-premises servers.
Additional benefits include:
You don’t have to manage or upgrade the software. This is typically included in a SaaS subscription or purchase.
It won’t use any of your local resources, such as space on your physical server (if you have one).
It’s extremely easy to find and purchase a SaaS product.
Your IT team won’t have to worry about the upkeep of a SaaS product.
SaaS tools’ ease of use lends itself to a significant disadvantage: When you use a SaaS product, you have no control over the cloud-based infrastructure it runs on, so if the software provider experiences an outage, so do you. This can lead to widespread website outage and issues that can, in turn, impact your SaaS-dependent business processes.
Some more drawbacks include:
SaaS tools may be incompatible with other tools and hardware that are already in use at your business.
Integrations are typically up to the provider, so it’s impossible to “patch” an integration on your end.
You’re at the mercy of the SaaS company's security measures — if a leak happens, all of your and your business’ data may be exposed.
HubSpot: HubSpot is a CRM, marketing, sales, and service SaaS platform that businesses use to connect with and retain customers.
JIRA: JIRA is a project management software that's delivered by Atlassian and can be purchased on a subscription basis by customers.
Dropbox: Dropbox is a file-sharing SaaS tool that allows multiple users within a group or organization to upload and download different files.
DocuSign: DocuSign is a SaaS product that businesses use to send contracts and other documents that require signatures.
What's the Difference?
To examine the differences between IaaS, PaaS, and SaaS, think of these terms as under the umbrella of cloud-computing (building, creating, and storing data over the cloud), and think about them in the order we've presented them.
Every type of cloud-computing is different and has pros and cons that vary from the rest. Understanding the structure of each one will help you determine the right approach for your business.
To start, let's begin with comparing IaaS to PaaS.
IaaS vs. PaaS
The most distinct difference between IaaS and PaaS is that IaaS offers administrators more direct control over operating systems, but PaaS offers users greater flexibility and ease of operation.
Let's say I wanted to start a website. I would need an IaaS product, like Amazon Web Services, to host it and its applications. If I wanted to create a custom feature, I could use a PaaS product like Google App Engine to design it and install it on my site.
IaaS builds the infrastructure of a cloud-based technology. PaaS helps developers build custom apps via an API that can be delivered over the cloud. And, SaaS is cloud-based software companies can sell and use.
Think of IaaS as the foundation of building a cloud-based service — whether that's content, software, or the website to sell a physical product. PaaS is the platform on which developers can build apps without having to host them, and SaaS as the software you can buy or sell to help software companies (or others) to get it all done.
Now, let's compare SaaS to PaaS.
SaaS vs. PaaS
SaaS products are fully managed by another company, from the applications to the data to the servers, whereas PaaS products can be used as the foundation for building new products on top of the platform's network.
For example, if I wanted to create an app for my business, I would use a PaaS product. This would act as the platform for my app to run on. Once it was finished, my app would be considered SaaS. That's because my software application is now providing a service to its users.
With both products, there's a risk of external management data issues compromising the functionality or security of the tools you're using. SaaS is best for companies looking for an out-of-the-box ease of use, and PaaS is best for companies looking to build a solution on an existing network.
Using Cloud-Based Software Increases Productivity and Efficiency
Cloud-based software servers are convenient and easy to use for most businesses, allowing them to virtually manage their organization’s technical infrastructure, create apps, and access a wide array of tools without needing to buy and maintain a physical server. These services can boost productivity and efficiency at your company — and help you grow better as a result.
Editor's note: This post was originally published in May 2018 and has been updated for comprehensiveness.
Originally published Apr 30, 2021 5:15:00 PM, updated November 05 2021