Siebel Performance Tuning Guide > Tuning Siebel EIM > Recommended Sequence for Implementing Siebel EIM Processes >

Separating Siebel EIM Processes by Operation


This topic is part of Recommended Sequence for Implementing Siebel EIM Processes.

Wherever possible, divide the Siebel EIM batches into insert-only transactions and update-only transactions. For example, assume that you are loading 50,000 records into an EIM table as part of a weekly process. 10,000 records represent new data and 40,000 records represent updates to existing data.

By default, Siebel EIM can determine which records are to be added and which records are to be updated in the base tables, however, Siebel EIM will need to perform additional processing (through SQL statements) to make these determinations. If you were able to divide the 50,000 records into different batch numbers based on the type of transaction, then you could avoid this additional processing.

In addition, the columns being processed as part of the update activity might be less than those for the insert activity (resulting in an additional performance increase). To illustrate this, the .IFBs in the preceding example can be coded with the following sections:

  • .IFB for mixed transactions:

    [Weekly Accounts]

    TYPE = IMPORT

    BATCH = 1-10

    TABLE = EIM_ACCOUNT

    ONLY BASE TABLES = S_ORG_EXT

    IGNORE BASE COLUMNS = S_ORG_EXT.?

  • .IFB for separate insert or update transactions:

    [Weekly Accounts - New]

    TYPE = IMPORT

    BATCH = 1-2

    TABLE = EIM_ACCOUNT

    ONLY BASE TABLES = S_ORG_EXT

    IGNORE BASE COLUMNS = S_ORG_EXT.?

    INSERT ROWS = TRUE

    UPDATE ROWS = FALSE

    [Weekly Accounts - Existing]

    TYPE = IMPORT

    BATCH = 3-10

    TABLE = EIM_ACCOUNT

    ONLY BASE TABLES = S_ORG_EXT

    ONLY BASE COLUMNS = S_ORG_EXT.NAME, S_ORG_EXT.LOC, S_ORG_EXT.?

    INSERT ROWS = FALSE

    UPDATE ROWS = TRUE

Siebel Performance Tuning Guide Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Legal Notices.