Running EIM Job
Using Trace Flags, SQL Trace Flags, and Error Flags:
successfully processed.
2. SQL Trace flags: Setting the SQL Trace Flags parameter to 8 creates a log of all SQL statements that make up the
EIM task. The lower values for SQL Debug Flags (1, 2, and 4) are used for logging at the ODBC level.
3. Trace flags: Trace flags contain logs of various EIM operations. Trace flags are bit-based. Available trace flags
include 1, 2, 4, 8, and 32. To activate multiple trace flags, set the Trace Flags parameter to the sum of
individual trace flag numbers. For example, to log trace flags 2 and 4, set the Trace Flags parameter to 6.
Recommended settings for error flags, SQL trace flags, and trace flags include the following:
To display errors and unused foreign keys:
o Start with the following setting combination. The setting Trace Flag=1 provides a summary (after each batch) of the elapsed time in EIM steps 10 and 11.
Error Flag 1
SQL Trace Flag 1
Trace Flag 1
To determine SQL performance: The following setting combination produces a log file with SQL statements including the elapsed time for each statement.
Error Flag 1
SQL Trace Flag 8
Trace Flag 3
To determine optimal batch size and monitor performance in a particular step: The following setting combination produces a log file showing the elapsed time for each EIM step.
Error Flag 0
SQL Trace Flag 0
Trace Flag 1
Optimizing EIM Performance:
1. Configuration Parameters Limit base tables and columns to be processed. Four EIM parameters can help improve performance by limiting the affected tables and columns:
2. Indexes:
S_OPTY
S_ADDR_ORG
S_OPTY_POSTN
S_CONTACT
S_POSTN_CON
S_DOCK_TXN_LOG
S_PARTY_RPT_RE
S_SRV_REQ
S_EVT_ACT
S_OPTY
S_ORG_EXT
3. Maintenance of EIM Tables:
4. Batch Processing Optimization for EIM:
5. Using Batch Ranges:
6. Run-Time Optimization for EIM:
No duplicate updates or deletes between runs.
No lock escalations on either EIM tables or target tables can be tolerated. Set LOCKLIST and MAXLOCKS as high as necessary to prevent this.
7. Transaction Logging:
Consider disabling the Enable Transaction Logging system preference in the Administration - Siebel Remote screen during the EIM run. Switching off transaction logging improves performance; however, this benefit must be balanced with the need for mobile users to re-extract afterward.
8. Parameter Settings Optimization for EIM:
Trace Flag Settings for Optimizing EIM:
9. Database Server Optimization for EIM:
Temporary workspace used by the database.
By following these suggestions, you should be able to improve the performance of the database server.
Using Trace Flags, SQL Trace Flags, and Error Flags:
- You can activate trace flags and error flags to log transactions. This topic covers the following types of flags:
successfully processed.
2. SQL Trace flags: Setting the SQL Trace Flags parameter to 8 creates a log of all SQL statements that make up the
EIM task. The lower values for SQL Debug Flags (1, 2, and 4) are used for logging at the ODBC level.
3. Trace flags: Trace flags contain logs of various EIM operations. Trace flags are bit-based. Available trace flags
include 1, 2, 4, 8, and 32. To activate multiple trace flags, set the Trace Flags parameter to the sum of
individual trace flag numbers. For example, to log trace flags 2 and 4, set the Trace Flags parameter to 6.
Recommended settings for error flags, SQL trace flags, and trace flags include the following:
To display errors and unused foreign keys:
o Start with the following setting combination. The setting Trace Flag=1 provides a summary (after each batch) of the elapsed time in EIM steps 10 and 11.
Error Flag 1
SQL Trace Flag 1
Trace Flag 1
To determine SQL performance: The following setting combination produces a log file with SQL statements including the elapsed time for each statement.
Error Flag 1
SQL Trace Flag 8
Trace Flag 3
To determine optimal batch size and monitor performance in a particular step: The following setting combination produces a log file showing the elapsed time for each EIM step.
Error Flag 0
SQL Trace Flag 0
Trace Flag 1
Optimizing EIM Performance:
- There are several ways you can improve EIM run-time performance. The best practices suggested in this section optimize EIM performance. This section discusses ways that you can optimize tables for EIM processing.
1. Configuration Parameters Limit base tables and columns to be processed. Four EIM parameters can help improve performance by limiting the affected tables and columns:
- ONLY BASE TABLES
- IGNORE BASE TABLES
- ONLY BASE COLUMNS
- IGNORE BASE COLUMNS
- The ONLY BASE COLUMNS parameter is critical for the performance of an EIM process updating a few columns in many rows.
2. Indexes:
- Verify that all indexes exist for the tables involved. In most implementations, the tables and corresponding indexes in the following list tend to be the most heavily used and should be separated across devices. In general, the following indexes should be on different physical devices from the tables on which they are created.
S_OPTY
S_ADDR_ORG
S_OPTY_POSTN
S_CONTACT
S_POSTN_CON
S_DOCK_TXN_LOG
S_PARTY_RPT_RE
S_SRV_REQ
S_EVT_ACT
S_OPTY
S_ORG_EXT
- For organizations that plan to use EIM extensively, you should put your key EIM tables (based on your unique business requirements) on different devices from the Siebel base tables, because all tables are accessed simultaneously during EIM operations. You can speed up deletes and merges involving S_ORG_EXT by adding an index to one or more columns.
3. Maintenance of EIM Tables:
- Perform regular table maintenance on EIM tables. Frequent insert or delete operations on EIM tables can cause fragmentation in the table. Ask your database administrator to detect and correct fragmentation in the EIM tables. Always delete batches from EIM tables upon completion. Leaving old batches in the EIM table wastes space and can adversely affect performance.
4. Batch Processing Optimization for EIM:
- This section suggests ways in which you can optimize EIM batch processing. Try using different batch sizes. Large batch sizes are often not efficient. For import and delete processes that use the DELETE EXACT parameter, use approximately 20,000 rows in a single batch. Limiting the Number of Records and Rows for Merge Processes You can improve performance by limiting the number of records in a batch.
5. Using Batch Ranges:
- Try using batch ranges (BATCH = x–y). This allows you to run with smaller batch sizes and avoid the startup overhead on each batch. The maximum number of batches that you can run in an EIM process is 1,000.
6. Run-Time Optimization for EIM:
- This section describes the ways you can optimize EIM performance at run time.
- Parallel Processing:
- Run independent EIM jobs in parallel.Two or more EIM processes can be started simultaneously by using the Siebel Server Manager. A special setup is not required to run EIM processes in parallel. For parallel processing, the following conditions must be met:
No duplicate updates or deletes between runs.
No lock escalations on either EIM tables or target tables can be tolerated. Set LOCKLIST and MAXLOCKS as high as necessary to prevent this.
7. Transaction Logging:
Consider disabling the Enable Transaction Logging system preference in the Administration - Siebel Remote screen during the EIM run. Switching off transaction logging improves performance; however, this benefit must be balanced with the need for mobile users to re-extract afterward.
8. Parameter Settings Optimization for EIM:
- This section discusses ways that you can optimize EIM performance through parameter settings.
- Ignore account synonyms. Set the USING SYNONYMS parameter to FALSE in the .IFB file to indicate that account synonyms can be ignored during processing. This logical operator indicates to EIM that account synonyms do not require processing during import, thus reducing the amount of processing. Do not set the USING SYNONYMS parameter to FALSE if you plan to use multiple addresses for accounts. Otherwise, EIM will not attach addresses to the appropriate accounts. You can use EIM_ACCOUNT to import accounts with multiple addresses and then specify the primary address for an account by setting ACC_PR_ADDR to Y.
Trace Flag Settings for Optimizing EIM:
- Generate a task log to identify slow-running steps and queries by using Trace Flags. To use Trace Flags, set Error Flags=1, Trace Flags=1, and SQL Trace Flags=8. Rerun the batch and use the resulting task log to determine which steps and queries are running especially slowly.
9. Database Server Optimization for EIM:
- The overall performance of EIM is largely dependent on the overall performance of the database server. To achieve optimal database server performance, it is critical that the tables and indexes in the database be arranged across available disk devices in a manner that evenly distributes the processing load.
- The mechanism for distributing database objects varies by RDBMS, depending on the manner in which storage space is allocated. Most databases have the ability to assign a given object to be created on a specific disk.
- A redundant array of independent disks (or RAID) can provide large amounts of I/O throughput and capacity, while appearing to the operating system and RDBMS as a single large disk (or multiple disks, as desired, for manageability).
- The use of RAID can greatly simplify the database layout process by providing an abstraction layer above the physical disks while achieving high performance. Regardless of the RDBMS you implement and your chosen disk arrangement, be sure that you properly distribute the following types of database objects:
Temporary workspace used by the database.
By following these suggestions, you should be able to improve the performance of the database server.