Call now: 252-767-6166  
Oracle Training Oracle Support Development Oracle Apps

 
 Home
 E-mail Us
 Oracle Articles
New Oracle Articles


 Oracle Training
 Oracle Tips

 Oracle Forum
 Class Catalog


 Remote DBA
 Oracle Tuning
 Emergency 911
 RAC Support
 Apps Support
 Analysis
 Design
 Implementation
 Oracle Support


 SQL Tuning
 Security

 Oracle UNIX
 Oracle Linux
 Monitoring
 Remote s
upport
 Remote plans
 Remote
services
 Application Server

 Applications
 Oracle Forms
 Oracle Portal
 App Upgrades
 SQL Server
 Oracle Concepts
 Software Support

 Remote S
upport  
 Development  

 Implementation


 Consulting Staff
 Consulting Prices
 Help Wanted!

 


 Oracle Posters
 Oracle Books

 Oracle Scripts
 Ion
 Excel-DB  

Don Burleson Blog 


 

 

 


 

 

 

Oracle Grid Computing Resources

There are several resources for learning more about Oracle grid computing, consulting support and the Oracle Grid Computing book.

Oracle Grid Consulting

BC has immediate access to full-time RAC architecture consultants, for any Oracle RAC architecture issue.

BC has Oracle certified RAC experts  available to perform Oracle RAC architecture. Just call, and get a RAC expert to do your RAC architecture, using proven RAC architecture techniques.
 

 Oracle Grid Computing Book

Mike Ault's premier book "Oracle 10g Grid and Real Application Clusters" has complete Real Application Clusters RAC architecture advice and details, highly recommended for anyone who needs to understand the Oracle RAC architecture.


Oracle Dynamic Grid Computing

by Donald K. Burleson

On the OracleWorld Web page, we see the announcement that the next generation of Oracle Grid technology was unveiled by Larry Ellison:

"It [Oracle Grid computing technology] promises not only to change the way you run your data center, but to change the way you think about the data center itself. It adapts to your changing business needs so that you can spend more time thinking about how to run your business, knowing that your infrastructure will respond with the reliable, secure performance your applications need.

It [Oracle Grid computing technology] represents a significant rethinking of the traditional role of software infrastructure in areas such as system performance, clustering and storage. The software is the first infrastructure designed for Grid computing"

Oracle Corporation has been promoting Grid computing technology for the past year, and we need to take a closer look at Oracle Gris computing to see the benefits of this new technology.

Grid computing is the on-demand sharing of computing resources with in a tightly-coupled network. For those of you who are old enough to remember data processing in the 1980s, the IBM mainframes are a primitive example of Grid computing. Mainframes have several CPUs, each independent, and the MVS/ESA operating system allocated work to the processors based on least-recently-used algorithms and customized task dispatching priorities. Of course, RAM and disk resources were available to all programs executing on the huge, monolithic server.

However, Grid computing is fundamentally different from mainframes. In the 21st century, Grid computing performs a "virtualization" of distributed computing resources and allows for the automated allocating of resources as system demand changes. Each server is independent, yet ready to participate in a variety of processing requests from many types of applications.

Grid computing also employs special software infrastructure (for Oracle, using Oracle*Streams) to monitor resource usage and allocate requests to the most appropriate resource. This enables a distributed enterprise to function as if it were a single supercomputer (refer to Figure 1).

Figure 1: Server virtualization technology.

Remember, Grid computing is all about reducing costs and ensuring acceptable performance, and infinite scalability.

The History of Grid Computing

The idea of Grid computing arose from the need to solve highly-parallel computational problems that were beyond the processing capability of any single computer. These types of scientific parallel computing problems are non-linear, and therefore ideal for splitting-out into subprograms because there is no need for each subprogram to communicate with the master program. The main program will send out a program to a remote computer in the network, where the program will execute independently from the master. Upon completion, the subprograms deliver the results back to the main program.

The Search For Extraterrestrial Intelligence (SETI) project is the best-known example of distributed grid computing. Participants register their PC with SETI, and the SETI software uses computing cycles from thousands of PCs across the globe to solve complex analytical problems.

Why Grid Computing?

Let's take a quick look at some of the problems that led to the development of Grid technology. The trend of the 1990s was toward small, cheap, dedicated servers, and Oracle shops replace a single mainframe with hundreds of UNIX and MS-Windows servers. However, IT shops soon realized that the high expense of maintaining multiple servers plus the requirement to over-allocate hardware was eroding these savings. The problems of using dedicated servers include:

