Tuesday, August 14, 2012

Cloud Computing - Concepts and Perspectives


CLOUD COMPUTING CORE CONCEPTS
In the cloud computing model, computing power, software, storage services, and platforms are delivered on demand to external customers over the internet.  The access that this technology provides to resources and services can be scaled up or down to meet demand. Cloud computing providers typically charge customers on a pay-per-use model.

PERSPECTIVES ON CLOUD COMPUTING
The types of cloud computing technology can be viewed from two perspectives: capability and access. In this section, we look at three types based on capabilities provided and two based on who can access resources (figure 1).

Figure 1: Cloud Computing Types Based on Capability and Access



Examples on types of Cloud Computing
One type of cloud computing capability is called Software-as-a-Service (SaaS). SaaS focuses on providing users with business-specific capabilities, such as e-mail or customer management. In SaaS, organizations and developers can use the business-specific capabilities developed by third parties in the “cloud.” Some examples of SaaS providers are:
Google Apps: provides web-based office tools such as e-mail, calendar, and document management
salesforce.com: provides a full customer relationship management (CRM)6 application
zoho.com: provides a large suite of web-based applications, mostly for enterprise use

A second type of cloud computing capability is known as Infrastructure-as-a-Service (IaaS). This capability type provides mainly computational infrastructure available over the internet (e.g., compute cycles or storage). IaaS allows organi-zations and developers to extend their IT infrastructure on an on-demand basis. Some examples of IaaS providers are:
Amazon Elastic Compute Cloud (EC2): provides users with a special virtual machine (AMI) that can be deployed and run on the EC2 infra-structure
Amazon Simple Storage Solution (S3): provides users with access to dynamically scalable storage resources
GoGrid: provides users with access to dynamically scalable computing and storage resources, as well as dedicated servers
IBM Computing on Demand (CoD): provides users with access to high-ly configurable servers plus value-added services such as data storage
Microsoft Live Mesh: provides users with access to a distributed file system; targeted at individual use
Rackspace Cloud: provides users with access to dynamically scalable computing and storage resources, as well as third-party cloud applications and tools

The third and final type of cloud computing capability is Platform-as-a-Service (PaaS). In this type, application development platforms allow users to leverage the resources of established organizations to create and host applications of a larger scale than an individual or small business would be able to handle.  Some PaaS examples include:
Akamai EdgePlatform: provides a large distributed computing platform on which organizations can deploy their web applications; has a large focus on analysis and monitoring
Force.com: from salesforce.com (an SaaS provider), provides users with a platform to build and run applications and components bought from AppExchange or custom applications
Google App Engine: provides users with a complete development stack and allows them to run their applications on Google’s infrastructure
Microsoft Azure Services Platform: provides users with on-demand compute and storage services as well as a development platform based on Windows Azure
Yahoo! Open Strategy (Y!OS): provides users with a means of develop-ing web applications on top of the existing Yahoo! platform and in doing so leveraging a significant portion of the Yahoo! Resources

Source: Lewis, Grace (2010) "Basics of Cloud Computing", Software Engineering Institute, Carnegie Mellon University, Available at: http://www.sei.cmu.edu/library/assets/whitepapers/Cloudcomputingbasics.pdf, Accessed: August 14, 2012




No comments: