Utility computing
Encyclopedia
Utility computing is the packaging of computing resources
, such as computation, storage and services, as a metered service similar to a traditional public utility
(such as electricity
, water
, natural gas
, or telephone network
). This model has the advantage of a low or no initial cost to acquire computer resources; instead, computational resource
s are essentially rented - turning what was previously a need to purchase products (hardware, software and network bandwidth) into a service.
This repackaging of computing services became the foundation of the shift to "On Demand" computing, Software as a Service
and Cloud Computing
models that further propagated the idea of computing, application and network as a service.
There was some initial skepticism about such a significant shift. However, the new model of computing caught and eventually became mainstream.
IBM, HP and Microsoft were early leaders in the new field of Utility Computing with their business units and researchers working on the architecture, payment and development challenges of the new computing model. Google, Amazon and others started to take the lead in 2008, as they established their own utility services for computing, storage and applications.
Utility Computing can support grid computing which has the characteristic of very large computations or a sudden peaks in demand which are supported via a large number of computers.
"Utility computing" has usually envisioned some form of virtualization so that the amount of storage or computing power available is considerably larger than that of a single time-sharing
computer. Multiple servers are used on the "back end" to make this possible. These might be a dedicated computer cluster specifically built for the purpose of being rented out, or even an under-utilized supercomputer
. The technique of running a single calculation on multiple computers is known as distributed computing
.
The term "grid computing
" is often used to describe a particular form of distributed computing, where the supporting nodes are geographically distributed or cross administrative domain
s. To provide utility computing services, a company can "bundle" the resources of members of the public for sale, who might be paid with a portion of the revenue from clients.
One model, common among volunteer computing
applications, is for a central server to dispense tasks to participating nodes, on the behest of approved end-users (in the commercial case, the paying customers). Another model, sometimes called the Virtual Organization
(VO), is more decentralized, with organizations buying and selling computing resources
as needed or as they go idle.
The definition of "utility computing" is sometimes extended to specialized tasks, such as web service
s.
IBM and other mainframe providers conducted this kind of business in the following two decades, often referred to as time-sharing, offering computing power and database storage to banks and other large organizations from their world wide data centers. To facilitate this business model, mainframe operating systems evolved to include process control facilities, security, and user metering. The advent of mini computers changed this business model, by making computers affordable to almost all companies. As Intel and AMD increased the power of PC architecture servers with each new generation of processor, data centers became filled with thousands of servers.
In the late 90's utility computing re-surfaced. InsynQ (http://www.insynq.com), Inc. launched [on-demand] applications and desktop hosting services in 1997 using HP equipment. In 1998, HP set up the Utility Computing Division in Mountain View, CA, assigning former Bell Labs computer scientists to begin work on a computing power plant, incorporating multiple utilities to form a software stack. Services such as "IP billing-on-tap" were marketed. HP introduced the Utility Data Center in 2001. Sun announced the Sun Cloud service to consumers in 2000. In December 2005, Alexa
launched Alexa Web Search Platform, a Web search building tool for which the underlying power is utility computing. Alexa charges users for storage, utilization, etc. There is space in the market for specific industries and applications as well as other niche applications powered by utility computing. For example, PolyServe Inc. offers a clustered file system
based on commodity server and storage hardware that creates highly available utility computing environments for mission-critical applications including Oracle and Microsoft SQL Server databases, as well as workload optimized solutions specifically tuned for bulk storage, high-performance computing, vertical industries such as financial services, seismic processing, and content serving. The Database Utility and File Serving Utility enable IT organizations to independently add servers or storage as needed, retask workloads to different hardware, and maintain the environment without disruption.
In spring 2006 3tera
announced its AppLogic service and later that summer Amazon launched Amazon EC2 (Elastic Compute Cloud). These services allow the operation of general purpose computing applications. Both are based on Xen
virtualization software and the most commonly used operating system on the virtual computers is Linux, though Windows and Solaris are supported. Common uses include web application, SaaS, image rendering and processing but also general-purpose business applications.
Utility computing merely means "Pay and Use", with regards to computing power.
Computational resource
In computational complexity theory, a computational resource is a resource used by some computational models in the solution of computational problems....
, such as computation, storage and services, as a metered service similar to a traditional public utility
Public utility
A public utility is an organization that maintains the infrastructure for a public service . Public utilities are subject to forms of public control and regulation ranging from local community-based groups to state-wide government monopolies...
(such as electricity
Electricity
Electricity is a general term encompassing a variety of phenomena resulting from the presence and flow of electric charge. These include many easily recognizable phenomena, such as lightning, static electricity, and the flow of electrical current in an electrical wire...
, water
Water
Water is a chemical substance with the chemical formula H2O. A water molecule contains one oxygen and two hydrogen atoms connected by covalent bonds. Water is a liquid at ambient conditions, but it often co-exists on Earth with its solid state, ice, and gaseous state . Water also exists in a...
, natural gas
Natural gas
Natural gas is a naturally occurring gas mixture consisting primarily of methane, typically with 0–20% higher hydrocarbons . It is found associated with other hydrocarbon fuel, in coal beds, as methane clathrates, and is an important fuel source and a major feedstock for fertilizers.Most natural...
, or telephone network
Telephone network
A telephone network is a telecommunications network used for telephone calls between two or more parties.There are a number of different types of telephone network:...
). This model has the advantage of a low or no initial cost to acquire computer resources; instead, computational resource
Computational resource
In computational complexity theory, a computational resource is a resource used by some computational models in the solution of computational problems....
s are essentially rented - turning what was previously a need to purchase products (hardware, software and network bandwidth) into a service.
This repackaging of computing services became the foundation of the shift to "On Demand" computing, Software as a Service
Software as a Service
Software as a service , sometimes referred to as "on-demand software," is a software delivery model in which software and its associated data are hosted centrally and are typically accessed by users using a thin client, normally using a web browser over the Internet.SaaS has become a common...
and Cloud Computing
Cloud computing
Cloud computing is the delivery of computing as a service rather than a product, whereby shared resources, software, and information are provided to computers and other devices as a utility over a network ....
models that further propagated the idea of computing, application and network as a service.
There was some initial skepticism about such a significant shift. However, the new model of computing caught and eventually became mainstream.
IBM, HP and Microsoft were early leaders in the new field of Utility Computing with their business units and researchers working on the architecture, payment and development challenges of the new computing model. Google, Amazon and others started to take the lead in 2008, as they established their own utility services for computing, storage and applications.
Utility Computing can support grid computing which has the characteristic of very large computations or a sudden peaks in demand which are supported via a large number of computers.
"Utility computing" has usually envisioned some form of virtualization so that the amount of storage or computing power available is considerably larger than that of a single time-sharing
Time-sharing
Time-sharing is the sharing of a computing resource among many users by means of multiprogramming and multi-tasking. Its introduction in the 1960s, and emergence as the prominent model of computing in the 1970s, represents a major technological shift in the history of computing.By allowing a large...
computer. Multiple servers are used on the "back end" to make this possible. These might be a dedicated computer cluster specifically built for the purpose of being rented out, or even an under-utilized supercomputer
Supercomputer
A supercomputer is a computer at the frontline of current processing capacity, particularly speed of calculation.Supercomputers are used for highly calculation-intensive tasks such as problems including quantum physics, weather forecasting, climate research, molecular modeling A supercomputer is a...
. The technique of running a single calculation on multiple computers is known as distributed computing
Distributed computing
Distributed computing is a field of computer science that studies distributed systems. A distributed system consists of multiple autonomous computers that communicate through a computer network. The computers interact with each other in order to achieve a common goal...
.
The term "grid computing
Grid computing
Grid computing is a term referring to the combination of computer resources from multiple administrative domains to reach a common goal. The grid can be thought of as a distributed system with non-interactive workloads that involve a large number of files...
" is often used to describe a particular form of distributed computing, where the supporting nodes are geographically distributed or cross administrative domain
Administrative domain
-Definition:An administrative domain is a service provider holding a security repository permitting to easily authenticate and authorize clients with credentials.This particularly applies to computer network security....
s. To provide utility computing services, a company can "bundle" the resources of members of the public for sale, who might be paid with a portion of the revenue from clients.
One model, common among volunteer computing
Volunteer computing
Volunteer computing is a type of distributed computing in which computer owners donate their computing resources to one or more "projects".-History:...
applications, is for a central server to dispense tasks to participating nodes, on the behest of approved end-users (in the commercial case, the paying customers). Another model, sometimes called the Virtual Organization
Virtual Organization (Grid computing)
In grid computing, a Virtual Organization refers to a dynamic set of individuals or institutions defined around a set of resource-sharing rules and conditions...
(VO), is more decentralized, with organizations buying and selling computing resources
Computational resource
In computational complexity theory, a computational resource is a resource used by some computational models in the solution of computational problems....
as needed or as they go idle.
The definition of "utility computing" is sometimes extended to specialized tasks, such as web service
Web service
A Web service is a method of communication between two electronic devices over the web.The W3C defines a "Web service" as "a software system designed to support interoperable machine-to-machine interaction over a network". It has an interface described in a machine-processable format...
s.
History
Utility computing is not a new concept, but rather has quite a long history. Among the earliest references is:IBM and other mainframe providers conducted this kind of business in the following two decades, often referred to as time-sharing, offering computing power and database storage to banks and other large organizations from their world wide data centers. To facilitate this business model, mainframe operating systems evolved to include process control facilities, security, and user metering. The advent of mini computers changed this business model, by making computers affordable to almost all companies. As Intel and AMD increased the power of PC architecture servers with each new generation of processor, data centers became filled with thousands of servers.
In the late 90's utility computing re-surfaced. InsynQ (http://www.insynq.com), Inc. launched [on-demand] applications and desktop hosting services in 1997 using HP equipment. In 1998, HP set up the Utility Computing Division in Mountain View, CA, assigning former Bell Labs computer scientists to begin work on a computing power plant, incorporating multiple utilities to form a software stack. Services such as "IP billing-on-tap" were marketed. HP introduced the Utility Data Center in 2001. Sun announced the Sun Cloud service to consumers in 2000. In December 2005, Alexa
Alexa Internet
Alexa Internet, Inc. is a California-based subsidiary company of Amazon.com that is known for its toolbar and Web site. Once installed, the toolbar collects data on browsing behavior which is transmitted to the Web site where it is stored and analyzed and is the basis for the company's Web traffic...
launched Alexa Web Search Platform, a Web search building tool for which the underlying power is utility computing. Alexa charges users for storage, utilization, etc. There is space in the market for specific industries and applications as well as other niche applications powered by utility computing. For example, PolyServe Inc. offers a clustered file system
Clustered file system
A clustered file system is a file system which is shared by being simultaneously mounted on multiple servers. There are several approaches to clustering, most of which do not employ a clustered file system...
based on commodity server and storage hardware that creates highly available utility computing environments for mission-critical applications including Oracle and Microsoft SQL Server databases, as well as workload optimized solutions specifically tuned for bulk storage, high-performance computing, vertical industries such as financial services, seismic processing, and content serving. The Database Utility and File Serving Utility enable IT organizations to independently add servers or storage as needed, retask workloads to different hardware, and maintain the environment without disruption.
In spring 2006 3tera
3tera
3tera, Inc., is a developer of system software for utility computing and cloud computing. It is headquartered in Aliso Viejo, California. It was acquired by CA Technologies in 2010....
announced its AppLogic service and later that summer Amazon launched Amazon EC2 (Elastic Compute Cloud). These services allow the operation of general purpose computing applications. Both are based on Xen
Xen
Xen is a virtual-machine monitor providing services that allow multiple computer operating systems to execute on the same computer hardware concurrently....
virtualization software and the most commonly used operating system on the virtual computers is Linux, though Windows and Solaris are supported. Common uses include web application, SaaS, image rendering and processing but also general-purpose business applications.
Utility computing merely means "Pay and Use", with regards to computing power.