Why does TIBCO Adapter for Teradata uses CLI interface, not ODBC in runtime mode?

Why does TIBCO Adapter for Teradata uses CLI interface, not ODBC in runtime mode?

book

Article ID: KB0091316

calendar_today

Updated On:

Products Versions
TIBCO Adapter for Teradata -
Not Applicable -

Description

Description:
CLI stands for "call level interface". It is the native interface that Teradata itself uses to enable its tools to interact with their database.

By calling CLI directly, the Teradata Adapter makes use of Teradata's native API instead of a generic interface (such as ODBC) which may use Teradata's API underneath and add another layer. Bypassing any intermediate layer increases performance. This is the primary reason that the adapter uses CLI.

Other minor reasons include Teradata specific improvements/features offered through CLI that may not be exposed through standard interfaces (ODBC/JDBC). For example, the adapter makes use of the serialization feature in CLI, which reduces blocking/contention.

The snippet from the user guide about serialization:

"What is Serialization?

TIBCO Adapter for Teradata takes incoming data records, creates SQL data manipulation statements according to a user specified criteria, and sends it into CLI session buffers for transmission to Teradata.
Serialize is an option within TIBCO Adapter for Teradata to partition those SQL data manipulation statements among multiple CLI session buffers to increase Teradata performance, reduce row-hash lock contention, and deadlocks.

In the Adapter Services tab of the adapter instance and select the "Use Serialization" check box.

This is a feature of the Subscription Service only."

Issue/Introduction

Why does TIBCO Adapter for Teradata uses CLI interface, not ODBC in runtime mode?