10.1 Parallel Recovery (v7.1)
The goal of parallel recovery is to reduce the time for crash recovery, single instance recovery, and media recovery with parallel mechanisms for computing and I/O. Recovery time can be effectively reduced when multiple data files on multiple disks are restored at the same time.
10.1.1 Parallel Recovery Architecture
Parallel recovery partitions do two things:
1. Read Redo log.
2. Apply change vectors.
Step 1 is not suitable for parallelism, and redo logs must be read sequentially and then merged in Media recovery. So this task is done by a process: Read the Redo log process
Step 2 is good for parallelism, so the task of applying the change vector is delegated to a group of subordinate processes that redo the program. The redo log read process sends the change vector to the Redo program subordinate process, using the same IPC mechanism (interprocess communication mechanism) as in parallel queries. The change vector uses the hash function to use the data block address as the parameter to distribute. Therefore, each redo program process processes only the change vectors that are assigned to its "bucket". The Redo program subordinate process is responsible for reading the data blocks into the cache, checking whether the change vectors should be applied, and applying them if necessary.
This architecture reaches the data block read I/O and changes the parallel in the vector application process. It allows log read I/O and block read I/O to be performed in parallel. In addition, it allows read I/O of data blocks in different hash buckets to be performed in parallel. As long as the benefits of parallelism outweigh the costs associated with process management and communication, the recovery time is reduced effectively.
10.1.2 Parallel Recovery System initialization parameters
Parallel_recovery_max_threads
Parallel_recovery_min_threads
These two parameters control the number of redo program dependent processes in crash recovery or media recovery.
Parallel_instance_recovery_threads
This parameter controls the number of redo program dependent processes in the instance recovery.
10.1.3 Media Recovery Syntax changes
The RECOVER Database command adds an optional parameter to specify the number of redo program dependent processes. If this parameter is specified, the value of the default parameter parallel_recovery_max_threads is overwritten.
The RECOVER tablespace command adds an optional parameter to specify the number of redo program dependent processes. If this parameter is specified, the value of the default parameter parallel_recovery_min_threads is overwritten.
The RECOVER datafile command adds an optional parameter to specify the number of redo program dependent processes. If this parameter is specified, the value of the default parameter parallel_recovery_min_threads is overwritten.
See more highlights of this column: http://www.bianceng.cnhttp://www.bianceng.cn/database/Oracle/