How to run Workload Analyzer – Automatic

Prerequisites:

  • Teradata ODBC driver 15.10 installed and operational
  • Python 2.7

Steps to deploy and run Workload Analyzer:

  1. Download and extract distribution archive:
    tar xzf dtm-2.5.18+b2960-el6.x86_64.tar.gz
  2. Run extracted installer:
    ./dtm-2.5.18+b2960-el6.x86_64.bin
  3. Go to wla subfolder:
    cd dtm-2.5.18+b2960/wla
  4. Analyze workload file (for placeholders refer to table below):
    ./wla -b <DW> -h <TDHost> -u <TDUser> -f <Workload>
  5. Once complete, extract output/report_YYYY-MM-DD_HH.MM.SS.zip
  6. Open index.html in a browser
  7. Refer to output/err_queries_YYYY-MM-DD_HH.MM.SS.out for detailed errors of unsuccessful queries

Example command:
./wla -b snowflake -h tdhost -u tduser -f workload.sql

Placeholder

Value

<DW>

Assumed modern DW; supported values:

•greenplum  (Greenplum DB)

•impala  (Cloudera Impala)

•msadw  (Microsoft SQL DW)

•redshift  (Amazon Redshift)

•snowflake  (Snowflake)

<TDHost>

Hostname of the Teradata database providing metadata

<TDUser>

Username to connect to Teradata database for retrieving metadata

<Workload>

Path to the input file containing the workload (dumped query log)

Some hints - these may become redundant as we include some of the steps into WLA:

  • Use tdxodbc64 tool supplied with Teradata drivers to test connectivity of the ODBC drivers to the Teradata box:
    tdxodbc64 -c SQLDriverConnect -C "DRIVER=Teradata; DBCNAME=<TDHost>; UID=<TDUser>; PWD=<TDPass>"
  • We have seen a couple of times that, despite being picked up by the application itself (Hyper-Q, WLA), the odbcinst.ini needs to be pointed at by the environment variable ODBCINST. Set it to the appropriate file if there are issues with the Teradata ODBC drivers. E.g.,:
    export ODBCINST=/opt/teradata/client/15.10/odbc_64/odbcinst.ini
  • We have seen that customers did not have the ICU package (required by TD ODBC drivers) when they downloaded the TD ODBC driver packages from the customer-only, internal download page of Teradata. Use the ODBC driver package that can be downloaded from Teradata Developer Exchange, which contains the driver, GSS, and ICU packages:
    http://downloads.teradata.com/download/connectivity/odbc-driver/linux
  • If Python 2.7 is not available as the default name python, edit the first line of qi, qi-core and report/report.py to reflect the required python interpreter. E.g., if the binary is called python2.7, change the lines to read:
    #! /usr/bin/env python2.7
Have more questions? Submit a request

1 Comments

  • 0
    Avatar
    Mike Waas

    Great info!

    How do I know if the env variable needs to be set? How do I know if the ICU package is missing?

Please sign in to leave a comment.