Instructs Essbase to load data using a single thread per processing stage, or to use the thread values specified in the DLTHREADSPREPARE and DLTHREADSWRITE configuration settings. By working with these three configuration settings you may be able to test and improve data load performance.
You can specify DLSINGLETHREADPERSTAGE for individual databases, all databases within an application, or for all applications and databases on the server.
DLSINGLETHREADPERSTAGE [appname [dbname]] TRUE | FALSE
appname—Application name. Optional parameter for applying the TRUE or FALSE setting to one or all databases within the application. If you specify a value for appname and do not specify a value for dbname, the setting applies to all databases in the specified application. If you do not specify an application, you cannot specify a database and the setting applies to all applications and databases on the Essbase Server.
dbname—Database name. Optional parameter for applying the TRUE or FALSE setting to the specified database within the specified application. If you do not specify a value for dbname, the setting applies to all databases within the specified application. If appname is not specified, you cannot specify dbname.
TRUE—Tells Essbase not to use the values in the DLTHREADSPREPARE and DLTHREADSWRITE configuration settings when it performs a data load. Consequently, it performs all data load processes in single-thread stages.
FALSE—Tells Essbase to use the thread values specified in the configuration settings DLTHREADSPREPARE and DLTHREADSWRITE as the numbers of threads to use in the preparation and write stages of data load processing. The default value is FALSE.
The DLTHREADSPREPARE, DLTHREADSWRITE, and DLSINGLETHREADPERSTAGE settings are related to parallel data load processing. Data load processing is divided up into stages that are performed by Essbase using separate processing threads for each stage. By default, a single thread is used for each stage. Taking advantage of the multithreading capabilities of the server machine, the separate single-thread stages can be performed in parallel.
To improve data load performance by maximizing use of processor resource for your situation, you can use these settings to enable additional multiple-thread processing within the preparation and write stages of data load processing. For more information about parallel thread processing in data loads, see the "Optimizing Data Loads" chapter in the Oracle Essbase Database Administrator's Guide.
While testing thread values for the DLTHREADSPREPARE and DLTHREADSWRITE configuration settings, you can use the DLSINGLETHREADPERSTAGE setting to quickly revert to using a single thread per stage.
Enabling use of multiple threads during the preparation and write stages may produce little if any benefit on a single-processor machine.
Optimizing factors such as the content and organization of the data source can enhance performance more than increasing the numbers of threads to be used. See the "Optimizing Data Loads" chapter in the Oracle Essbase Database Administrator's Guide.
DLSINGLETHREADPERSTAGE Sample Basic TRUE DLTHREADSPREPARE Sample Basic 3 DLTHREADSWRITE Sample Basic 4
Essbase ignores any values specified by DLTHREADSPREPARE and DLTHREADSWRITE while loading data to the Sample Basic application and database. As a result, Essbase uses single threads in each stage.
DLSINGLETHREADPERSTAGE FALSE DLTHREADSPREPARE Sample Basic 3 DLTHREADSWRITE Sample Basic 4
Based on the first setting, Essbase uses the number of threads specified by the DLTHREADSPREPARE and DLTHREADSWRITE configuration settings for all data bases on the server. The settings on the second and third lines specify use of 3 processing threads for the preparation stages and 4 processing threads for the write stages when loading the Sample Basic application and database. Assuming that there are no further related settings, the default value 1 (one) is assumed for all other applications and databases on the server.
DLSINGLETHREADPERSTAGE Sample FALSE DLTHREADSWRITE Sample Basic 3 DLTHREADSWRITE Sample Interntl 4
In this example Essbase uses the number of threads specified by the DLTHREADSPREPARE and DLTHREADSWRITE configuration settings for all databases within the application named Sample. To enable usage of different numbers of threads for the write stage for the two different databases, two DLTHREADSWRITE settings are included with different thread values for each specific database. Because no DLTHREADSPREPARE setting is specified, the preparation stage is single-threaded.