This is an excerpt from the bestselling book
Oracle Grid &
Real Application Clusters. To get immediate access to the code depot
of working RAC scripts, buy it
the publisher and save more than 30%.
Computing Systems and RAC
Grid extends the existing distributed computing resources
further into a more unified and collaborative structure. Grid also enables the
heterogeneous systems to work together to form the image of a large virtual
computing system offering a variety of virtual resources. The users of the grid
can be organized dynamically into a number of virtual organizations, each with
different policy requirements. These virtual organizations can share their
resources collectively as a larger grid.
The participants and users of the grid can be members of several real and
virtual organizations. The grid can help in enforcing security rules among them
and implement policies, which can resolve priorities for both resources and
Additional RAC Resources and RAC Resource
In addition to CPU and Storage resources, a grid can also
provide access to increased quantities of other resources and to special
equipment, software, licenses, and other services. For applications that are
grid enabled, the grid can offer a resource balancing effect by scheduling grid
jobs on machines with low utilization as well.
This re-balance feature is quite significant for handling occasional peak loads
of activity in parts of larger organizations. This can happen in two ways:
- An unexpected peak can be routed to relatively idle machines in the grid.
- If the grid is already fully utilized, the lowest priority work being
performed on the grid can be temporarily suspended or even cancelled and
performed again later to make room for the higher priority work.
Without a grid infrastructure, such balancing decisions are difficult to
prioritize and execute. Therefore, processing the batch jobs can be achieved
more quickly by spreading them across more resources.
Secure and Federated Data Access
In a large-scale distributed environment, there
are many heterogeneous data sources, files, databases, XML documents and so on.
Users often end up coding very complex applications to access them. The
collaborative work requires that all the data is available in some uniform way.
Grid can be a solution in this area as well.
There are several forces driving the progression toward the Grid Computing
paradigm. Among them are the relentless increase in microprocessor performance,
and the availability, reliability, and bandwidth of global networking. New
scientific experiments are producing a data explosion and the need for sharing
such community data.
Oracle Grid Types
In a way, Grid Architecture is still in the evolving stage.
There are many variations and types of Grids. They are often based on one?s own
needs and their own understanding.
There is no standard in categorization of grids. Many Research Analysts, IT
vendors, and Computer scientists began classifying the grid and grid variations
based their own understanding and vision. Some base it on the functionality and
some base it on the architecture and some on the built-in components. Many
organizations have different focuses, thus resulting in different
classifications. Grid computing can be used in a variety of ways to address
various kinds of application requirements. Often, grids are categorized by the
type of solutions that they best address.
Again, there are no hard and fast rules or boundaries between these grid types
and often grids may be a combination of two or more of these.
For example, Clubby Analytics, a research analysis organization, categorizes the
Grids into four types:
Compute Grids ? These are the grids designed for exploiting unused computing
power or the CPU cycles. They have been in use for scientific, engineering and
space research for a long time.
Information Grids ? These grids are more like peer-to peer services, primarily
for the purpose of collaborative computing, file sharing. These are also
sometimes called ?data grids?, which provide standards based federated data
sharing for business applications.
Service Grids ? These types of Grids combine the physical elements of grid
interconnection (high speed, fabric-like network interconnect) with web services
program to program architecture to deliver an environment that allows different
applications, running on varied operating environments, to run and interoperate.
Intelligent Grids ? These grids will consist of basic grid network interconnect
elements combined with systems/storage/network management hardware/software
enhancements (and maybe even applications and database management capabilities)
that will enable grid devices to automatically manage themselves or other
devices on the network.
Looking at another example, Sun Microsystems has a different vision for Grids.
They classify grids into Cluster Grids, Campus Grids, and Global Grids. This
classification is based on the geographical dispersion of the servers.
Cluster Grids - Cluster Grids consist of one or more systems working together to
provide a single point of access to users. Typically owned and used by a small
number of users, such as a project or department, Cluster Grids support both
high-throughput and high-performance jobs. Resources in the grid can be focused
on a narrow set of repetitive tasks, or made to work in true parallel fashion to
execute a complex job.
Campus Grids - As capacity needs and demands for
greater economy increase, organizations can combine their Cluster Grids into
Campus Grids. Campus Grids enable multiple projects or departments to share
computing resources in a cooperative way.
Global Grids - When application needs exceed the capacity of a Campus Grid,
organizations can tap partner resources through a Global Grid. Designed to
support and address the needs of multiple sites and organizations sharing
resources, Global Grids provide the power of distributed resources to users
anywhere in the world.
The following is IBM?s spin on Grids. They define
three types of Grids. The three primary types of grids are summarized below.
Computational Grid - A computational grid is
focused on setting aside resources specifically for computing power. In this
type of grid, most of the machines are high-performance servers.
Scavenging Grid - A scavenging grid is most
commonly used with large numbers of desktop machines. Machines are scavenged for
available CPU cycles and other resources. Owners of the desktop machines are
usually given control over when their resources are available to participate in
Data Grid - A data grid 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 have access to the data. For example, there may be two
universities doing life science research, each with unique data. A data grid
would allow them to share their data, manage the data, and manage security
issues such as who has access to what data.
However, most researchers seem to prefer to define Girds loosely into two types:
Computational Grids and Data Grids. The Computational grids are mainly focusing
on the utilization of CPU cycles the so-called processing power from the
under-utilized computers. There are many community projects that have been
launched, and they are soliciting unused processing power from community
members. In the commercial world, within the secured walls of the enterprise,
there is good scope for similar exercises to pool unused resources. They all aim
at harnessing and executing the jobs in parallel, and achieving higher
throughput and better response times.
At the same time, another major requirement is to process, analyze and summarize
huge chunks of data located in different locations and different forms. That is
where the concept of Data Grid is making strides. Data Grids focus on
discovering, collecting and aggregating various forms of data and presenting the
data seamlessly to the users for effective processing.
There is a definite case for data and computational grids as these are the key
resources, which are in high usage and demand.