Number and Size of Backup Sets: Advanced Algorithm
The advanced algorithm determines the number and size of backup sets by using the same factors described in "Number and Size of Backup Sets: Basic Algorithm". The difference is that the advanced algorithm is also influenced by the DISKRATIO parameter. If DISKRATIO=n, then each backup set must read data from at least n disk drives. RMAN uses file location information obtained from the database server to determine which datafiles are on which disk drives.
If you set FILESPERSET but not DISKRATIO, then DISKRATIO defaults to the same value as FILESPERSET. If you specify neither parameter, then DISKRATIO defaults to 4. RMAN compares the DISKRATIO value to the actual number of devices involved in the backup and uses the lowest value. For example, if DISKRATIO=4 and the datafiles are located on three disks, then RMAN attempts to distribute the datafiles into three backup sets.
Assume that the database contains 50 datafiles spread across 6 disks, and the operating system is able to deliver this disk contention information to the server. You configure a single sbt channel and then run the following command:
BACKUP DATABASE;
RMAN uses the advanced algorithm. The basic algorithm indicates that because you did not specify FILESPERSET or MAXSETSIZE, RMAN should produce a single backup set. The advanced algorithm also looks at DISKRATIO, which in this case defaults to 4. Hence, each backup set must contain datafiles from at least four disks. Because RMAN is only producing one backup set containing all datafiles from all six disks, DISKRATIO makes no difference.
Assume that you change the backup command as follows:
BACKUP DATABASE FILESPERSET 5;
In this case, the basic algorithm produces ten backup sets. The advanced algorithm also factors in DISKRATIO, which here defaults to 5 (the same value as FILESPERSET). Hence, the advanced algorithm dictates that each of the 10 backup sets must contain datafiles from at least 5 of the 6 disks.
Note that the advanced algorithm also recognizes node affinity. Node affinity is only used when you allocate channels on different nodes in a Real Application Clusters configuration, and RMAN detects that it is more efficient to read specific datafiles from one node than another.
这个是全文,请RMAN大牛指点一二
|