Configuring for the Bulk Load for Oracle Database

The bulk load service provides a way to mass provision the inventory database with existing parties and items. A configuration file has been provided which needs to be configured with appropriate values before the bulk load is initiated.

Before you beginThe data to load must be converted as CSV files if they are not already in that format. The Oracle database is only able to read CSV files and treats these as a table. Inventory then applies the stored procedures to create internal items, item characteristics, item relationships, orders, parties, characteristics, relationships, and orders. For details, see CSV File and JSON Config File Samples.
    Procedure
  1. If you have not already, create CSV files containing items, item characteristics, orders, item relationships, parties, and party characteristics, and put these files in a directory on the Oracle database server so that Oracle can access them.
  2. Define the CSV file directory accessible by the Oracle database by running the following command:
    create or replace directory PSI_BULK_DIR as ‘[existing directory absolute path on oracle server]’;
    grant read, write on directory PSI_BULK_DIR to [inventory oracle user];
    
    Both the directory and file need to be readable and writable by the Oracle process user.
  3. Create a bulk load JSON configuration file (bulkConfig.json) on the TIBCO Product and Service Inventory server machine. For details, see CSV File and JSON Config File Samples. This file can be saved in the $PSI_HOME/config/ file.
  4. Configure the following parameters in the bulk load JSON configuration file:
    Parameter Description
    oracleDirectoryName

    This is the directory name for the Oracle server. The value must be "PSI_BULK_DIR". The data files containing the data to be loaded must be placed in this directory which must be created beforehand in the Oracle server.

    timeStampFormat

    This is the timestamp format for the date/time columns that are used in the CSV exported data. Timestamps here follow the Oracle notation. It is possible to customize the date/time format per entity for the date/time type of columns in the source data. One possible timestamp format is: "DD-MON-YYYY HH12.MI.SS PM". For example, "01-JAN-2014 05.40.12 PM".

    commitSize

    This is the frequency of commits when performing creations.

    entities

    This is the list of entities to load. Each entity to load is a configuration object containing the following parameters:

    • type - This parameter defines the type of entity to load. It can be any one of the following types: PARTY, PARTY_CHARACTERISTIC, ITEM, ITEM_CHARACTERISTIC, ITEM_RELATOINSHIP, ITEM_ORDER, ITEM_ORDER_COMMENT
    • dataSourceName - This is the name of the CSV file relative to the inside of the PSI_BULK_DIR directory.
    • dataSourceColumnList - This parameter is for the names of the columns in the CSV file. The possible values depend on the type of entity to load. Some columns are mandatory and some are optional. For details, see Mandatory and Optional Columns.

  5. Configure the path to the bulk load JSON config file in the ConfigValues_PSIService.json file. The value to configure is bulk.configuration.