1. Expense: In large enterprise data centers, hardware resources are deliberately over-allocated to accommodate processing-load peaks.

2. Wastefulness: Because each application resides on a single server, there is significant duplication of work, and a sub-optimal utilization of RAM and CPU resources.

3. High Maintenance: In many large shops, a "shuffle" occurs when an application outgrows its server. A new server is purchased, and the database is moved to the new server. Then the old server becomes available, and another database is migrated onto the old server. This shuffling of databases between servers is a huge headache for the administrators who are kept busy after hours moving databases to new server platforms.

In Figure 2, we see how each dedicated Oracle server must be over-allocated for RAM to meet system demand. As we know, an increase in volume requires additional PGA RAM for each connected Oracle user, and the savvy DBA will allocate RAM to the high-water mark of RAM usage.

Figure 2: Over-allocation of RAM resources.

We see the same type of over-allocation for CPU resources. To ensure acceptable response time at peak usage, the Oracle DBA will assign additional CPU resources to each server (refer to Figure 3).

Figure 3: Over-allocation of CPU resources.

The Gartner Group predicts that worldwide server blade shipments will increase to more than one million over the next three years and that server blade technology is one of the only areas within the server market that is experiencing significant growth.

All of the major hardware vendors are now offering server blade hardware, at far lower costs than traditional UNIX servers:

  • IBM — IBM's Grid offering uses their self-managing server initiative, called eLiza. eLiza claims to place all resource management software into a coordinated package, affording the boxes some measure of "self-healing" capability. eLiza will use Web services to request additional computing resources. The IBM blade server hardware uses their 64-bit pSeries chips.
  • Sun Microsystems — Sun also employed low-cost, low-power servers, using a UltraSPARC 650-MHz CPU with up to two gigabytes of RAM
  • Compaq — Compaq is also entering the server blade market with a low-cost blade setup that only costs $17k for a rack of 10 blade servers.
  • Dell — Dell's PowerEdge 1655MC product line allows a single rack to hold 84 servers, each equipped with up to two hard drives and dual Intel Pentium III processors. The individual blade servers will start at $1,499 each and include a single 1.26 GHz Pentium III and an 18 Gig hard drive. A fully populated enclosure, which includes six servers, starts at $10,973.

Blades and Independent Processing

It is critical to note that blade servers are good for programs that do not require the symmetric multiprocessing (SMP) capabilities of large mid-range servers. For example, a blade server would not be appropriate for a RAC node that performs parallel query operations because blade servers are normally single-CPU machines and OPQ may require up to 32 CPS for fast large-table, full-table scans. For OLTP Oracle9i RAC system, blade server are perfect because the nature of individual queries does not require multiple CPU resources.

Blade servers are ideal for Oracle9iAS web cache servers or Oracle HTTP servers because a new server can easily be added into the Oracle9iAS server farm. In Oracle9iAS, we can use a rack of blade servers and pre-install Oracle Web Server and Oracle HTTP server (OHS) software. At runtime, the Oracle9iAS administrator can add these server blades to their Oracle9iAS farm, using each blade as either a Web cache server or an HTTP server, depending upon the stress on the system.

Figure 4: Using blade servers with Oracle9iAS.

It is important to understand that Grid computing is not the on-demand allocation of computing resources to an existing server. Rather, Grid computing is the use of software tools to farm-out processing tasks to independent servers or add additional servers to an existing cluster or farm. This allows the enterprise to share computing, storage, data, programs, and other resources in a dynamic fashion.

How Grid Works with Oracle

Oracle Grid computing allows for two ways to provide on-demand computing resources. These involve direct hardware allocation via blades, and the allocation of remote servers to execute Oracle tasks:

  • Add processing power to existing systems — Server blades can be allocated to Oracle9i RAC clusters.
  • Server banks — Oracle servers can be established with no local data and copies of all application stored procedures. This would allow for three types of distributed execution:
    • Remote execution — Entire programs, along with the data are shipped to the remote server for execution. Using Oracle Streams, the results are sent back to the initiating instance.
    • Remote data extracts — Distributed SQL can execute from a bank of servers with instances, but no local Oracle data
    • Remote process execution — Oracle applications can call PL/SQL stored procedures on the least-loaded servers

Oracle follows the Sun Microsystems definition of delivering computing resources as a "utility," much the same way as additional electricity is added to a network during high-usage times.

Oracle whitepapers suggest that the next generation of Oracle Grid computing will use Oracle*Streams as the glue for the Grid communications. Oracle*Streams allows for the streaming of data between Oracle instances, and also provides built-in tools for replication, data warehouse ETL (data loading), message queues and messaging.

