The
MAXPIECESIZE parameter specifies the maximum size of each backup piece created
on the channel.
The
FILESPERSET parameter specifies the maximum number of files to place in a
backup set. If you allocate only one channel, then you can use this parameter
to make RMAN create multiple backup sets. For example, if you have 50 input
data files and two channels, you can set FILESPERSET=5 to create 10 backup
sets. This strategy can prevent you from splitting a backup set among multiple
tapes.
The
MAXOPENFILES parameter setting depends on your disk subsystem characteristics.
If you use ASM, then set it to 1 or 2. Otherwise, if your data is striped, then
you may want to set this higher. To gain performance, increase either the
number of files per backup set, or this parameter. If you are not using ASM or
striping of any kind, then try increasing MAXOPENFILES.
The BACKUP
DURATION option of the BACKUP command can be used in different ways. If you
specify a shorter duration than needed for the backup to complete, then you can
use this to keep the backup activity inside a specific time window. In specific
cases, the partial backup that does complete is not lost.
Also, this
option has two modifiers:
•
MINIMIZE
TIME: The backup
runs as fast as possible.
•
MINIMIZE
LOAD: The backup
attempts to use the full amount of time available in the window. This reduces
load on the system.
Tuning
RMAN Backup Performance
•
Follow
this set of steps to obtain the best backup performance:
•
Remove
RATE settings from configured and allocated channels. The RATE parameter is
used to set the maximum number of bytes (default), kilobytes (K), megabytes
(M), or gigabytes (G) that RMAN reads each second on the channel. It sets an
upper limit for bytes read so that RMAN does not consume too much disk
bandwidth and degrade performance. If your backup is not streaming to tape,
ensure that the RATE parameter is not set on the ALLOCATE CHANNEL or CONFIGURE
CHANNEL command.
•
Set
DBWR_IO_SLAVES if you use synchronous disk I/O. If your disk does not support
asynchronous I/O, then try setting the DBWR_IO_SLAVES initialization parameter
to a nonzero value. Any nonzero value for DBWR_IO_SLAVES causes a fixed number
(four) of disk I/O slaves to be used for backup and restore, simulating
asynchronous I/O. If I/O slaves are used, I/O buffers are obtained from the
SGA. The large pool is used if configured. Otherwise, the shared pool is used.
Note: By setting DBWR_IO_SLAVES, the
database writer processes will use slaves as well. You may need to increase the
value of the PROCESSES initialization parameter.
•
Set
LARGE_POOL_SIZE as described on the next page.
•
Tune
RMAN tape streaming performance bottlenecks.
•
Use
V$ views
Setting
LARGE_POOL_SIZE FOR RMAN Tuning
•
The
requests for contiguous memory allocations from the shared pool are small,
usually under
5 KB in size. It is possible that a request for a large contiguous memory allocation can fail or require significant memory housekeeping to release the required amount of contiguous memory. The large pool may be able to satisfy the memory request. The large pool does not have a least recently used list, so Oracle does not attempt to age memory out of the large pool.
5 KB in size. It is possible that a request for a large contiguous memory allocation can fail or require significant memory housekeeping to release the required amount of contiguous memory. The large pool may be able to satisfy the memory request. The large pool does not have a least recently used list, so Oracle does not attempt to age memory out of the large pool.
•
Use
the LARGE_POOL_SIZE initialization parameter to configure the large pool. Query
V$SGASTAT.POOL to see in which pool (shared pool or large pool) the memory for
an object resides. The suggested value for LARGE_POOL_SIZE is calculated as:
•
#_of_allocated_channels
* (16 MB + (4*size_of_tape_buffer ))
•
For
backups to disk, the tape buffer is obviously 0, so set LARGE_POOL_SIZE to 16
MB. For tape backups, the size of a single tape buffer is defined by the RMAN
channel parameter BLKSIZE, which defaults to 256 KB. Assume a case in which you
are backing up to two tape drives. If the tape buffer size is 256 KB, then set
LARGE_POOL_SIZE to 18 MB. If you increase BLKSIZE to 512 KB, then increase LARGE_POOL_SIZE
to 20 MB.
Note: The large pool is used only for
disk buffers when DBWR_IO_SLAVES > 0 and for tape buffers when
BACKUP_TAPE_IO_SLAVES = TRUE. If you are using Automatic Shared Memory
Management, the large pool is sized automatically in response to system
workload.