Database Reference
In-Depth Information
Summary
In this chapter, we explored the concept of parallel execution in Oracle. I started by presenting an analogy to help
frame where and when parallel execution is applicable—namely, when you have long-running statements or
procedures and plenty of available resources.
Then we looked at how Oracle can employ parallelism. We started with parallel query and how Oracle can break
large serial operations, such as a full scan, into smaller pieces that can run concurrently. We moved on to parallel
DML (PDML) and covered the rather extensive list of restrictions that accompany it.
Then we looked at the sweet spot for parallel operations: parallel DDL. Parallel DDL is a tool for the DBA and
developer alike to quickly perform those large maintenance operations typically done during off-peak times when
resources are available. We next looked at procedural parallelism and saw two techniques for parallelizing our
procedures: one where Oracle does it and the other where we do it ourselves.
If we're designing a process from scratch, we might well consider designing it to allow Oracle to parallelize it for
us, as the future addition or reduction of resources would easily permit the degree of parallelism to vary. However, if
we have existing code that needs to quickly be fixed to be parallel, we may opt for DIY parallelism, which we covered
by examining two techniques, manual and automatic. Each uses either rowid ranges or primary key ranges, which
both use DBMS_JOB or DBMS_SCHEDULER to carry out the job in parallel in the background for us.
 
Search WWH ::




Custom Search