Saturday, July 24, 2010

Understanding Cloud Services – IaaS, PaaS & SaaS

Cloud-computing platforms can be differentiated by the kind of services they offer. Cloud computing is broken down into three segments, “Infrastructure “, Platform” and “Software”.
Infrastructure-as-a-Service (IaaS)
Infrastructure as a Service (IaaS) is delivery of the computing infrastructure as a fully outsourced service. Some of the companies that provide infrastructure services are Google, IBM, Amazon Web Services (AWS) etc. Managed hosting and development environments are the services included in IaaS. The user can buy the infrastructure according to the requirements at any particular point of time instead of buying the infrastructure that might not be used for months. IaaS operates on a “Pay as you go” model ensuring that the users pay for only what they are using. Virtualization enables IaaS providers to offer almost unlimited instances of servers to customers and make cost-effective use of the hosting hardware. IaaS users enjoy access to enterprise grade IT Infrastructure and resources that might be very costly if purchased completely. Thus dynamic scaling, usage based pricing, reduced costs and access to superior IT resources are some of the benefits of IaaS. IaaS is also sometimes referred to as Hardware as a Service (HaaS). An Infrastructure as a Service offering also provides maximum flexibility because just about anything that can be virtualized can be run on these platforms. This is perhaps the biggest benefit of an IaaS environment. For a startup or small business, one of the most difficult things to do is keep capital expenditures under control. By moving your infrastructure to the cloud, you have the ability to scale as if you owned your own hardware and data center.
Platform-as-a-Service (Paas)
Providers such as Windows Azure and Google App Engine (GAE) provide a platform that users write to. In this case, the term platform refers to something that abstracts away the lower levels of the stack. This application runs in a specialized environment. PaaS offers a development platform for developers. The end users write their own code and the PaaS provider uploads that code and presents it on the web. SalesForce.com’s Force.com is an example of PaaS. PaaS provides services to develop, test, deploy, host and maintain applications in the same integrated development environment. It also provides some level of support for the creation of applications. Thus PaaS offers a faster more cost effective model for application development and delivery. The PaaS provider manages upgrades, patches and other routine system maintenance. PaaS is based on a metering or subscription model so users only pay for what they use. Users take what they need without worrying about the complexity behind the scenes.
Software-as-a-Service (SaaS)
Software as a Service (SaaS) is the service based on the concept of renting software from a service provider rather than buying it yourself. The software is hosted on centralized network servers to make functionality available over the web or intranet. Also known as “software on demand” it is currently the most popular type of cloud computing because of its high flexibility, great services, enhanced scalability and less maintenance. Yahoo mail, Google docs, CRM applications are all instances of SaaS. With a web-based CRM all that employees need to do is register and login to the central system and import any existing customer data. The service provider hosts both the application and the data so the end user is free to use the service from anywhere. SaaS is very effective in lowering the costs of business as it provides the business an access to applications at a cost normally far cheaper than a licensed application fee which is possible due to its monthly fees based revenue model. With SaaS user need not worry about installation or upgrades.

No comments: