DUAL BEFORE JOURNAL in Teradata

DUAL BEFORE JOURNAL is similar to the BEFORE JOURNAL but it will be used to store the record twice. It gives this option to the users to store multiple copies in case data/hardware failures.

Example:
CREATE TABLE forgetcode.tbl_name,
DUAL BEFORE JOURNAL
(
field1 INTEGER,
field2 INTEGER)
UNIQUE PRIMARY INDEX(field1);


If you use FALLBACK option with DUAL JOURNAL, then again the records will be stored for each record. That means, if you use DUAL JOURNAL which affects two rows, then because of FALLBACK the total records stored will be 4.
This is because the table is FALLBACK protected, so the journals are also FALLBACK protected. Therefore, because the BEFORE DUAL JOURNAL is DUAL each change to a row is stored twice, and two more times because both DUAL entries are also FALLBACK protected.
As you soon realize, FALLBACK with DUAL journaling can be very expensive in terms of disk space, even more so than FALLBACK by itself.

Example:
CREATE TABLE forgetcode.tbl_name, FALLBACK
DUAL BEFORE JOURNAL
(
field1 INTEGER,
field2 INTEGER)
UNIQUE PRIMARY INDEX(field1);