You are on page 1of 18

GRID COMPUTING

CLOUD COMPUTING

Introduction:

Cloud computing is Internet-based computing, whereby shared resources, software and


information are provided to computers and other devices on-demand, like electricity. It is a
paradigm shift following the mainframe and client-server shifts that preceded it. Details are
abstracted from the users who no longer have need of, expertise in, or control over the technology
infrastructure "in the cloud" that supports them. Cloud computing describes a new supplement,
consumption and delivery model for IT services based on the Internet, and it typically involves
the provision of dynamically scalable and often virtualized resources as a service over the
Internet. It is a byproduct and consequence of the ease-of-access to remote computing sites
provided by the Internet.
The term cloud is used as a metaphor for the Internet, based on the cloud drawing used in the past
to represent the telephone network, and later to depict the Internet in computer network diagrams
as an abstraction of the underlying infrastructure it represents. Typical cloud computing providers
deliver common business applications online which are accessed from a web browser, while the
software and data are stored on servers.
A technical definition is "a computing capability that provides an abstraction between the
computing resource and its underlying technical architecture (e.g., servers, storage, networks),
enabling convenient, on-demand network access to a shared pool of configurable computing
resources that can be rapidly provisioned and released with minimal management effort or service
provider interaction."This definition states that clouds have five essential characteristics: on-
demand self-service, broad network access, resource pooling, rapid elasticity, and measured
service.
The majority of cloud computing infrastructure, as of 2009, consists of reliable services delivered
through data centers and built on servers. Clouds often appear as single points of access for all
consumers' computing needs. Commercial offerings are generally expected to meet quality of
service (QoS) requirements of customers and typically offer SLAs.

1
GRID COMPUTING
Consider an example:

Let's say you're an executive at a large corporation. Your particular responsibilities include
making sure that all of your employees have the right hardware and software they need to do their
jobs. Buying computers for everyone isn't enough -- you also have to purchase software or
software licenses to give employees the tools they require. Whenever you have a new hire, you
have to buy more software or make sure your current software license allows another user. It's so
stressful that you find it difficult to go to sleep on your huge pile of money every night.
Soon, there may be an alternative for executives like you. Instead of installing a suite of software
for each computer, you'd only have to load one application. That application would allow workers
to log into a Web-based service which hosts all the programs the user would need for his or her
job. Remote machines owned by another company would run everything from e-mail to word
processing to complex data analysis programs. It's called cloud computing, and it could change
the entire computer industry.
In a cloud computing system, there's a significant workload shift. Local computers no longer have
to do all the heavy lifting when it comes to running applications. The network of computers that
make up the cloud handles them instead. Hardware and software demands on the user's side
decrease. The only thing the user's computer needs to be able to run is the cloud computing
systems interface software, which can be as simple as a Web browser, and the cloud's network
takes care of the rest.
There's a good chance you've already used some form of cloud computing. If you have an e-mail
account with a Web-based e-mail service like Hotmail, Yahoo! Mail or Gmail, then you've had
some experience with cloud computing. Instead of running an e-mail program on your computer,
you log in to a Web e-mail account remotely. The software and storage for your account doesn't
exist on your computer -- it's on the service's computer cloud.

2
GRID COMPUTING

A typical cloud computing system

Cloud computing is a general term for anything that involves delivering hosted services over the
Internet. These services are broadly divided into three categories: Infrastructure-as-a-Service
(IaaS), Platform-as-a-Service (PaaS) and Software-as-a-Service (SaaS).

Cloud computing evolves from grid computing and provides on-demand resource provisioning.
Grid computing may or may not be in the cloud depending on what type of users are using it. If

3
GRID COMPUTING
the users are systems administrators and integrators, they care how things are maintained in the
cloud. They upgrade, install, and virtualized servers and applications. If the users are consumers,
they do not care how things are run in the system.
Grid computing requires the use of software that can divide and farm out pieces of a program as
one large system image to several thousand computers. One concern about grid is that if one piece
of the software on a node fails, other pieces of the software on other nodes may fail. This is
alleviated if that component has a failover component on another node, but problems can still
arise if components rely on other pieces of software to accomplish one or more grid computing
tasks. Large system images and associated hardware to operate and maintain them can contribute
to large capital and operating expenses.

