Thursday, September 23, 2010

Cloud Computing – Related Technology


Technologies Related to Cloud Computing

Cloud computing typically has characteristics of all these technologies:
  1. Grid computing
  2. Virtualization
  3. Utility Computing
  4. Autonomic Computing

Grid Computing

Grid Computing involves a network of computers that are utilized together to gain large supercomputing type computing resources. Using this network of computers large and complex computing operations can be performed. In grid computing these networks of computers may be present in different locations.
A famous Grid Computing project is http://folding.stanford.edu/. The project involves utilizing unused computing powers of thousands of computers to perform a complex scientific problem. The goal of the project is "to understand protein folding, misfolding, and related diseases".

Virtualization

Virtualization introduces a layer between Hardware and operating system. During the sixties mainframe started supporting many users using virtual machines. These virtual machines simulated behaviour of an operating system for each user. VMWare launched a product called VMware Workstation in 1999 that allows multiple operating systems to run on personal computers.
The virtualization forms the foundation of cloud technology. Using virtualization, users can access servers or storage without knowing specific server or storage details. The virtualization layer will execute user request for computing resources by accessing appropriate resources.
Typically server utilization in data centres can be as low as 10%. Virtualization can help in significantly improving server utilization.

Utility Computing

Utility Computing defines a "pay-per-use" model for using computing services. In utility computing, billing model of computing resources is similar to how utilities like electricity are traditionally billed. When we procure electricity from a vendor, the initial cost required is minimal. Based upon the usage of electricity, electricity companies bills the customer (typically monthly). In utility computing billing is done using a similar protocol.
Various billing models are being explored. A few common ones are:
  1. Billing per user count. As an example if an organization of 100 people uses Google's gmail or Microsoft Live as their internal email system with email residing on servers in the cloud, Google/Microsoft may bill the organization on per user basis.
  2. Billing per Gigabyte. If an organization is using Amazon to host their data on the cloud, Amazon may bill the organization on the disk space usage.
  3. Billing per hour/day. As an example a user may pay for usage of virtual servers by time utilized in hours.
In reality pricing on cloud computing can be very complex. Utility computing helps in reducing initial investment. As the computing requirements for an individual or an organization changes, the billing changes accordingly, without incurring any additional cost. If the usage has reduced, then billing will also reduce accordingly.

Autonomic Computing

Autonomic computing is an initiative started by IBM in 2001. Autonomic means "self-managing" computers. In Autonomic computing, computers can automatically correct themselves without human intervention. As an example consider is a network of computers running a set of programs. When there is a hardware failure on one of the computers on the network, the programs running on that computer are "transferred" to other computers in the network. This is an example of "self-correction" or autonomic computing. The analogy typically used is that of human biological systems. Our biological systems take action in self-correcting mode without our explicit knowledge. In the same way the goal of autonomic computing is for computing infrastructure to self-correct itself in unforeseen situations.

No comments:

Post a Comment

Note: Only a member of this blog may post a comment.