Configuración del origen de datos ODBC (Linux)

Para que las fuentes de datos ODBC funcionen con Essbase en Linux, debe configurar principalmente odbc.ini en el dominio del servidor de Essbase.

Requisitos

Antes de empezar, anote la ubicación de estos archivos en el dominio del servidor de Essbase:

  • Solo para Linux, odbc.ini: en Essbase 21c, odbc.ini se encuentra en:

    <Domain Root>/<Domain Name>/config/fmwconfig/essconfig/core
  • Bibliotecas de controladores ODBC: ubicadas en

    <Essbase Product Home>/modules/

Si está configurando Teradata como origen, haga lo siguiente:

  1. Descargue el cliente de herramientas y utilidades de Teradata desde https://downloads.teradata.com/

  2. Instale el cliente Teradata en el equipo del servidor de Essbase.

Configuración de la fuente de datos ODBC

Para configurar su fuente de datos ODBC, debe comenzar editando odbc.ini (o .odbc.ini, si está oculto). Este es el archivo de información de configuración del origen de datos ODBC ubicado en el dominio del servidor de Essbase.

  1. Abra odbc.ini en un editor de texto.

  2. En la sección con etiquetas

    [ODBC Data Sources]

    agregue o identifique el origen con la siguiente sintaxis:

    <DSN name>=<Driver name>

    donde

    • Nombre DSN = nombre que elija para identificar la conexión ODBC al origen de datos
    • Nombre del controlador = Nombre del controlador ODBC que se utilizará para esta conexión

    Por ejemplo, para agregar un origen DB2, agregue:

    [ODBC Data Sources]
    TBC_DB2=Oracle 8.0 DB2 Wire Protocol

    En esta versión, Oracle Database y todas las demás versiones de RDBMS incluyen las versiones de controlador 8.0.

    Las siguientes entradas de ejemplo incluyen DB2, SQL Server, MySQL, Oracle Database y Teradata. Para Teradata, consulte las dos últimas líneas (la sintaxis varía de las otras fuentes).

    [ODBC Data Sources]
    TBC_DB2=Oracle 8.0 DB2 Wire Protocol
    TBC_SQL=Oracle 8.0 SQL Server Wire Protocol
    TBC_MYSQL=Oracle 8.0 MySQL Wire Protocol
    TBC_ORA=Oracle 8.0 Oracle Wire Protocol
    TBC_ORA_DBAAS=Oracle 8.0 Oracle Wire Protocol
    TBC_ORA_ADW=Oracle 8.0 Oracle Wire Protocol
    Teradata=tdataodbc_sb64.so
    $TELAPI$10.xx.xxx.211=tdataodbc_sb64.so
  3. Para cada nombre DSN que haya agregado en la sección [ODBC Data Sources], agregue una sección que especifique la ruta del controlador (necesaria), la descripción (opcional) y los detalles del host (necesarios). El siguiente ejemplo incluye secciones para varios orígenes.

    [TBC_DB2]
    #Example for DB2
    Driver=Ardb228.so
    Description=Oracle 8.0 DB2 Wire Protocol Driver
    Database=TBC
    IpAddress=myhost.example.com
    TcpPort=50000
    
    [TBC_SQL]
    #Example for SQL Server
    Driver=ARsqls28.so
    Description=Oracle 8.0 SQL Server Wire Protocol
    HostName=myhost.example.com
    PortNumber=1433
    Database=TBC
    EnableQuotedIdentifiers=1
    
    [TBC_MYSQL]
    #Example for MySQL
    Driver=ARmysql28.so
    Description=Oracle 8.0 MySQL Wire Protocol
    Database=tbc
    HostName=myhost.example.com
    PortNumber=3306
    
    [TBC_ORA]
    #Example for standalone Oracle Database
    Driver=ARora28.so
    Description=Oracle 8.0 Oracle Wire Protocol
    EnableNcharSupport=1
    EncryptionLevel=1
    DataIntegrityLevel=1
    PortNumber=1521
    SID=orcl
    HostName=myhost.example.com
    
    [TBC_ORA_DBAAS]
    #Example for Oracle DBaaS
    Driver=ARora28.so
    Description=Oracle 8.0 Oracle Wire Protocol
    DataIntegrityLevel=1
    EncryptionLevel=1
    EncryptionTypes=AES256
    DataIntegrityTypes=SHA1
    HostName=192.0.2.20
    PortNumber=1521
    EnableNcharSupport=1
    ServiceName=ORCL.esscs.mydb.myhost.example.com
    
    [TBC_ORA_ADW]
    #Example for Oracle Database with TLS/SSL security
    Driver=ARora28.so
    Description=Oracle 8.0 Oracle Wire Protocol
    EnableNcharSupport=1
    EncryptionLevel=1
    DataIntegrityLevel=1
    EncryptionMethod=1
    AuthenticationMethod=1
    CryptoProtocolVersion=TLSv1.2,TLSv1.1,TLSv1
    ValidateServerCertificate=1
    TNSNamesFile=/scratch/username/oracle_home/network/admin/tbc_ora_adw/tnsnames.ora
    ServerName=TBC_ORA_ADW
    Truststore=/scratch/username/oracle_home/network/admin/tbc_ora_adw/cwallet.sso
    Keystore=/scratch/username/oracle_home/network/admin/tbc_ora_adw/cwallet.sso
    
    [Teradata]
    Driver=/opt/teradata/client/16.20/lib64/tdataodbc_sb64.so
    Description=NCR 3600 running Teradata V2R6.2
    DBCName=192.xx.xx.110
    astUser=
    Username=xxxxxx
    Password=xxxxxx
    Database=TBC
    DefaultDatabase=TBC
    NoScan=no
    MechanismName=TD2
    
    [$TELAPI$192.0.2.110]
    Driver=/opt/teradata/client/16.20/lib64/tdataodbc_sb64.so
    Description=NCR 3600 running Teradata V2R6.2
    DBCName=192.0.2.110
    astUser=
    Username=xxxxxx
    Password=xxxxxx
    Database=TBC
    DefaultDatabase=TBC
    NoScan=no
    MechanismName=TD2

    Note:

    El ejemplo de TBC_ORA_ADW está configurado para Autonomous AI Lakehouse con la seguridad de TLS/SSL activada. Para cualquier configuración de TLS/SSL (incluido Autonomous AI Lakehouse), debe proporcionar la ruta al almacén de claves y la cartera como parte de la configuración. El almacén de claves y la cartera (y el archivo de configuración de nombres TNS) se encuentran en <Oracle Home>/network/admin. Si utiliza Autonomous AI Lakehouse, debe descargar la cartera de Autonomous AI Lakehouse a <Oracle Home>/network/admin en el servidor de Essbase.

    Note:

    Para Teradata, DBCName no es lo mismo que DBName utilizado en cadenas de conexión.

    Note:

    Para SQL Server, asegúrese de activar los identificadores entre comillas como se muestra en el ejemplo.

