Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

On this Page

Table of Contents
maxLevel2
excludeOlder Versions|Additional Resources|Related Links|Related Information

Snap type:

Write


Description:

The TPT (Teradata Parallel Transport) Upsert Snap allows you to update or insert the data from input view by executing the script generated using the fields provided by the user in the Snap fields.

The Snap updates the table with the values provided in the input view and using the where clause, provides the console output and status code on the output view for any downstream Snap checking for successful execution. 

Queries produced by the Snap have the format:

Code Block
UPDATE table_name SET column1=value1,column2=value2,... WHERE some_column=some_value;
 
  • Expected downstream Snaps: A Snap with a document input view
  • Expected input: Input document with the values to be updated with.
  • Expected output: A single document containing the console output and return status from the external TPT application for each input document


Prerequisites:

TPT Snaps (TPT Insert, TPT Update, TPT Delete, TPT  Upsert and TPT Load) uses the 'tbuild' utility for the respective operations.

In order to use these Snaps in the pipelines, the respective TPT utilities should be installed/available on the Snapplexes. 

Note

All the required TPT utilities must be installed on the node where JCC is running or the Snap simply executes but may not perform the operation. Any utility/library file missing on the node may cause the Snap to perform a failed operation.


Basic steps for installing the TPT utilities:

Procedure to install the Teradata tools and utilities:

  • Download the Teradata Tools and Utilities base such as TeradataToolsAndUtilitiesBase__Linux_i386-x8664.15.10.06.00.tar.gz TTU 16.20.25.00 Linux - Base for Linux environment.
  • If the OS is 64 bit,  install 32 bit support packages on the environment and also any further dependencies
  • Install the Teradata Tools and Utilities (that includes tbuild, fastload, mload etc)
  • The default installation also configures the PATH in the OS

Flow:  If the tbuild or fastload is already available on the OS path then the corresponding TPT Snap can invoke the required utility, however, if these binaries are not available on the OS path, then we need to provide the absolute path of the respective binary in the Snap.

Support and limitations:None.
Account: 

This Snap uses account references created on the Accounts page of  SnapLogic Manager to handle access to this endpoint. See Configuring Teradata Database Accounts for information on setting up this type of account.


Views:


InputThis Snap has one or two input views. One for the data and a second optional input view for the target table schema.  
Output

This Snap has at most one output view.

ErrorThis Snap has at most one error view and produces zero or more documents in the view.


Settings

Label


Required. The name for the Snap. You can modify this to be more specific, especially if you have more than one of the same Snap in your pipeline.

Default value TPT Upsert 

Schema name



The database schema name. In case it is not defined, then the suggestion for the table name will retrieve all tables names of all schemas. The property is suggestible and will retrieve available database schemas during suggest values.

Note

The values can be passed using the pipeline parameters but not the upstream parameter.

Example: SYS

Default value: [None] 

Table name

Required. Name of the table to execute the upsert on.

Note

The values can be passed using the pipeline parameters but not the upstream parameter.

Example: people

Default value: [None] 

TBUILD location



Location of the tbuild application

Default value: /usr/bin/tbuild

Note
 It will be present on the Snapplex.


Fetch metadata delay (seconds)
 

The wait time in seconds to be used before fetching metadata to avoid conflicts while performing Teradata parallel executions in a pipeline.

Default value: 0 

Where columns

Required. Where clause of the select statement. Columns to use to in, where a condition of the update query to check for existing entries in the target table, the value for the column is given from the input document. Note that the primary columns should be included in both, the Where columns and the Primary partition columns properties.

Example: email

Default value: None 

Primary partition columns 


Required. Add all the primary and partition columns for the given table, that are excluded from the "SET" operation as the TPT Script doesn't support the primary or the partition key as update fields. 

Note
The TPT Update Snap does not support NOPI (No Primary Index) tables. 

Example:

id

name

Default value: None 

Multiexcerpt include macro
nameSnap Execution
pageSOAP Execute


Multiexcerpt include macro
nameExecution_Detail_Write
pageSOAP Execute

Example


In this pipeline, the values are upserted (updated and inserted) on the target TPT table using the TPT Upsert Snap. The values are passed through the upstream JSON Generator and the Mapper Snaps respectively.

The JSON Generator Snaps passes the values to be updated in the records of the TPT table. 



The Mapper Snap connected to the input view of the TPT Upsert Snap, maps the values to be updated or inserted  to the respective columns of the table.

Note that the primary key value 'empno' on the Target schema is referenced with a star. This value is supplied in the Where columns and the the Primary Partition columns fields of the TPT Upsert Snap.


The TPT Upsert Snap updates and/or inserts the upstream values on the records of the target table Insert Sample3 under the schema ADW SNAPL. 


The successful execution of the pipeline displays the below output preview:

Note that in this example, the values are updated in the existing records and no new rows have been created.


Insert excerpt
Teradata Snap Pack
Teradata Snap Pack
nopaneltrue