What is Cloud Computing?

With cloud computing, companies can scale up to massive capacities in an instant without having
to invest in new infrastructure, train new personnel, or license new software. Cloud computing is
of particular benefit to small and medium-sized businesses who wish to completely outsource
their data-center infrastructure, or large companies who wish to get peak load capacity without
incurring the higher cost of building larger data centers internally. In both instances, service
consumers use what they need on the Internet and pay only for what they use.
The service consumer no longer has to be at a PC, use an application from the PC, or purchase a
specific version that's configured for Smartphone’s, PDAs, and other devices. The consumer does
not own the infrastructure, software, or platform in the cloud. He has lower upfront costs, capital
expenses, and operating expenses. He does not care about how servers and networks are
maintained in the cloud. The consumer can access multiple servers anywhere on the globe without
knowing which ones and where they are located.

4
GRID COMPUTING

Cloud computing logical diagram

In general, cloud computing customers do not own the physical infrastructure, instead avoiding
capital expenditure by renting usage from a third-party provider. They consume resources as a
service and pay only for resources that they use. Many cloud-computing offerings employ the
utility computing model, which are analogous to how traditional utility services (such as

Electricity) are consumed, whereas others bill on a subscription basis. Sharing "perishable and
intangible" computing power among multiple tenants can improve utilization rates, as servers are
not unnecessarily left idle (which can reduce costs significantly while increasing the speed of
application development). A side-effect of this approach is that overall computer usage rises
dramatically, as customers do not have to engineer for peak load limits. In addition, "increased
high-speed bandwidth" makes it possible to receive the same response times from centralized
infrastructure at other sites.
When talking about a cloud computing system, it's helpful to divide it into two sections: the front
end and the back end. They connect to each other through a network, usually the Internet. The
front end is the side the computer user, or client, sees. The back end is the "cloud" section of the
system.
The front end includes the client's computer (or computer network) and the application required to
access the cloud computing system. Not all cloud computing systems have the same user
interface. Services like Web-based e-mail programs leverage existing Web browsers like Internet
Explorer or Firefox. Other systems have unique applications that provide network access to
clients.

5
GRID COMPUTING
On the back end of the system are the various computers, servers and data storage systems that
create the "cloud" of computing services. In theory, a cloud computing system could include
practically any computer program you can imagine, from data processing to video games.
Usually, each application will have its own dedicated server.
A central server administers the system, monitoring traffic and client demands to ensure
everything runs smoothly. It follows a set of rules called protocols and uses a special kind of
software called middleware. Middleware allows networked computers to communicate with each
other.
If a cloud computing company has a lot of clients, there's likely to be a high demand for a lot of
storage space. Some companies require hundreds of digital storage devices. Cloud computing
systems need at least twice the number of storage devices it requires to keep all its clients'
information stored. That's because these devices, like all computers, occasionally break down. A
cloud computing system must make a copy of all its clients' information and store it on other
devices. The copies enable the central server to access backup machines to retrieve data that
otherwise would be unreachable. Making copies of data as a backup is called redundancy.

Grids, Clouds and Utilities:


Cloud computing is closely related to grid computing and utility computing. In a grid computing
system, networked computers are able to access and use the resources of every other computer on
the network. In cloud computing systems, that usually only applies to the back end. Utility
computing is a business model where one company pays another company for access to computer
applications or data storage.

You've Been Virtually Served


Most of the time, servers don't run at full capacity. That means there's unused processing power
going to waste. It's possible to fool a physical server into thinking it's actually multiple servers,
each running with its own independent operating system. The technique is called server
virtualization. By maximizing the output of individual servers, server virtualization reduces the
need for more physical machines.

Key features
• Agility improves with users' ability to rapidly and inexpensively re-provision
technological infrastructure resources.