Hence, Oracle*Streams could be used as the vehicle for a Grid system whereby Oracle detects a resource shortage and invokes a procedure to relieve the stress on the database. While using Oracle*streams as the backbone, Oracle identifies three ways that computing resources can be assigned:

1. Oracle9i Real Application Clusters (RAC)
Using existing Oracle9i RAC capabilities, data blade servers can be used to add instance nodes. This allows for automated scalability, and a rack of server blades can be allocated to the Oracle9i RAC system on an as-needed basis.

2. Oracle transportable tablespaces
Transportable Tablespaces allow Oracle data files to be unplugged from a database and copied to another Oracle instance (on another server) and then added into that Oracle instance (refer to Figure 5). Transportable Tablespaces also supports simultaneous mounting of read-only tablespaces by two or more databases. Using transportable tablespaces with Oracle*Streams, the Grid could request a refresh of the tablespace data at any time.

Figure 5: Using transportable tablespaces to enable resource allocation.

Distributed SQL

Oracle SQL can be executed from any Oracle instance, accessing the data remotely using database links. This provides a framework where SQL servers may be allocated, all executing queries that access the same Oracle database.

However, it is important to remember that not all types of queries will benefit from remote execution. A simple Oracle query such as the one below would have all of the processing work (sorting) done on the remote server, saving no computing resources.

select          
   cust_name
from 
   customer 
order by 
   cust_name;

Farming out SQL queries to remote non-RAC instances makes more sense when the initiating instance has an opportunity to use its own computing resources to service the query. For example, consider the following distributed query, run from an instance named Omaha:

select
   cust_name.
   order_number,
from
   customer@new_york,
   orders@san_fran
where
   region = ‘WEST'
order by
   cust_name,
   order_number;

This type of query is ideal for remote execution because the bulk of the data processing will be done on the Omaha instance (refer to Figure 6).

Figure 6: Remote SQL query execution.

In this example, the new_york and san_fran servers perform the disk I/O to retrieve the requested data, passing the result set back to the Omaha instance. The Omaha instance will use its computing resources to join the tables together and perform the sorting.

Despite the apparent growth of server blade technology, there are critics who claim that the technology is exaggerated.

Limitations of Grid Technology

In an interesting Blue Arc article titled, "Blade Server Not Looking so Sharp," Dr. Geoff Barrall (CTO of BlueArc Corporation) notes several issues with Blade Server computing:

  • Not low cost — Barrall claim that the costs for a rack of blade servers, despite their limited functionality, is often as high as the cost of a fully configured rack mount server with similar specifications.
  • Limited I/O — In a blade server, the I/O paths are shared, leading to limitations in the number of peripheral I/Os that can take place, such as disk I/O or server-to-server network communication.
  • Limited flexibility — Blade servers cannot be retired and replaced in the same way regular rack mount servers can, and there is a loss of flexibility in the way servers can be interconnected.

Conclusion

All Oracle professionals eagerly await Oracle's announcement about the latest release of the Oracle database and its adoption of Grid computing as a central feature.

Time will tell if the market embraces the technology and if Oracle has hit the mark with Grid technology, or if Oracle Grid will slip by the wayside as computing resources become cheaper.

Learn more about Oracle Grid Computing

Get the book, a great guide to Oracle grid computing with hundreds of pages of Oracle grid computing tips and techniques.

                                             Only $51.95  (30% off)

 


 

 

 

 

 

 

��  
 
 
Oracle Training at Sea
 
 
 
 
oracle dba poster
 

 
Follow us on Twitter 
 
Oracle performance tuning software 
 
Oracle Linux poster
 
 
 

 

Burleson is the American Team

Note: This Oracle documentation was created as a support and Oracle training reference for use by our DBA performance tuning consulting professionals.  Feel free to ask questions on our Oracle forum.

Verify experience! Anyone considering using the services of an Oracle support expert should independently investigate their credentials and experience, and not rely on advertisements and self-proclaimed expertise. All legitimate Oracle experts publish their Oracle qualifications.

Errata?  Oracle technology is changing and we strive to update our BC Oracle support information.  If you find an error or have a suggestion for improving our content, we would appreciate your feedback.  Just  e-mail:  

and include the URL for the page.


                    









Burleson Consulting

The Oracle of Database Support

Oracle Performance Tuning

Remote DBA Services


 

Copyright © 1996 -  2020

All rights reserved by Burleson

Oracle ® is the registered trademark of Oracle Corporation.