Use the following formula to prepare the preliminary estimate for one target table, assuming no fallback protection, no journals, and no NUSIs:
PERM = (using data size + 38) * (number of rows processed) * number of apply conditions satisfied) * (number of Teradata SQL statements within the applied DML)
For example, in the following Teradata MultiLoad job the preliminary estimate would be 84 * (number of rows processed):
.LOGTABLE LOGTABLE001; .LOGON TDP0/xxxxx,xxxxx ; .BEGIN MLOAD TABLES A; .LAYOUT TRANSACTION; .FILLER TRANSCODE * CHAR(4); .FIELD PIDX * CHAR(2); .FIELD VAL * CHAR(2); .DML LABEL DEL; DELETE FROM A WHERE UPI = :PIDX AND VAL = :VAL (SMALLINT); .DML LABEL INS; INSERT INTO A (UPI, VAL) VALUES (:PIDX, :VAL (SMALLINT)); .IMPORT INFILE DAT01 LAYOUT TRANSACTION APPLY DEL APPLY INS; .END MLOAD; .LOGOFF;
where
- using data size = 4 (2 for FIELD PIDX and FIELD VAL. FILLER fields are not counted.)
- number of apply conditions satisfied = 2, since the APPLY statements APPLY and APPLY INS are unconditional.
- number of Teradata SQL statements within the applied DML = 1, since the DML LABEL DEL and DML LABEL INS commands have one SQL statement each.