Grid Computing
Grid Computing
1.1Introduction:-
IAN FOSTER
When the network is as fast as the computer's internal links, the machine
disintegrates across the net into a set of special purpose appliances.
“United we stand, divided we fall”, is the key idea behind grid computing. Grid is a
type of parallel and distributed system that enables the sharing, selection, and aggregation of
geographically distributed "autonomous" resources dynamically at runtime depending on
their availability, capability, performance, cost, and users' quality-of-service requirements.
Grid computing is a critical shift in thinking about how to maximize the
value of computing resources. It allows us to unite pools of servers, storage systems and
networks into a single large system so we can deliver the power of multiple-systems resources to
a single user point for a specific purpose. To a user, data file, or an application, the system
appears to be a single, enormous virtual computing system.
Grid computing is the next logical step in distributed networking. Just as the
Internet allows users to share ideas and files as the seeds of projects, grid computing lets us share
the resources of disparate computer systems. The major purpose of a grid, is to virtualize
resources to solve problems. So, rather than using a network of computers simply to
communicate and transfer data, grid computing taps the unused processor cycles or numerous i.e.
thousands of computers.
1.2 Definition:- A means of network computing that harnesses the unused processing cycles
of numerous computers, to solve intensive problems that are often too large for a single computer
to handle, such as in life sciences or climate modeling.
1.3 Origin:-
Its roots lies in early distributed computing projects that date back to the 1980s As a
result, grid has become a centerpiece of the "utility computing" marketing drive taken up by
nearly every vendor.
1.4Phases [history]
a) First generation:-FAFNER(Factoring via Network-Enabled Recursion) and I-WAY are the
two first generation grid computing methods. FAFNER is Based on public key encryption
algorithm, was used factorize extremely large numbers
2. Grid:-
3. Types of Grid:-
3.1Computational Grid:- It is focused on settings aside resources specifically for
computing power .In this type of grid most of machines are high performance servers.
3.2 Scavenging Grid:-It is most commonly used with large numbers of desktop machine.
Machines are scavenged for available CPU cycles and other resources. Owners of desktop
machines are usually given control over when their resources are available to grid.
3.3 Data Grid:-It is responsible for housing and providing access to data across multiple
organizations. Users are not concerned with where this data is located as long as they access to
the data .
4 HOW IT WORKS?
Grid computing uses networked clusters of CPUs connected over the Internet, a
company intranet or a corporate WAN. The resulting network of CPUs acts as a foundation for a
set of grid-enabling software tools. These tools let the grid accept a large computing job and
break it down into tens, hundreds or thousands of independent tasks. The tools then search the
grid for available resources; assign tasks to processors, aggregate the work and spit out one final
result.
A grid user installs the provided grid software (for using the grid as well as
donating to the grid) on his machine and gets connected with Internet. The user establishes his
identity with a certificate authority. This software may be automatically reconfigured by the
grid management system to know the communication address of the management nodes in
the grid and user or machine identification information.
To use the grid, most grid systems require the user to log on to a system using
a user ID that is enrolled in the grid. Once logged on, the user can query the grid and submit
jobs. Grid systems usually provide command line tools as well as graphical user interfaces
(GUIs) for queries. Command line tools are especially useful when the user wants to write a
script.
Job submission usually consists of three parts, even if there is only one command
required.
Some input data and possibly the executable program or execution script file are sent to
the machine to execute the job. Sending the input is called “staging the input data.”
The results of the job are sent back to the submitter. When there are a large number of
sub jobs, the work required to collect the results and produce the final result is usually
accomplished by a single program
Min-min algorithm
6. ARCHITECTURE:
We will study the architecture from the Open Grid Services Architecture (OGSA),
developed by the members of the Global Grid Forum (GGF).Building on existing Web
services standards, the OGSA defines a grid service as a Web service that conforms to
a particular set of conventions. Working groups in organizations like the Global Grid
Forum and OASIS are busy defining an array of grid standards in areas like
Applications and programming models, Architecture, Data management, Security,
Performance, Scheduling and resource management.
7 Grid Components:-
7.1P orta
l/Use r
Interface:-A grid user should not see all of the complexities of the computing grid. From this
perspective, the user sees the grid as a virtual computing resource just as the consumer of power
sees the receptacle as an interface to a virtual generator.
7.2 Security:- At the base of any grid environment, there must be mechanisms to provide
security, including authentication, authorization, data encryption, and so on. The Grid Security
Infrastructure (GSI) component of the Globus Toolkit provides robust security mechanisms.
The GSI includes an Open SSL implementation. It provides a single sign-on mechanism, so
that once a user is authenticated, a proxy certificate is created and used when performing actions
within the grid
7.3 Broker:-Once authenticated, the user will be launching an application. Based on the
application, and possibly on other parameters provided by the user, the next step is to identify the
available and appropriate resources to use within the grid. This task could be carried out by a
broker function
7.4 Scheduler:-Once the resources have been identified, the next logical step is to schedule the
individual jobs to run on them. If a set of stand-alone jobs are to be executed with no
interdependencies, then a specialized scheduler may not be required. However, if you want to
reserve a specific resource or ensure that different jobs within the application run concurrently,
then a job scheduler should be used to coordinate the execution of the jobs. The Globus Toolkit
does not include such a scheduler, but there are several schedulers available that have been
tested with and can be used in a Globus grid environment.
7.5 Data Management:-If any data including application modules must be moved or made
accessible to the nodes where an application's jobs will execute, then there needs to be a secure
and reliable method for moving files and data to various nodes within the grid. The Globus
Toolkit contains a data management component , Grid Access to Secondary Storage (GASS)
(facilities like Grid FTP)
7.6 Job and Resource Management:-. The Grid Resource Allocation Manager (GRAM)
provides the services to actually launch a job on a particular resource, check its status, and
retrieve its results when it is complete.
8.4 Schedulers:- This software locates a machine on which to run a grid job that has been
submitted by a user. Schedulers usually react to the immediate grid load and arranged
hierarchically.
8.5 Communications:- A grid system may include software to help jobs communicate with each
other However, the application may implement an algorithm that requires that the sub jobs
communicate some information among them.The open standard Message Passing Interface
(MPI) and any of several variations is often included as part of the grid system for just this kind
communication.
into a drug.
The process is similar to finding the right key to open a special lock — by looking at millions
upon millions of molecular keys.
Participants in the United Devices Cancer Research Project (shown below) are sent a
ligand library over the Internet. Their PC will analyze the molecules using docking software
called LigandFit by Accelrys. The LigandFit software analyzes the molecular data by using a
three-dimensional model to attempt to interact with a protein binding site. When a ligand docks
successfully with a protein the resulting interaction is scored and the interactions that generate
the highest scores are recorded and filed for further evaluation.
Grid systems are less dynamic, scalable and fault tolerant as compared to P2P systems
Not every application is suitable or enabled for running on a grid.
Cellular wireless networks are more constrained than traditional wired networks because
of the limitations of bandwidth, processing power and memory.
The open source Globus Toolkit is a fundamental enabling technology for the "Grid”, which
includes software services and libraries for resource monitoring, discovery and management,
plus security and file management. In addition to being a central part of science and
engineering projects that total nearly a half-billion dollars internationally, the Globus Toolkit
is a substrate on which leading IT companies are building significant commercial Grid
products.
13. The Future:-Before grid computing moves into the commercial mainstream, CEOs need
to learn more about the technology and its possibilities, and identify ways they can use it. But
other problems needed to be solved like are security, standardization and new protocols for
bringing together a number of operating systems, vendor platforms and applications, before grid
computing becomes truly widespread—particularly in the context of inter-enterprise grids, utility
models and ultimately a global grid. A number of nonprofit groups such as the Global Grid
Forum, the Globus Project and the New Productivity Initiative are working on security and
standardization issues.
14. Conclusion:-So we see, grid computing *is* the ultimate "killer” technology. The grid
computing can be implemented using different technologies like XML, java, CORBA and
dynamically allocates the resources. The basic part is the scheduler of the grid computing. The
grid can be implemented in intranet or on Internet. The grid is used for large computations in fields
such as biotechnology, automobile, medical and many fields. The grid can be implemented
depending on requirements of the application, security, and priority for task to be done. The
scheduler is the core item of the grid; the algorithm can be depending on priority or resources
available or type of network available. Although there is some limitation on wireless environment,
but it is future of computing which will explore new ways for computing in enterprise environment.