Specify temporary tables in the DBSPACETEMP configuration parameter

The DBSPACETEMP configuration parameter specifies a list of dbspaces in which the database server places temporary tables and sort files by default. Some or all of the dbspaces that you list in this configuration parameter can be temporary dbspaces, which are reserved exclusively to store temporary tables and sort files.

If the database server inserts data into a temporary table through a SELECT INTO TEMP operation that creates the TEMP table, that temporary table uses round-robin distributed storage. Its fragments are created in the temporary dbspaces that are listed in the DBSPACETEMP configuration parameter or in the DBSPACETEMP environment variable. For example, the following query uses round-robin distributed storage:
SELECT col1 FROM tab1 
   INTO TEMP temptab1 WITH NO LOG;
The DBSPACETEMP configuration parameter lets the database administrator restrict which dbspaces the database server uses for temporary storage.
Important: The DBSPACETEMP configuration parameter is not set in the onconfig.std file. For best performance with temporary tables and sort files, use DBSPACETEMP to specify two or more dbspaces on separate disks.
  • If you work on a small system with a limited number of disks and cannot place temporary dbspaces on different disk drives, you might consider using 1 (or possibly 2) temporary dbspaces. This can reduce the logging that is associated with the temporary dbspaces.
  • If you have many disk drives, you can parallelize many operations (such as sorts, joins, and temporary tables) without having multiple temporary dbspaces. The number of temporary dbspaces that you have relates to how much you want to spread the I/O out. A good starting place is 4 temporary dbspaces. If you create too many small temporary dbspaces, you will not have enough space for nonparallel creation of large objects.

Copyright© 2020 HCL Technologies Limited