Running a direct path load v15

During a direct path load, EDB*Loader writes the data directly to the database pages, which is then synchronized to disk. The insert processing associated with a conventional path load is bypassed, resulting in a performance improvement.

Bypassing insert processing reduces the types of constraints on the target table. The following types of constraints are permitted on the target table of a direct path load:

  • Primary key
  • Not null constraints
  • Indexes (unique or non-unique)

The following are restrictions on the target table of a direct path load:

  • Triggers aren't permitted.
  • Check constraints aren't permitted.
  • Foreign key constraints on the target table referencing another table aren't permitted.
  • Foreign key constraints on other tables referencing the target table aren't permitted.
  • You must not partition the table.
  • Rules can exist on the target table, but they aren't executed.
Note

Currently, a direct path load in EDB*Loader is more restrictive than in Oracle SQL*Loader. The preceding restrictions don't apply to Oracle SQL*Loader in most cases. The following restrictions apply to a control file used in a direct path load:

  • Multiple table loads aren't supported. You can specify only one INTO TABLE clause in the control file.
  • You can't use SQL expressions in the data field definitions of the INTO TABLE clause.
  • The FREEZE option isn't supported for direct path loading.

To run a direct path load, add the DIRECT=TRUE option:

$ /usr/edb/as14/bin/edbldr -d edb USERID=enterprisedb/password
CONTROL=emp.ctl DIRECT=TRUE
EDB*Loader: Copyright (c) 2007-2021, EnterpriseDB Corporation.

Successfully loaded (4) records