Tuesday, August 5, 2008

Cloud computing

Cloud computing means Internet ('Cloud') based development and use of computer technology ('Computing'). It is a style of computing where IT-related capabilities are provided “as a service, allowing users to access technology-enabled services without knowledge of, expertise with, or control over the technology infrastructure that supports them. It is a general concept that incorporates software as a service, Web 2.0 and other recent, well-known technology trends, where the common theme is reliance on the Internet for satisfying the computing needs of the users.

Cloud computing is often confused with grid computing (a form of distributed computing whereby a "super and virtual computer" is composed of a cluster of networked, loosely-coupled computers, acting in concert to perform very large tasks), utility computing (the packaging of computing resources, such as computation and storage, as a metered service similar to a traditional public utility such as electricity) and autonomic computing (computer systems capable of self-management). Indeed many cloud computing deployments are today powered by grids, have autonomic characteristics and are billed like utilities, but cloud computing is rather a natural next step from the grid-utility model. Some successful cloud architectures have little or no centralised infrastructure or billing systems whatsoever including Peer to peer networks like BitTorrent and Skype and Volunteer computing like SETI.

The majority of cloud computing infrastructure currently consists of reliable services delivered through next-generation data centers that are built on compute and storage virtualization technologies. The services are accessible anywhere in the world, with The Cloud appearing as a single point of access for all the computing needs of consumers. Commercial offerings need to meet the quality of service requirements of customers and typically offer service level agreements. Open standards and open source software are also critical to the growth of cloud computing.

As customers generally do not own the infrastructure, they are mearly accessing or renting, they can forego capital expenditure and consume resources as a service, paying instead for what they use. Many cloud computing offerings have adopted the utility computing model which is analogous to how traditional utilities like electricity are consumed, while others are billed on a subscription basis. By sharing "perishable and intangible" computing power between multiple tenants, utilization rates can be improved (as servers are not left idle) which can reduce costs significantly while increasing the speed of application development. A side effect of this approach is that "computer capacity rises dramatically" as customers do not have to engineer for peak loads. Adoption has been enabled by "increased high-speed bandwidth" which makes it possible to receive the same response times from centralized infrastructure at other sites.

The cloud computing "revolution" is being driven by companies like Google, Red Hat, Salesforce and Yahoo! as well as traditional vendors including Hewlett Packard, IBM and Microsoft and adopted by individuals through large enterprises including General Electric, L'Oréal and Valeo.


Key characteristics

  • Capital expenditure minimized and thus low barrier to entry as infrastructure is owned by the provider and does not need to be purchased for one-time or infrequent intensive computing tasks. Services are typically being available to or specifically targeting retail consumers and small businesses.
  • Multitenancy enabling sharing of resources (and costs) among a large pool of users, allowing for:
    • Centralization of infrastructure in areas with lower costs (eg real estate, electricity)
    • Peak-load capacity increases (users need not engineer for highest possible load levels)
    • Utilization and efficiency improvements
  • Scalability which meets changing user demands quickly. Massive scalability and large user bases are common but not an absolute requirement.
  • Security which typically improves due to centralization of data, increased security-focused resources, etc. but which raises concerns about loss of control over certain sensitive data
  • Performance is monitored and consistent but can be affected by insufficient bandwidth or high network load.
  • Device and location independence which enables users to access systems regardless of location or what device they are using (eg PC, mobile).

Components

Application

Cloud applications leverage The Cloud in software architecture, often eliminating the need to install and run the application on the customer's own computer, thus alleviating the burden of software maintenance, ongoing operation, and support. For example:

Hardware

Cloud hardware is computer hardware which relies on The Cloud for application delivery, or which is specifically designed for delivery of cloud services, and which is in either case essentially useless without it. For example:

Infrastructure

Cloud infrastructure (eg Infrastructure as a service) is the delivery of computer infrastructure (typically a platform virtualization environment) as a service. For example:

Platform

Cloud platforms (eg Platform as a service) (the delivery of a computing platform and/or solution stack as a service) facilitate deployment of applications without the cost and complexity of buying and managing the underlying hardware and software layers. For example:

Services

Cloud services (eg Web Services) are "software system[s] designed to support interoperable machine-to-machine interaction over a network" which may be accessed by other cloud computing components, software (eg Software plus services) or end users directly. For example:

Storage

Cloud storage is the delivery of data storage as a service (including database-like services), often billed on a utility computing basis (eg per gigabyte per month). For example:

Standards

Cloud standards are a number of existing (typically lightweight) open standards that have facilitated the growth of cloud computing, including:

Systems

Cloud systems are involved in the delivery of cloud computing (eg hardware, software). For example:





AddThis Feed Button

No comments: