IaaS, PaaS, and SaaS are the three types of cloud computing services. This Techspirited article explains these services and also the deployment models of cloud computing, i.e., private, community, public, and hybrid.
Gartner, Inc. predicts the following compound annual growth rate (CAGR) for each of the 3 cloud computing services through 2016:
- Infrastructure as a Service (IaaS): 41.3%
- Platform as a Service (PaaS): 27.7%
- Software as a Service (SaaS): 19.5%
The definition of cloud computing according to the National Institute of Standards and Technology is―”Cloud computing is a model for enabling ubiquitous, convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) that can be rapidly provisioned and released with minimal management effort or service provider interaction.”
It means that in cloud computing, computing resources like servers and applications can be provided to the end user anywhere, regardless of the geographical location. These resources will be provided only until the time the user requires them. Only those features that the user chooses to configure will be provided.
The cloud services are provided to the user through the Internet. They can be accessed from a personal or desktop computer, a laptop, and also from smartphones and tablets. If at a particular time your requirement increases, the services can be scaled up. They are provided on a pay-per-use basis.
Different Service Models of Cloud Computing
#1. Software as a Service (SaaS)
In this service model, the user only uses the application software that the service provider provides via a thin-client interface, such as a web browser or a program interface. The application software is delivered over the Internet. The user does not have to download or install the software. It resides and runs on the service provider’s server. The application can be accessed from any device connected to the Internet such as a personal computer or even a smartphone or a tablet. The end user only configures the application as per requirements. The user has no capability to manage or control the infrastructure behind the service―the server and the storage, the network, or even the operating system.
You do not purchase the software, but only rent it for sometime. The service is offered on a subscription or a pay-per-use basis. Sometimes, the providers initially do not charge anything.
Example: Google Docs is an example of SaaS. You have access to a suite of software like a word processor, spreadsheets, etc., via the Internet by just logging in to Google.
#2. Platform as a Service (PaaS)
In this service model, the developer can develop applications in the platform and environment provided by the service provider. The application so developed by the developer will be hosted on the cloud and will be made available to end users over the Internet. The developers create these applications using the programming languages, libraries, services, and tools supported by the provider. In this service, the developers are provided with operating systems, databases, middleware, software tools, server-side scripting environment, tools for design and development, and storage and hosting by the PaaS provider. The developers do not have to worry about managing the network, servers, storage, operating system, i.e., the infrastructure is managed by the PaaS provider. The developer just has to control the deployed applications that is being deployed to the end user. The users pay as per usage.
Example: Facebook Apps is an example of PaaS. APIs to develop these apps are provided to the developers by Facebook. The developers can deploy these applications for the consumer to use through this platform.
#3. Infrastructure as a Service (IaaS)
In this service model, the user is provided with hardware, storage, servers, network components, and other fundamental computing resources. This means instead of buying servers yourself for your organization, you can outsource your requirement to an IaaS service provider. The user is able to deploy and run the software he chooses on the network. The user can also manage the operating system and storage, and has a say over some networking components; for e.g. host firewalls. Even in this service model, the users pay as per usage like other models.
Example: Any web-hosting company, such as Amazon EC2 and IBM are some examples of IaaS providers.
The following are the deployment models for cloud computing services depending on who has access to these services:
- Private Cloud: A private cloud is meant for only one organization or agency. The cloud service provider will provide the services requested by the organization exclusively. It will not provide those services to any other organization. It can be located on or off premises of the user.
- Community Cloud: A community cloud is designed for use by a group of organizations that have a similar concern; for e.g. security requirements, policy, compliance, etc. The cloud is either owned and managed by them or a third-party cloud service provider or both in combination. This measure contributes to cost-cutting for the organizations involved.
- Public Cloud: A public cloud, as per its name, is available freely to the general public. It is owned by the cloud service provider, which may include business, academic, or government institutions. This is a very economical model because the users only pay as much, and as and when they need. Sometimes, it is also offered for free. One such example of this model is Google.
- Hybrid Cloud: In a hybrid cloud deployment model, the services are delivered by combining two or more distinct cloud infrastructures (private, community, or public). Organizations get the dual advantage of security of a private cloud and cost-effectiveness of public cloud. This deployment model is preferred by those organizations who require the functionalities of more than one model. This model is useful in times of cloud bursting when the requirement scales up, and the existing infrastructure is not able to balance the load.
According to Gartner, Inc., 2016 will be an important year for cloud computing. Hybrid cloud will be preferred over private cloud. Nearly 50% of the large enterprises will have hybrid cloud deployments by the end of 2017.
You should also be aware of the pros and cons of cloud computing before you make a move. Apart from that, you should be very clear of the business needs of your organization before you choose a service model or a deployment model.