Oracle Data Warehouse Tuning for 10g

This chapter will examine parallel processing. Parallel processing is most beneficial for certain types of operations in very large data warehouses, sometimes in smaller databases for a small number of operations, and rarely in OLTP or heavily concurrent transaction databases.
A process executed in parallel is, in theory, a process split into multiple, preferably independent, parts. Those independent parts are executed concurrently (at the same time) either on two separate CPUs or even by multiple server processes on a single powerful CPU. There can be dependencies between processes executed in parallel, but this type of processing tends to be constructed using specialized programming languages on specialized multiple massively parallel platforms.
Oracle Database does have some fairly sophisticated parallel processing capabilities, but these capabilities do not appear to extend into the ability to communicate between parallel executing processes at the programming level. In general, parallel processing in an Oracle Database needs three things: (1) a database large enough, and of appropriate application type, to actually be able to use parallel processing effectively; (2) spare resources in the form of multiple CPUs, CPU, memory, and I/O capacity to spare; and (3) a database requiring operations that can be executed in parallel.
| Note | A database environment not being appropriate for parallel processing could be adversely affected by implementation of parallel processing. |
In an ideal world parallel queries are best executed on multiple CPU platforms when Oracle Partitioning [1] is being...