obiee 10g teradata Solaris deployment

Posted by user554629 on Oracle Blogs See other posts from Oracle Blogs or by user554629
Published on Mon, 4 Jun 2012 17:59:30 +0000 Indexed on 2012/06/04 22:44 UTC
Read the original article Hit count: 374

Filed under:

I have 3-4 years worth of notes on proper Teradata deployment across multiple operating systems. 


 The topic that is too large to cover succinctly in a blog entry.   I'm trying something new:  document a specific situation, consolidate the facts, document diagnostic procedures and then clone the structure to cover other obiee deployments (11g and other operating systems).


Until the icon below is removed, this blog entry may be revised frequently. 
No construction between June 6th through June 25th.


Work In ProgressGetting started


obiee 10g certification:  pg 24-25 Teradata V2R5.1.x - V2R6.2, Client 13.10, certified 10.1.3.4.1
obiee 10g documentation: Deployment Guide, Server Administration, Install/Config Guide
obiee overview:

teradata connectivity downloads:
( requires registration )
solaris odbc drivers:
sparc 13.10
Choose 13.10.00.04  ( ReadMe ) 
sparc 14.00:
probably would work, but not certified by Oracle on 10g


I assume you have obiee 10.1.3.4.1 installed; 10.1.3.4.2 would be a better choice.


Teradata odbc install



  • requires root for Solaris pkgadd

  • Only 1 version of Teradata odbc can be installed.
    symbolic links to the current version are created in /usr/lib at install


obiee implementation background



  • database access has two types of implementation:  native and odbc
    native drivers use DB vendor client interfaces for access
    odbc drivers are provided by the DB vendor for DB access
    Teradata is an odbc interface Database.

  • odbc drivers require an ODBC Driver Manager
    obiee uses Merant Data Direct driver manager

  • obiee servers communicate with one another using odbc.
    The internal odbc driver is implemented by the obiee team and requires Merant Driver Manager.

  • Teradata supplies a Driver Manager, which is built by Merant, but should not be used in obiee.


The nqsserver shared library deployment looks like this


 OBIEE Server<->DataDirect Manager<->Teradata Driver<->Teradata Database


nqsserver startup


$ cd $BI/setup
$ . ./sa-init64.sh
$ run-sa.sh autorestart64


The following files are referenced from setup:
  .variant.sh
  user.sh
  NQSConfig.INI
  DBFeatures.INI
  $ODBCINI ( odbc.ini )
  sqlnet.ora


How does nqsserver connect to Teradata?


A teradata DSN is created in the RPD. ( TD71 )
setup/odbc.ini contains:


[ODBC Data Sources]
 TD71=tdata.so

[TD71]
Driver=/opt/tdodbc/odbc/drivers/tdata.so
Description=Teradata V7.1.0
DBCName=###.##.##.###
LastUser=
Username=northwind
Password=northwind
Database=
DefaultDatabase=northwind


setup/user.sh contains


LIBPATH\
=/opt/tdicu/lib_64\
:/usr/odbc/lib\
:/usr/odbc/drivers\
:/usr/lpp/tdodbc/odbc/drivers\
:$LIBPATH
export LIBPATH
  


setup/.variant.sh contains


if [ "$ANA_SERVER_64" = "1" ]; then
  ANA_BIN_DIR=${SAROOTDIR}/server/Bin64
  ANA_WEB_DIR=${SAROOTDIR}/web/bin64
  ANA_ODBC_DIR=${SAROOTDIR}/odbc/lib64
        


setup/sa-run.sh  contains


. ${ANA_INSTALL_DIR}/setup/.variant.sh
. ${ANA_INSTALL_DIR}/setup/user.sh
logfile="${SAROOTDIR}/server/Log/nqsserver.out.log"
${ANA_BIN_DIR}/nqsserver -quiet >> ${logfile} 2>&1 &
   
nqsserver is running:


nqsserver produces $BI/server/nqsserver.log
At startup, the native database drivers connect and record DB versions.
tdata.so is not loaded until a Teradata DB connection is attempted.


 


 

Teradata odbc client installation


Accept all the defaults for pkgadd.   Install in /opt.


$ mkdir odbc
$ cd odbc
$
 gzip -dc ../tdodbc__solaris_sparc.13.10.00.04.tar.gz | tar -xf -


$ sudo su
# pkgadd -d . TeraGSS
# pkgadd -d . tdicu1310
# pkgadd -d . tdodbc1310


 



Directory Notes:



  • /opt/teradata/client/13.10/odbc_64/lib/tdata.so
    The 64-bit obiee library loaded by nqsserver.

  • /opt/teradata/client/13.10/odbc_64/lib
    is not needed in LD_LIBRARY_PATH

  • /opt/teradata/client/13.10/tdicu/lib64
    is needed in LD_LIBRARY_PATH

  • /usr/odbc should not be referenced;  it is a link to 32-bit libraries

  • LD_LIBRARY_PATH_64 should not be used.  


 




Useful bash functions and aliases


export SAROOTDIR=/export/home/dw_adm/OracleBI
export TERA_HOME=/opt/teradata/client/13.10 
export ORACLE_HOME=/export/home/oracle/product/10.2.0/client

export ODBCINI=$SAROOTDIR/setup/odbc.ini
export TD_ICU_DATA=$TERA_HOME/tdicu/lib64

alias cds="alias | grep '^alias cd' | sed 's/^alias //' | sort"

alias cdtd="cd $TERA_HOME; ls" 
alias cdtdodbc="cd $TERA_HOME/odbc_64; ls -l"
alias cdtdicu="cd $TERA_HOME/tdicu/lib64; ls -l"

alias cdbi="cd $SAROOTDIR; ls"
alias cdbiodbc="cd $SAROOTDIR/odbc; ls -l"
alias cdsetup="cd $SAROOTDIR/setup; ls -ltr"
alias cdsvr="cd $SAROOTDIR/server; ls"
alias cdrep="cd $SAROOTDIR/server/Repository; ls -ltr"
alias cdsvrcfg="cd $SAROOTDIR/server/Config; ls -ltr"
alias cdsvrlog="cd $SAROOTDIR/server/Log; ls -ltr"
alias cdweb="cd $SAROOTDIR/web; ls"
alias cdwebconfig="cd $SAROOTDIR/web/config; ls -ltr"
alias cdoci="cd $ORACLE_HOME; ls"


pkgfiles() { pkgchk -l $1 | awk  '/^Pathname/ {print $2}'; }
pkgfind()  { pkginfo | egrep -i $1 ; }


Examples:


$ pkgfind td
$ pkgfiles tdodbc1310 | grep 64
$ cds
$ cdtdodbc
$ cdsetup
$ cdsvrlog
$ cdweblog

© Oracle Blogs or respective owner

Related posts about /Oracle