6
GRID COMPUTING
• Cost is claimed to be greatly reduced and capital expenditure is converted to expenditure.
This ostensibly lowers barriers to entry, as infrastructure is typically provided by a third-
party and does not need to be purchased for one-time or infrequent intensive computing
tasks. Pricing on a utility computing basis is fine-grained with usage-based options and
fewer IT skills are required for implementation (in-house).
• Device and location independence enable users to access systems using a web browser
regardless of their location or what device they are using (e.g., PC, mobile). As
infrastructure is off-site (typically provided by a third-party) and accessed via the Internet,
users can connect from anywhere.
• Multi-tenancy enables sharing of resources and costs across a large pool of users thus
allowing for:
o Centralization of infrastructure in locations with lower costs (such as real estate,
electricity, etc.)
o Peak-load capacity increases (users need not engineer for highest possible load-
levels)
o Utilization and efficiency improvements for systems that are often only 10–20%
utilized.
• Reliability improves through the use of multiple redundant sites, which makes cloud
computing suitable for business continuity and disaster recovery. Nonetheless, many
major cloud computing services have suffered outages, and IT and business managers can
at times do little when they are affected.
• Scalability via dynamic ("on-demand") provisioning of resources on a fine-grained, self-
service basis near real-time, without users having to engineer for peak loads. Performance
is monitored and consistent and loosely-coupled architectures are constructed using web
services as the system interface. One of the most important new methods for overcoming
performance bottlenecks for a large class of applications is data parallel programming on a
distributed data grid.
• Security could improve due to centralization of data, increased security-focused
resources, etc., but concerns can persist about loss of control over certain sensitive data,
and the lack of security for stored kernels. Security is often as good as or better than under
traditional systems, in part because providers are able to devote resources to solving
security issues that many customers cannot afford. Providers typically log accesses, but
accessing the audit logs themselves can be difficult or impossible. Furthermore, the

7
GRID COMPUTING
complexity of security is greatly increased when data is distributed over a wider area and /
or number of devices.
• Maintenance cloud computing applications are easier to maintain, since they don't have to
be installed on each user's computer. They are easier to support and to improve since the
changes reach the clients instantly.
• Metering cloud computing resources usage should be measurable and should be metered
per client and application on daily, weekly, monthly, and annual basis. This will enable
clients on choosing the vendor cloud on cost and reliability (QoS).

Public, private, and hybrid clouds


IT organizations can choose to deploy applications on public, private, or hybrid clouds, each of
which has its trade-offs. The terms public, private, and hybrid do not dictate location. While
public clouds are typically “out there” on the Internet and private clouds are typically located on
premises, a private cloud might be hosted at a collocation facility as well. Companies may make a
number of considerations with regard to which cloud computing model they choose to employ,
and they might use more than one model to solve different problems. An application needed on a
temporary basis might be best suited for deployment in a public cloud because it helps to avoid
the need to purchase additional equipment to solve a temporary need. Likewise, a permanent
application, or one that has specific requirements on quality of service or location of data, might
best be deployed in a private or hybrid cloud.

Public clouds
Public clouds are run by third parties, and applications from different customers are likely to be
mixed together on the cloud’s servers, storage systems, and networks (Figure 3). Public clouds are
most often hosted away from customer premises, and they provide a way to reduce customer risk
and cost by providing a flexible, even temporary extension to enterprise infrastructure. If a public
cloud is implemented with performance, security, and data locality in mind, the existence of other
applications running in the cloud should be transparent to both cloud architects and end users.
Indeed, one of the benefits of public clouds is that they can be much larger than a company’s
private cloud might be, offering the ability to scale up and down on demand, and shifting
infrastructure risks from the enterprise to the cloud provider, if even just temporarily. Portions of
a public cloud can be carved out for the exclusive use of a single client, creating a virtual private

8
GRID COMPUTING
datacenter. Rather than being limited to deploying virtual machine images in a public cloud, a
virtual private datacenter gives customers greater visibility into its infrastructure. Now customers
can manipulate not just virtual machine images, but also servers, storage systems, network
devices, and network topology. Creating a virtual private datacenter with all components located
in the same facility helps to lessen the issue of data locality because bandwidth is Abundant and
typically free when connecting resources within the same facility.

Private clouds
Private clouds are built for the exclusive use of one client, providing the utmost control over data,
security, and quality of service The company owns the infrastructure and has control over how
applications are deployed on it. Private clouds may be deployed in an enterprise datacenter, and
they also may be deployed at a collocation facility. Private clouds can be built and managed by a
company’s own IT organization or by a cloud provider. In this “hosted private” model, a company
such as Sun can install, configure, and operate the infrastructure to support a private cloud within
a company’s enterprise datacenter. This model gives companies a high level of control over the
use of cloud resources while bringing in the expertise needed to establish and operate the
environment.

Hybrid clouds
Hybrid clouds combine both public and private cloud models. They can help to provide on-
demand, externally provisioned scale. The ability to augment a private cloud with the resources of
a public cloud can be used to maintain service levels in the face of rapid workload fluctuations.
This is most often seen with the use of storage clouds to support Web 2.0 applications. A hybrid
cloud also can be used to handle planned workload spikes. Sometimes called “surge computing,”
a public cloud can be used to perform periodic tasks that can be deployed easily on a public cloud.
Hybrid clouds introduce the complexity of determining how to distribute applications across both
a public and private cloud. Among the issues that need to be considered is the relationship
between data and processing resources. If the data is small, or the application is stateless, a hybrid
cloud can be much more successful than if large amounts of data must be transferred into a public
cloud for a small amount of processing.

9
GRID COMPUTING
Architecture:

Cloud architecture, the systems architecture of the software systems involved in the delivery of
cloud computing, typically involves multiple cloud components communicating with each other
over application programming interfaces, usually web services. This closely resembles the UNIX
philosophy of having multiple programs each doing one thing well and working together over
universal interfaces. Complexity is controlled and the resulting systems are more manageable than
their monolithic counterparts.

Cloud computing sample architecture


Layers:

Client

10
GRID COMPUTING
A cloud client consists of computer hardware and/or computer software that relies on cloud
computing for application delivery, or that is specifically designed for delivery of cloud services
and that, in either case, is essentially useless without it. Examples include some computers,
phones and other devices, operating systems and browsers.

Application

Cloud application services or "Software as a Service (SaaS)" deliver software as a service over
the Internet, eliminating the need to install and run the application on the customer's own
computers and simplifying maintenance and support. Key characteristics include:

• Network-based access to, and management of, commercially available (i.e., not custom)
software
• Activities that are managed from central locations rather than at each customer's site,
enabling customers to access applications remotely via the Web
• Application delivery that typically is closer to a one-to-many model (single instance,
multi-tenant architecture) than to a one-to-one model, including architecture, pricing,
partnering, and management characteristics
• Centralized feature updating, which obviates the need for downloadable patches and
upgrades.

Platform

Cloud platform services or "Platform as a Service (PaaS)" deliver a computing platform and/or
solution stack as a service, often consuming cloud infrastructure and sustaining cloud
applications. It facilitates deployment of applications without the cost and complexity of
buying and managing the underlying hardware and software layers.

Infrastructure

Cloud infrastructure services or "Infrastructure as a Service (IaaS)" delivers computer


infrastructure, typically a platform virtualization environment, as a service. Rather than
purchasing servers, software, data center space or network equipment, clients instead buy
those resources as a fully outsourced service. The service is typically billed on a utility

11
GRID COMPUTING
computing basis and amount of resources consumed (and therefore the cost) will typically
reflect the level of activity. It is an evolution of virtual private server offerings.

Server

The servers’ layer consists of computer hardware and/or computer software products that are
specifically designed for the delivery of cloud services, including multi-core processors, cloud-
specific operating systems and combined offerings.

Cloud service providers tend to offer services that can be grouped into three categories: software
as a service, platform as a service, and infrastructure as a service.

Software as a service (SaaS):


Software as a service features a complete application offered as a service on demand. A single
instance of the software runs on the cloud and services multiple end users or client organizations.
The most widely known example of SaaS is salesforce.com, though many other examples have
come to market, including the Google Apps offering of basic business services including email
and word processing. Although salesforce.com preceded the definition of cloud computing by a
few years, it now operates by leveraging its companion force.com, which can be defined as a
platform as a service.

Platform as a service (PaaS)

Platform as a service encapsulates a layer of software and provides it as a service that can be used
to build higher-level services. There are at least two perspectives on PaaS depending on the
perspective of the producer or consumer of the services:

• Someone producing PaaS might produce a platform by integrating an OS, middleware,


application software, and even a development environment that is then provided to a customer as
a service. For example, someone developing a PaaS offering might base it on a set of Sun™ xVM
hypervisor virtual machines that include a NetBeans™ integrated development environment, a
Sun GlassFish™ Web stack and support for additional programming languages such as Perl or
Ruby.

12
GRID COMPUTING
• Someone using PaaS would see an encapsulated service that is presented to them through an
API. The customer interacts with the platform through the API, and the platform does what is
necessary to manage and scale it to provide a given level of service. Virtual appliances can be
classified as instances of PaaS. A content switch appliance, for example, would have all of its
component software hidden from the customer, and only an API or GUI for configuring and
deploying the service provided to them.

PaaS offerings can provide for every phase of software development and testing, or they can be
specialized around a particular area such as content management. Commercial examples of PaaS
include the Google Apps Engine, which serves applications on Google’s infrastructure. PaaS
services such as these can provide a powerful basis on which to deploy applications, however they
may be constrained by the capabilities that the cloud provider chooses to deliver.

Infrastructure as a service (IaaS)


Infrastructure as a service delivers basic storage and compute capabilities as standardized services
over the network. Servers, storage systems, switches, routers, and other systems are pooled and
made available to handle workloads that range from application components to high-performance
computing applications. Commercial examples of IaaS include Joyent, whose main product is a
line of virtualized servers that provide a highly available on-demand infrastructure.

How It Works:

The basic cloud computing foundation is comprised of a data center (servers, network switches,
Internet connectivity, etc.), virtualization software (used to segment physical resources between
users), operating system (Windows, Linux, etc.) and applications (Apache, MySQL, etc.).
Together, these components "power the cloud" for millions of people using popular services such
as Google's Gmail.

Here's an illustration which pieces everything together:

13
GRID COMPUTING

It's On-Demand

The beauty of cloud computing -- from a business perspective -- is that it's mostly "pay-as-you-
go". Quite simply, you only pay for what you need without contractual requirements. Imagine
launching hundreds of servers "in the cloud" to number crunch decades of data for your client.
Once the servers have fulfilled their purpose, you would simply "terminate" them and pay only
for the time used. A few example uses:

• Web site overflow


• Database hosting
• Gaming server

The possibilities are endless!

Extremely Cost Effective

Developers, consultants, small business owners and corporations are all attracted to cloud
computing because of its cost-effectiveness. Rather than spending thousands of dollars on
hardware, bandwidth and energy costs, people are now turning to the cloud in droves. What's the
point in maintaining co-located or internal technology infrastructure when someone else can do it
for you? This is the most compelling case for why cloud computing is growing in popularity
every day.

14
GRID COMPUTING
Infinitely Scalable

You may not own several thousand servers, but with a few simple clicks, you can create the next
Google with some ingenuity and creativity using a reliable, proven computing platform. Popular
web sites such as Zillow.com and Twitter.com are using cloud computing to power their online
presences for millions of users. And when they require additional horsepower? Well, with a little
programming (or a "scaling manager" such as Right Scale), it's as simple as launching more "pre-
built" servers to handle the increase in load. In 2007, the New York Times made available its
archives in PDF format from 1851-1922. They accomplished this by employing a combination of
software, programming and Amazon's EC2 service to process more than 11 million documents in
a few hours time.

Flexible, Configurable

Cloud computing solutions are offered in many flavors of hardware and software options:

• 32-bit and 64-bit "virtual servers"


• Linux and Windows
• High I/O throughput
• Gigabit network interfaces
• Gigabytes of storage and memory

Whatever your requirements, you won't find a lack of options to choose from.

You Are In Control

Gone are the days of expensive hosting solutions, outrageous setup fees and asinine limitations on
what you can install and run on a server. Within minutes, you could be running a brand-new
Windows or Linux server for pennies an hour. No wait time, no hassle, no fuss. The most visible
cloud computing player in the industry is Amazon Web Services, LLC (AWS). A subsidiary of
Amazon.com, AWS offers a suite of services which include Elastic Compute Cloud (EC2),
Elastic Block Storage (persistent storage), Simple DB and more. Amazon runs the largest known
installation of the open source XEN virtualization technology -- The heart of its cloud computing
offering.

15
GRID COMPUTING
Applications:

Cloud computing has range of applications. Different providers provide different applications:
• Integration (Amazon Simple Queue Service)
• Payments (Amazon Flexible Payments Service, Google Checkout, PayPal)
• Mapping (Google Maps, Yahoo! Maps, MapQuest)
• Search (Alexa, Google Custom Search, Yahoo! BOSS)
• Video Games (Online)
• Live chat (Live Person)
• Businesses are running all kinds of apps in the cloud these days, like CRM, HR,
accounting, and custom-built apps.

Cloud computing providers:


Companies like:
Dell, VMware, EMC, Sun Microsystems, Rack space US, IBM, Amazon, Google, BMC,
Microsoft, Iron Mountain, and Yahoo are some of the major cloud computing service providers.
Cloud services are also being adopted by individual users through large enterprises including
VMware, General Electric, and Procter & Gamble

Advantages:

Cloud computing is an online form of computing (Web 2.0 in fact) where users can access
applications via a browser, while the application is installed and stored (as well as the data) on a
server. This is a whole new form of computing and is allowing thousands of users from all around
the world to access something without having to download and install anything on their own
computers. An example of this would be Google Docs.
Though it may not sound safe, there are many benefits for cloud computing. In fact, many
companies use it, including Amazon, Yahoo, Google, Zoho, Microsoft and Sales force. This
becoming the norm in computing and software, though there is some risk. So what is the big to do
about cloud computing? What makes it so fabulous? Here are just a few of the reasons.

16
GRID COMPUTING
Reduced Cost: It helps keep the cost down for both the users and website owners. Also for the
users, they can access it from any computer and still have the file they need. For the owners, they
do not need to reproduce the software and ship it out. They just rent the server space.
More Storage They can hold more storage than a personal computer can. It takes away the need
for the upgrading computer memory, which also helps keep the cost down for the companies and
users alike.
Automatically Updated: Owners no longer need to hire people to update more than one server,
and it also helps the users who do not like to download updates for the software. The server gets
the updates and everyone who uses the service gets the updates without updating anything on
their end.
Computing Flexibility: It has more flexibility than other network computing systems and saves
time plus money for people who are in a time crunch.
Mobility Like most networks it allows users to connect even without their own computers,
meaning you can do your work from anywhere in the world as long as you have a internet
connection and a computer access. So you can take your work with you on your wedding and
vacations.
No Downloads: The users do not need to download anything, so that saves time and hard drive
space for users. They can just log onto the network.
Shared Resources: A key component of cloud computing is that companies share resources.
With cloud computing, this allows them all to have access to the resources via cloud computing.
This again saves businesses time and money by placing their resources all in one location that is
easy for their workers to look up and access.
More benefits are the fact that it helps companies and government keep their files safe on their
servers and less likely to be lost or stolen on a hard drive. One is also able to store copies of files
that you need, but do not want to save on your own hard drive by using cloud computing. You can
also share important work files with each other workers and send them back and forth.
So they are plenty of benefits for working with a cloud computing, and many outweigh the
reasons why not to use cloud computing. Cloud computing are still growing and many
government bodies and company organizations already using this type of network for their
businesses. This type of computing allows them to focus on what matters and not to worry about
technology side of things. Cloud computing does have its place, though it is not for all companies.

Disadvantages:

17
GRID COMPUTING
• Regulatory Compliance
When outsourcing to a provider, customers are responsible for the security and integrity of their
own data, even when it is held by a third party provider
• Dependency
It is only possible to use applications or services that the provider is willing to offer
• Data Location & Privacy Restrictions
US & EU have different privacy standards, subject to differing laws
• Recovery
Data segmentation makes back-ups more difficult
• Logging & Investigative Support
Harder to know who altered the data and where they came from
• Data Storage
Cloud computing does not allow users to physically store of their data, so data storage is done
by the provider.

18

You might also like