Sólo Teradata - Definir Variables de Entorno

Si está configurando Teradata como origen, también debe editar el archivo de configuración del servidor de Essbase, <Domain Root>/<Domain Name>/config/fmwconfig/essconfig/essbase/essbase.cfg.

  1. Vaya a essbase.cfg y ábralo en un editor de texto.

  2. Agregue variables LD_LIBRARY_PATH para especificar la loación de bibliotecas de cliente Teradata:

    env:LD_LIBRARY_PATH /opt/teradata/client/16.20/bin
    env:LD_LIBRARY_PATH /opt/teradata/client/16.20/lib64
    env:LD_LIBRARY_PATH /opt/teradata/client/16.20/tbuild
    env:LD_LIBRARY_PATH /opt/teradata/client/16.20/msg
    env:LD_LIBRARY_PATH /opt/teradata/client/16.20/tbuild/tptapi
  3. Agregue la siguiente línea al final de essbase.cfg para configurar la autenticación:

    env:LD_PRELOAD /usr/lib64/libgssapi_krb5.so:/usr/lib64/libkrb5.so:/usr/lib64/libk5crypto.so:/usr/lib64/libkrb5support.so
  4. Guarde essbase.cfg.

  5. Detenga y reinicie el servidor de Essbase.

    1. Navegue al directorio de herramientas de dominio, <Domain Root>/<Domain Name>/esstools/bin.

    2. Detenga y reinicie los servicios de Essbase ejecutando ./stop.sh y ./start.sh, respectivamente.

Sólo Teradata - Configurar odbcinst.ini

Si está configurando Teradata como origen, también debe editar el archivo odbcinst.ini con información sobre el controlador ODBC para Teradata.

  1. Vaya a <Oracle Home>/essbase/modules/oracle.essbase.datadirect.odbc/8.0.2/ y abra odbcinst.ini en un editor de texto.

  2. Agregue información sobre el controlador ODBC de Teradata:

    Teradata=Installed
    [Teradata]
    Driver=/opt/teradata/client/16.20/odbc_64/lib/tdataodbc_sb64.so
    APILevel=CORE
    ConnectFunctions=YYY
    DriverODBCVer=3.51
    SQLLevel=1
  3. Guarde odbcinst.ini.