Please enter search query.
Search <product_name> all support & community content...
How MPX_RESTORE_DELAY can be used to improve restore performance on a NetBackup Oracle Recovery Manager backup that was multiplexed
Article: 100006440
Last Published: 2013-10-23
Ratings: 0 0
Product(s): NetBackup & Alta Data Protection
Problem
How MPX_RESTORE_DELAY can be used to improve restore performance on a NetBackup Oracle Recovery Manager backup that was multiplexedSolution
MPX_RESTORE_DELAY is a VERITAS NetBackup (tm) master serversetting which applies to multiplexed restores and specifies how long (inseconds) a restore job waits for additional restore requests of files and/or rawpartitions that are part of a multiplexed image set on the same tape. All therestore requests that are received within the delay period are included in thesame restore operation (one pass of the tape). By default, the delay is 30seconds.
Specifically, when bprd (the NetBackup request daemon) on themaster server receives the first stream of an MPX restore request, itwill trigger the MPX_RESTORE_DELAY timer to start counting the configured amountof time. At this point, bprd waits and watches for related MPX jobs from thesame client before starting the overall job. If another associated stream isreceived within the timeout period, it is added to the total job and the timeris reset to the MPX_RESTORE_DELAY period. Once the timeout is reached without anadditional stream being received by bprd, the timeout window closes and allassociated restore requests are sent to bptm and a tape is mounted. If anyassociated restore requests are received after this event, they are queued towait until the tape that is now "In Use" is returned to an idle state.
If MPX_RESTORE_DELAY is not set or not set high enough, NetBackup mayneed to mount and read the same tape multiple times to collect all of thenecessary header information necessary for the restore. Ideally, one wouldprefer that NetBackup only read a multiplexed tape once, collecting all of theheader information it needs with one pass of the tape, thus optimizing theamount of time it takes to restore.
For example:
IfMPX_RESTORE_DELAY is not set in the NetBackup master's bp.conf file, thedefault is 30 seconds. If you are trying to restore from an Oracle RecoveryManager (RMAN) backup that was backed up using four channels or four streams,and are using the same number of channels to restore, RMAN will pass NetBackup aspecific data request letting NetBackup know what information it needs to startand complete the restore. The first request is passed and received by NetBackupin 29 seconds causing MPX_RESTORE_DELAY to be reset, the next requests in 22seconds and again MPX_RESTORE_DELAY is reset to 30 seconds, the third request in25 seconds but the fourth request in 31 seconds. Since the fourth requested wasnot received with the restore delay, NetBackup launches three of the four jobsinstead of all four requests. Now instead of reading from the tape once, it willqueue up the fourth job request until the three requests are completed. Sinceall of the multiplexed images are on the same tape, NetBackup will mount,rewind, and read the entire tape again to collect the multiplexed images for thefourth job request.
It is worthwhile to note that in addition toNetBackup reading the tape twice, RMAN is still waiting for the necessary headerinformation it needs before it will even begin restoring.
If theMPX_RESTORE_DELAY was set high enough, (in this case 32 seconds) NetBackup wouldhave retrieved all four restore requests and collected all of the necessaryheader information with one pass of the tape and Oracle could start restoringthe database, improving performance drastically.
It should also be notedthat setting this value too high can also hinder performance.
Forinstance, If the MPX_RESTORE_DELAY is set to 1800 seconds and the longestrequest only took 600 seconds, NetBackup will wait the length of time for allrequests plus the difference between the 1800 second timeout and the amount oftime the last restore request took before launching therestore.
Therefore, care should be taken when setting this parameter. Thevalue entered should not be too high or too low. It may be necessary to taketime to determine how long it will take these jobs to get queued by launchingthe restore first and then monitoring the activity monitor to approximate thevalue for MPX_RESTORE_DELAY.
MPX_RESTORE_DELAY is set in the NetBackupmaster's /usr/openv/netbackup/bp.conf file. NetBackup should be stoppedand started or bprd re-read for the parameter to takeeffect:
Note: MPX_RESTORE_DELAY can improveperformance when restoring from multiplexed backups produced by any of thedatabase agents.
Specifically, when bprd (the NetBackup request daemon) on themaster server receives the first stream of an MPX restore request, itwill trigger the MPX_RESTORE_DELAY timer to start counting the configured amountof time. At this point, bprd waits and watches for related MPX jobs from thesame client before starting the overall job. If another associated stream isreceived within the timeout period, it is added to the total job and the timeris reset to the MPX_RESTORE_DELAY period. Once the timeout is reached without anadditional stream being received by bprd, the timeout window closes and allassociated restore requests are sent to bptm and a tape is mounted. If anyassociated restore requests are received after this event, they are queued towait until the tape that is now "In Use" is returned to an idle state.
If MPX_RESTORE_DELAY is not set or not set high enough, NetBackup mayneed to mount and read the same tape multiple times to collect all of thenecessary header information necessary for the restore. Ideally, one wouldprefer that NetBackup only read a multiplexed tape once, collecting all of theheader information it needs with one pass of the tape, thus optimizing theamount of time it takes to restore.
For example:
IfMPX_RESTORE_DELAY is not set in the NetBackup master's bp.conf file, thedefault is 30 seconds. If you are trying to restore from an Oracle RecoveryManager (RMAN) backup that was backed up using four channels or four streams,and are using the same number of channels to restore, RMAN will pass NetBackup aspecific data request letting NetBackup know what information it needs to startand complete the restore. The first request is passed and received by NetBackupin 29 seconds causing MPX_RESTORE_DELAY to be reset, the next requests in 22seconds and again MPX_RESTORE_DELAY is reset to 30 seconds, the third request in25 seconds but the fourth request in 31 seconds. Since the fourth requested wasnot received with the restore delay, NetBackup launches three of the four jobsinstead of all four requests. Now instead of reading from the tape once, it willqueue up the fourth job request until the three requests are completed. Sinceall of the multiplexed images are on the same tape, NetBackup will mount,rewind, and read the entire tape again to collect the multiplexed images for thefourth job request.
It is worthwhile to note that in addition toNetBackup reading the tape twice, RMAN is still waiting for the necessary headerinformation it needs before it will even begin restoring.
If theMPX_RESTORE_DELAY was set high enough, (in this case 32 seconds) NetBackup wouldhave retrieved all four restore requests and collected all of the necessaryheader information with one pass of the tape and Oracle could start restoringthe database, improving performance drastically.
It should also be notedthat setting this value too high can also hinder performance.
Forinstance, If the MPX_RESTORE_DELAY is set to 1800 seconds and the longestrequest only took 600 seconds, NetBackup will wait the length of time for allrequests plus the difference between the 1800 second timeout and the amount oftime the last restore request took before launching therestore.
Therefore, care should be taken when setting this parameter. Thevalue entered should not be too high or too low. It may be necessary to taketime to determine how long it will take these jobs to get queued by launchingthe restore first and then monitoring the activity monitor to approximate thevalue for MPX_RESTORE_DELAY.
MPX_RESTORE_DELAY is set in the NetBackupmaster's /usr/openv/netbackup/bp.conf file. NetBackup should be stoppedand started or bprd re-read for the parameter to takeeffect:
bprdreq -rereadconfig
(tore-read the configuration file)
Note: MPX_RESTORE_DELAY can improveperformance when restoring from multiplexed backups produced by any of thedatabase agents.