19.1.5 File sizes required for the execution of the database copy utility (pdcopy)

The following table shows the formulas for determining the file sizes required for the execution of the database copy utility (pdcopy):

File typeFormula (bytes)
Backup file#
Full backup file#
a
[Figure]{28 x ci + (di + 28) x (ei + qi)}
i = 1
+ 88 x a + 220 x b
Differential backup file#w x size of full backup file
Differential backup management file(1 + j + m) x 32,768
Log point information file1,024
#: If the backup file is larger than 2 GB, take the following action:
  • Create multiple partitions, each of which is no larger than 2 GB, and specify multiple backup files.
a: Number of RDAREAs being backed up
b: Total number of HiRDB files in RDAREA being backed up
ci: Number of unused pages in RDAREA being backed up
Assume 0 if you build the system before estimating.
  • User RDAREAs
    Determine after executing RDAREA unit status release (physical release) with the database release utility (pddbst command). The value is the resulting total number of pages - number of used pages of the RDAREA page information.
  • User LOB RDAREAs
    Determine after executing RDAREA unit status release (physical release) with the database release utility (pddbst command). The value is the resulting Total number of segments - number of used segments of the RDAREA segment information.
di: Page length of RDAREA being backed up
ei: Number of pages used in RDAREA being backed up
Assume (number of segments in the RDAREAs being backed up x segment size) if you build the system before estimating.
  • User RDAREAs
    Determine after executing RDAREA unit status release (physical release) with the database release utility (pddbst command). The value is the resulting total number of pages - number of used pages of the RDAREA page information.
  • User LOB RDAREAs
    Determine after executing RDAREA unit status release (physical release) with the database release utility (pddbst command). The value is the resulting total number of segments - number of used segments of the RDAREA segment information.
g: Length of a backup file name that is specified in the -b option (bytes)
If multiple backup files are specified, this is the total length of the specified file names.
h: Number of backup files specified in the -b option
j: [Figure](512 + 128 x a) [Figure] 32,700[Figure] k: Number of consecutive differential backup operations
m: [Figure]{[Figure](256 + 128 x a + g + 8 x h} [Figure] 256 [Figure] x k} [Figure] 100[Figure]
qi: Number of directory pages in the RDAREAs being backed up
  • User RDAREAs
    6 x (ti + 1) + 2 x[Figure](20,480 [Figure] di) [Figure] + {[Figure](si[Figure] ui)[Figure] + [Figure](si[Figure] vi) [Figure] + 2 x ti}
  • User LOB RDAREA
    7 + 3 x (ti - 1) + {[Figure](si[Figure] 64,000)[Figure] + ti} x 96
ri: Segment size of RDAREAs being backed up
si: Total number of segments in RDAREAs being backed up
This is the total number of segments for HiRDB files specified by the database initialization utility (pdinit command) or the create rdarea statement of the database configuration utility (pdmod command). If automatic extension is specified for the RDAREAs, add the number of extended segments.
ti: Number of HiRDB files of RDAREAs being backed up
ui: [Figure]{di - 20} [Figure]{([Figure] ri[Figure] 32 [Figure] x 8) + 56} [Figure]
vi: [Figure](125 x di) [Figure](16 x ui) [Figure] x ui
w: Percentage of all pages that are being updated on the RDAREAs being backed up
Determine w from the following formula (user RDAREA):
w = {
a
[Figure]Xi[Figure]
i=1
a
[Figure]ei} x 1.2
i=1
Xi: Number of updated pages in RDAREAs being backed up
The number of updated pages refers to the number of pages that have been updated since the last time a differential backup was made. Calculate the number of updated pages for the tables and indexes stored in the RDAREAs being backed up based on the type of update SQL statements and the number of updated items, subject to the following conditions:
  • INSERT
    Based on 16.1 Determining the size of a user RDAREA, calculate the number of storage pages from the number of inserts, and add it to Xi. Calculate PCTFREE as 0.
  • DELETE
    Increase the value of Xi based on the following conditions:
    ConditionValue added to Xi
    TablesRow length < diDeleted rows are distributed over the entire tableMIN(number of deleted rows, number of table pages used)
    Deleted rows are concentrated on a few pagesMIN(number of deleted rows [Figure] number of rows that can be stored on 1 page, number of table pages used)
    Row length > diMIN(number of deleted rows x number of pages required to store 1 row, number of table pages used)
    IndexesUpdated keys are distributed over the entire indexMIN(number of update keys + [Figure], number of index pages used)
    Updated keys are concentrated on a few pagesMIN(number of update keys [Figure] number of keys that can be stored on 1 page + [Figure], number of index pages used)
    [Figure]: Number of duplicate keys in excess of 200
  • UPDATE
    Calculate the value to add to Xi based on the following conditions:
    ConditionValue added to Xi
    TablesUpdate column length < diUpdated rows are distributed over the entire tableMIN(number of updated rows, number of table pages used)
    Updated rows are concentrated on a few pagesMIN(number of updated rows [Figure] number of rows that can be stored on 1 page, number of table pages used)
    Update column length > diMIN(number of updated rows x number of pages required to store updated columns, number of table pages used)
    IndexesUpdated keys are distributed over the entire indexMIN(number of update keys x 2 + [Figure] x 2, number of index pages used)
    Updated keys are concentrated on a few pagesMIN(number of update keys x 2 [Figure] number of keys that can be stored on 1 page + [Figure] x 2, number of index pages used)
    [Figure]: Number of duplicate keys in excess of 200
  • After regenerating
    Calculate [Figure] as the regenerated tables or indexes that are stored on RDAREAs being backed up.
    [Figure]= number of used pages of regenerated tables or indexes + number of used segments of regenerated tables or indexes [Figure] ui + number of used segments of regenerated tables or indexes [Figure] vi
    Calculate [Figure] only for regenerated tables and indexes, and add the value to Xi.
  • PURGE
    Calculate [Figure] as the tables or indexes on which PURGE was performed that are stored in RDAREAs being backed up.
    [Figure]= number of used segments of purged tables or indexes [Figure] ui + number of used segments of purged tables or indexes [Figure] vi
    Calculate [Figure] only for regenerated tables and indexes, and add the value to Xi.