IaaS vs PaaS vs SaaS: Understanding Cloud Service Models

This page compares Infrastructure as a Service (IaaS), Platform as a Service (PaaS), and Software as a Service (SaaS) in cloud computing, providing a tabular comparison with relevant examples.

Introduction:

A cloud model represents a specific, pre-packaged combination of IT resources delivered by a cloud service provider. The following are three common cloud delivery models widely available:

  • IaaS
  • PaaS
  • SaaS

IaaS PaaS SaaS

As shown in Figure 1, IaaS provides infrastructure, PaaS provides a platform, and SaaS provides applications as a service to customers or users.

SaaS vs PaaS vs IaaS

Figure 2 depicts how a user can use, build, and move a desired software application with the help of SaaS, PaaS, and IaaS, respectively.

IaaS (Infrastructure as a Service)

IaaS diagram

  • It facilitates the migration of applications to the supplier’s hardware.
  • IaaS allows suppliers to share their physical servers with users or customers.
  • Fundamental resources provided include physical machines, virtual machines, virtual storage, Load Balancers, Software bundles, IP addresses, etc.
  • The resources are made available to end customers through server virtualization. The users can use these resources as if they own them.
  • Example: AWS EC2 (Elastic Cloud Compute) - It is a web service offered by Amazon which provides resizable compute capacity in the cloud.

PaaS (Platform as a Service)

PaaS diagram

  • It provides an environment to allow users to create their own web applications.
  • PaaS provides a runtime environment for applications, development, and deployment tools, etc.
  • It provides all the facilities required to support the complete lifecycle to build and deliver web applications.
  • Example: AWS Elastic Beanstalk - It is an easy-to-use service offered by Amazon Web Services to deploy and manage applications in the AWS Cloud.
    • Users can deploy and scale web applications and services developed with .NET, PHP, Java, Python, Node.js, Ruby, Go, Docker, etc.
    • Applications can be deployed on servers such as Apache, Passenger, Nginx, and IIS.

SaaS (Software as a Service)

SaaS diagram

  • It allows the use of software applications as a service to end-users. It allows users to access specific applications online.
  • In the SaaS model, software is deployed on a hosted service and it is accessible via the internet.
  • Example: Google Apps (Helps users to build, run, and market their SaaS products on Google Cloud)
  • Other SaaS examples include BigCommerce, Salesforce, MailChimp, Dropbox, DocuSign, ZenDesk, Hubspot, Slack, etc.

Tabular Difference between IaaS, PaaS, and SaaS with Examples

The following table highlights the differences between IaaS, PaaS, and SaaS with respect to various comparison parameters.

ParametersIaaSPaaSSaaS
Full NameInfrastructure as a ServicePlatform as a ServiceSoftware as a Service
Who uses it?System administratorsDevelopersEnd users
Which service users get?Virtual data center to store information and create platforms for services and app development, testing and deploymentVirtual platform and tools to create, test and deploy apps and servicesWeb software and apps to complete business tasks
Provider controls what?Servers, Storage, Networking, VirtualizationServers, Storage, Networking, Virtualization, OS, Middleware, RuntimeServers, Storage, Networking, Virtualization, OS, Middleware, Runtime, Applications, Data
User controls what?OS, Middleware, Runtime, Applications, DataApplications, Data-
CostMost expensiveMid-level costCheapest
FlexibilityVery flexibleFlexible but with some limitationsLowest modifications
SecurityMost control over data, but need advanced knowledge in securitySecure but higher level of risk than SaaSSecure but can be accessed by provider