Configuring Teradata as a Data Source

  To configure Teradata as a data source:

  1. Install Teradata drivers, which you must obtain from Teradata.

    • Oracle Essbase Studio uses JDBC drivers. The JDBC Teradata driver must be installed on the computer on which Essbase Studio Server runs.

      Essbase Studio uses the JDBC Teradata driver to deploy cubes in streaming mode.

      To deploy cubes in non-streaming mode, the ODBC Teradata driver must be installed on the computer on which Essbase Server runs.

    • Essbase uses ODBC drivers. The ODBC Teradata driver must be installed on the computer on which Essbase Server runs.

  2. Stop Essbase from the Windows Services panel using the Oracle Process Manager and Notification Server (OPMN) service: EPM_epmsystem1.

  3. Backup the OPMN configuration file (opmn.xml).

    For example:

    C:\Oracle\Middleware\user_projects\epmsystem1\config\OPMN\opmn\opmn.xml
  4. Open the opmn.xml file in a text editor.

  5. To properly load the Teradata drivers, the opmn.xml file must include a statement that points to the location of the Teradata libraries.

    1. Locate the following statement in the opmn.xml file:

      <variable id="ESS_CSS_JVM_OPTION7" value="-Djava.util.logging.config.class=oracle.core.ojdl.logging.LoggingConfiguration"/>
    2. After this statement, add a statement similar to the following one:

      <variable append="true" id="PATH" value="C:\Program Files\Teradata\Client\14.00\Shared ICU Libraries for Teradata\lib"/>
  6. When using Teradata data sources with Essbase, and using OPMN to monitor and control the Essbase Agent process, you must update the opmn.xml file with variables for the operating system you are using.

    Note:

    The absolute path value cannot contain spaces. The examples of absolute path values are based on a 64-bit machine configuration.

    64-bit Windows

    Add these variables:

    • TWB_ROOT: Teradata root

    • PATH: Teradata shared libraries

    • PATH: Teradata client DLL libraries

    • PATH: Teradata Call-Level Interface Version 2 routines

    • PATH: Teradata message DLL libraries

    64-bit Windows example:

    <variable id="TWB_ROOT" value="C:\PROGRA~1\Teradata\Client\14.00"/>
    <variable append="true" id="PATH" value="C:\PROGRA~1\Teradata\Client\14.00\SHARED~1\lib"/>
    <variable append="true" id="PATH" value="C:\PROGRA~1\Teradata\Client\14.00\TERADA~1\bin64"/>
    <variable append="true" id="PATH" value="C:\PROGRA~1\Teradata\Client\14.00\CLIv2"/>
    <variable append="true" id="PATH" value="C:\PROGRA~1\Teradata\Client\14.00\TERADA~1\msg64"/>

    64-bit AIX

    Add these variables:

    • LIBPATH: Teradata ODBC libraries

    • LIBPATH: Teradata shared libraries

    • LIBPATH: ODBC components needed to load Teradata ODBC drivers

    • LIBPATH: Teradata client libraries

    • COPERR: Directory where the errmsg.txt file resides

    • NLSPATH: Teradata message libraries

    64-bit AIX example:

    <variable append="true" id="LIBPATH" value="/opt/teradata/client/ODBC_64/lib"/>
    <variable append="true" id="LIBPATH" value="/opt/teradata/client/13.10/tdicu/lib64"/>
    <variable append="true" id="LIBPATH" value="/usr/odbc/lib:/usr/odbc/drivers"/>
    <variable append="true" id="LIBPATH" value="/usr/lib:/usr/teragss/aix-power/client/lib"/>
    <variable id=" COPERR" value="/usr/libperion/essbase"/>
    <variable id="NLSPATH" value="/opt/teradata/client/13.10/odbc_32/msg/%N"/>
    <variable append="true" id="NLSPATH" value="/usr/lib/nls/msg/%L/%N"/>
    <variable append="true" id="NLSPATH" value="/usr/lib/nls/msg/%L/%N.cat"/>

    64-bit LINUX

    Add these variables:

    • TWB_ROOT: Teradata root

    • TD_ICU_DATA: Teradata shared libraries

    • NLSPATH: Teradata ODBC message libraries

    • COPERR: Directory where the errmsg.txt file resides

    • COPLIB: Directory where the libcliv2.so library file resides

    • LD_LIBRARY_PATH: Teradata libraries

    • PATH: Teradata client directories

    Note:

    The errmsg.txt and libcliv2.so files typically reside in the same directory. Therefore, the value for the COPERR and COPLIB variables is typically identical.

    64-bit LINUX example:

    <variable id="TWB_ROOT" value="/opt/teradata/client/13.10/tbuild"/>
    <variable id="TD_ICU_DATA" value="</opt/teradata/client/13.10/tdicu/lib64>"/>
    <variable id="NLSPATH" value="</opt/teradata/client/13.10/odbc_64/msg/%N >"/>
    <variable append=true id=NLSPATH value=/opt/teradata/client/13.10/tbuild/msg64/%N/>
    <variable id="COPERR" value="/usr/lib64"/>
    <variable id="COPLIB" value="/usr/lib64"/>
    <variable append=true id=LD_LIBRARY_PATH value=/opt/teradata/client/13.10/tbuild/lib64/>
    <variable append=true id=LD_LIBRARY_PATH value=/usr/lib64/>
    <variable append=true id=PATH value=/opt/teradata/client/13.10/tbuild/bin/>
    <variable append=true id=PATH value=/opt/teradata/client/13.10/tbuild/lib64/>
  7. Save the opmn.xml file.

  8. Start Essbase from the Windows Services panel using the Oracle Process Manager and Notification Server service (EPM_epmsystem1).

  9. Verify the following:

    • Essbase: Use the Data Prep Editor in Administration Services Console to connect to a Teradata database using a DNS.

    • Oracle Essbase Studio: Perform a cube deployment in non-streaming mode, which uses the Teradata ODBC driver.