24-02-2009, 02:00 AM
Cloud computing gained prominence in 2007 as a term used to describe massively scaleable computing that is made available to end users over Internet Protocol or other access method (i.e. "as a Service"). The term derives from the fact that most technology architecture diagrams depict the Internet or IP availability by using a drawing of a cloud. The compute resources being accessed are typically owned and operated by a third-party on a consolidated basis in [Data Center] locations. Consumers of the "cloud" are concerned with services it can perform rather than the underlying technologies used to achieve the requested function. In general, the label suggests that function comes from "the cloud" -- often understood to mean a public network, usually assumed to be the Internet -- rather than from a specific identifiable device. The label of "cloud computing" is not, however, identical with the business model of software as a service or the usage model of utility computing. Within the general label, though, it is an easy error to assume that all clouds are created equal. This can lead to confusion and disappointment. For example, virtualization of servers on a shared super-server can speed the deployment of new capability, since no new hardware needs to be installed, but the software stack that runs on the virtual server must still be configured and updated -- unlike the case with a multi-tenant software-as-a-service capability. A computer cluster can offer cost-effective service in specific applications, but may be limited to a single type of computing node that allows all nodes to run a common operating system. Alternatively, the canonical definition of grid is one that allows any type of processing engine to enter or leave the system, dynamically, by analogy to an electrical power grid on which any given generating plant might be active or inactive at any given time.[1] However, an electrical generator only needs to produce volts and amperes in synchrony with other units on the grid, while computing cycles are not nearly such an undifferentiated commodity. For example, a computing grid could include both general-purpose processors and specialized units such as a vector processor facility. Also important to the notion of cloud computing is the automation of many management tasks. If the system requires human management to allocate processes to resources, it's not a cloud: it's just a data center. The applications of cloud/utility computing models are expanding rapidly as connectivity costs fall, and as evolution of processor architectures favors the development of multi-core systems with intrinsically parallel computing hardware that greatly exceeds the parallelization potential of most applications. The economic incentives to share hardware among multiple users are increasing; the drawbacks in performance and interactive response that used to discourage remote and distributed computing solutions are being greatly reduced. As a result, the services that can be delivered from the cloud are not limited to web applications, but may also include storage, raw computing, or access to any number of specialized services. Common visualizations of a cloud computing approach include, but should not be considered to be limited by, the following: