TPT FastExport
Overview
The TPT FastExport Snap exports data from a Teradata table to a flat file using the Teradata Parallel Transporter (TPT) utility.
- Expected downstream Snaps: A Snap monitoring the exit code to check result status.
- Expected input: None or documents with values to evaluate expression properties in the Snap. Each input document triggers one execution of the script.
- Expected output: A single document containing the console output and return status from the external TPT application for each input document.
- This is a Read-type Snap.
Works in Ultra Tasks
Prerequisites
TPT Snaps (TPT Insert, TPT Update, TPT Delete, TPT Upsert and TPT Load) use 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.
Basic steps for installing the TPT utilities:
Procedure to install the Teradata tools and utilities:
- Download the Teradata Tools and Utilities base such as 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 you need to provide the absolute path of the respective binary in the Snap.
Snap views
| Type | Description | Examples of upstream and downstream Snaps |
|---|---|---|
| Input |
This Snap has at most one document input view. |
|
| Output |
This Snap has one or two output views. The first output view produces one Document containing the console output and return status from the external Teradata application. The second output view provides the table and column metadata. |
|
| Learn more about Error handling. | ||
Snap settings
- Expression icon (
): Allows using pipeline parameters to set field values dynamically (if enabled). SnapLogic Expressions are not supported. If disabled, you can provide a static value.
- SnapGPT (
): Generates SnapLogic Expressions based on natural language using SnapGPT. Learn more.
- Suggestion icon (
): Populates a list of values dynamically based on your Snap configuration. You can select only one attribute at a time using the icon. Type into the field if it supports a comma-separated list of values.
- Upload
: Uploads files. Learn more.
| Field/Field set | Description |
|---|---|
Label
String |
Required. Specify a unique name for the Snap. Modify this to be more appropriate, especially if more than one of the same Snaps is in the pipeline. Default value: TPT FastExport |
Schema name
String/Expression/ Suggestion |
The database schema name. In case it is not defined, the suggestion for the table name will retrieve all the table names of all the schemas. The property is suggestible and will retrieve available database schemas during suggest values.
Default value: N/A Example: SYS |
Table name
String/Expression/ Suggestion |
Required. Name of the table to execute a select query on.
Default value: N/A Example: people |
Where clause
String/Expression |
Where clause of the select statement. This supports document value substitution (such as $person.firstname will be substituted with the value found in the incoming document at the path). However, you may not use a value substitution after "IS" or "is" word.
Without using expressions:
Using expressions:
CAUTION: Using expressions that join strings together to create SQL queries or conditions has a potential SQL injection risk and is hence unsafe. Ensure that you understand all implications and risks involved before using concatenation of strings with '=' Expression enabled.
Default value: N/A |
Order by
String/Expression/ Suggestion |
Enter in the columns in the order in which you want to order by. The default database sort order will be used.
Default value: N/A Example: name, email |
Limit offset
Integer/Expression |
The starting row for the query.
Default value: N/A |
Limit rows
Integer/Expression |
The maximum number of rows the query should return.
Default value: N/A |
Output fields
String/Expression/ Suggestion |
Enter or select output field names for SQL SELECT statement. To select all fields, leave it at default.
Default value: N/A Example: email, address, first, last |
Query band
String/Expression |
Specify the name-value pairs to use in the session's generated query band statement. The query band is passed to the Teradata database as a list of name-value pairs separated by semi-colons.
Default value: N/A Example: ProjectName=dstage1;user=test; |
File Action
Dropdown list |
Required. Select an action when the specified file already exists in the directory. The options available include: OVERWRITE, IGNORE and ERROR.
Default value: ERROR |
TBUILD location
String/Expression |
Required. Location of the Teradata application.
Note: The TBUILD location will be available on the Snaplex.
Default value: /usr/bin/tbuild |
Output directory
String/Expression/ Suggestion |
Required. Attribute specifies the full path to the output directory. Specify a local directory path. An absolute path should be entered. Use the suggest bubble to get the list of subdirectories in the current directory. If this property is blank, it will list all subdirectories in the top directory of the local file system.
Default value: N/A Example: /home/Snap/tpt/ or file:///home/Snap/tpt/ |
Output File
String/Expression |
Required. Location of exported data file. If there is a white space, then the path should be in quotes as per the Teradata documentation.
Default value: N/A |
File Format
Dropdown list |
Required. Attribute that specifies the logical record format of the exported data file. The options available include: Binary, Delimited, Formatted, Unformatted and Text.
Note: Text format requires all column data types to be CHAR or DATE in the selected Output fields. If DATE data type is included, the Date format property should be set to Text.
Default value: Delimited |
Text Delimiter Type
Dropdown list |
Required. Attribute that specifies Type of Text Delimiter that is to be used. The options available include: TextDelimiter and TextDelimiterHEX.
Default value: TextDelimiter |
Text Delimiter
String/Expression |
Attribute that specifies the bytes that separate fields in delimited records. Any number of characters can be defined via the attribute assignment. The default delimiter character is the pipe character ( | ). To embed a pipe delimiter character in your data, precede the pipe character with a backslash ( \ ). Use Hex code for Hex Type and Text for the other.
Note: To use the tab character as the delimiter character, specify TextDelimiter = 'TAB'. Use uppercase "TAB" not lowercase "tab". The backslash is required if you want to embed a tab character in your data.
Default value: | |
Escape Text Delimiter Type
Dropdown list |
Required. Attribute that specifies Type of Escape Text Delimiter that is to be used. The options available include: EscapeDelimiterText and EscapeDelimiterHEX.
Default value: EscapeTextDelimiter |
Escape Text Delimiter
String/Expression |
Attribute that allows you to define the delimiter escape character within delimited data. There is no default data. When processing data in delimited format, if the backslash precedes the delimiter, that instance of the delimiter is included in the data rather than marking the end of the column. Use Hex code for Hex Type and Text for the other.
Default value: \ |
Date format
Dropdown list |
Required. Date format used in the output file in text mode. The options available include: Integer and Text.
Note: If this property is set to 'Integer' and the File Format property is set to Binary/Formatted/Unformatted, the DATE type values are written to the output file as an integer. If this property is 'Integer', and the File Format property is 'Text' and a DATE data type output field is included, the Snap will fail with an error "... TPT19108 Data Format 'TEXT' requires all 'CHAR/ANSIDATE' schema...."
Default value: Integer |
Quoted Data
Checkbox |
Required. Determines if data is expected to be enclosed within quotation marks.
Default value: Deselected |
Snap execution
Dropdown list |
Choose one of the three modes in
which the Snap executes. Available options are:
|
Temporary files
During execution, data processing on Snaplex nodes occurs principally in-memory as streaming and is unencrypted. When processing larger datasets that exceed the available compute memory, the Snap writes unencrypted pipeline data to local storage to optimize the performance. These temporary files are deleted when the pipeline execution completes. You can configure the temporary data's location in the Global properties table of the Snaplex node properties, which can also help avoid pipeline errors because of the unavailability of space. Learn more about Temporary Folder in Configuration Options.
Troubleshooting
| Error | Cause | Resolution |
|---|---|---|
| Failure: TPT script failed to execute error code: 8 |
The Snap is unable to read the Fastload absolute path. | Leave the field blank or update the Fastload absolute path with .exe extension to prevent your pipeline from failing. For example, if you used /usr/bin/fastload as the Fastload absolute path, change it to /usr/bin/fastload.exe. |
| Failure: Failed to execute query error code: 5992 |
A syntax error was found in the QUERY_BAND. | Check that the query band is in the form specified in the Query band field above. For example, if you used priority=1;workload=high in the Query band, add a semi-colon and update the value to priority=1;workload=high;. |