August 17, 2023

tRedshiftInput – Docs for ESB 5.x

tRedshiftInput

tredshiftinput_icon32_white.png

tRedshiftInput properties

Component family

Databases/Amazon Redshift

 

Function

tRedshiftInput executes a DB
query with a strictly defined order which must correspond to the
schema definition. Then it passes on the field list to the next
component through a Main row
link.

Purpose

tRedshiftInput reads data from a
database and extracts fields based on a query so that you may apply
changes to the extracted data.

Basic settings

Property type

Either Built-in or
Repository
.

Since version 5.6, both the Built-In mode and the Repository mode are
available in any of the Talend solutions.

 

 

Built-in: No property data stored
centrally.

 

 

Repository: Select the repository
file in which the properties are stored. The fields that follow are
completed automatically using the data retrieved.

 

Save_Icon.png

Click this icon to open a database connection wizard and store the
database connection parameters you set in the component Basic settings view.

For more information about setting up and storing database
connection parameters, see Talend Studio User Guide.

 

Use an existing connection

Select this check box and in the Component List click the
relevant connection component to reuse the connection details you already defined.

Note

When a Job contains the parent Job and the child Job, if you need to share an existing
connection between the two levels, for example, to share the connection created by the
parent Job with the child Job, you have to:

  1. In the parent level, register the database connection to be shared in the
    Basic settings view of the connection
    component which creates that very database connection.

  2. In the child level, use a dedicated connection component to read that
    registered database connection.

For an example about how to share a database connection across Job levels, see
Talend Studio User
Guide
.

 

Host

Hostname or IP address of the database server.

 

Port

Listening port number of the database server.

 

Database

Name of the database.

 

Schema

Exact name of the schema.

 

Username and
Password

Database user authentication data.

To enter the password, click the […] button next to the
password field, and then in the pop-up dialog box enter the password between double quotes
and click OK to save the settings.

 

Schema and Edit
Schema

A schema is a row description. It defines the number of fields to be processed and passed on
to the next component. The schema is either Built-In or
stored remotely in the Repository.

Since version 5.6, both the Built-In mode and the Repository mode are
available in any of the Talend solutions.

 

 

Built-In: You create and store the schema locally for this
component only. Related topic: see Talend Studio
User Guide.

 

 

Repository: You have already created the schema and
stored it in the Repository. You can reuse it in various projects and Job designs. Related
topic: see Talend Studio User Guide.

   

Click Edit schema to make changes to the schema. If the
current schema is of the Repository type, three options are
available:

  • View schema: choose this option to view the
    schema only.

  • Change to built-in property: choose this option
    to change the schema to Built-in for local
    changes.

  • Update repository connection: choose this option to change
    the schema stored in the repository and decide whether to propagate the changes to
    all the Jobs upon completion. If you just want to propagate the changes to the
    current Job, you can select No upon completion and
    choose this schema metadata again in the [Repository
    Content]
    window.

 

Table name

Name of the table from which the data will be read.

 

Query type and
Query

Enter your database query paying particularly attention to
sequence the fields properly in order to match the schema
definition.

Warning

If using the dynamic schema feature,
the SELECT query must include the * wildcard, to retrieve all of the columns
from the table selected.

 

Guess Query

Click the Guess Query button to
generate the query which corresponds to your table schema in the
Query field.

 

Guess schema

Click the Guess schema button to
retrieve the table schema.

Advanced settings

Use cursor

Select this check box to help to decide the row set to work with
at a time and thus optimize performance.

 

Trim all the String/Char columns

Select this check box to remove leading and trailing whitespace
from all the String/Char columns.

 

Trim column

Remove leading and trailing whitespace from defined
columns.

 

tStat
Catcher Statistics

Select this check box to collect log data at the component
level.

Dynamic settings

Click the [+] button to add a row in the table and fill
the Code field with a context variable to choose your
database connection dynamically from multiple connections planned in your Job. This feature
is useful when you need to access database tables having the same data structure but in
different databases, especially when you are working in an environment where you cannot
change your Job settings, for example, when your Job has to be deployed and executed
independent of Talend Studio.

The Dynamic settings table is available only when the
Use an existing connection check box is selected in the
Basic settings view. Once a dynamic parameter is
defined, the Component List box in the Basic settings view becomes unusable.

For more information on Dynamic settings and context
variables, see Talend Studio User Guide.

Global Variables

NB_LINE: the number of rows processed. This is an After
variable and it returns an integer.

QUERY: the SQL query statement being processed. This is a
Flow variable and it returns a string.

ERROR_MESSAGE: the error message generated by the
component when an error occurs. This is an After variable and it returns a string. This
variable functions only if the Die on error check box is
cleared, if the component has this check box.

A Flow variable functions during the execution of a component while an After variable
functions after the execution of the component.

To fill up a field or expression with a variable, press Ctrl +
Space
to access the variable list and choose the variable to use from it.

For further information about variables, see Talend Studio
User Guide.

Usage

This component covers all possible SQL queries for Amazon Redshift
databases.

Log4j

The activity of this component can be logged using the log4j feature. For more information on this feature, see Talend Studio User
Guide
.

For more information on the log4j logging levels, see the Apache documentation at http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html.

Limitation

Due to license incompatibility, one or more JARs required to use this component are not
provided. You can install the missing JARs for this particular component by clicking the
Install button on the Component tab view. You can also find out and add all missing JARs easily on
the Modules tab in the Integration perspective
of your studio. For details, see https://help.talend.com/display/KB/How+to+install+external+modules+in+the+Talend+products
or the section describing how to configure the Studio in the Talend Installation and Upgrade
Guide
.

Scenario: Handling data with Redshift

This scenario describes a Job that writes the personal information into Redshift, then
retrieves the information in Redshift and displays it on the console.

components-use_case-tredshift-s1-job.png

The scenario requires the following six components:

  • tRedshiftConnection: opens a connection to
    Redshift.

  • tFixedFlowInput: defines the personal
    information data structure, and sends the data to the next component.

  • tRedshiftOutput: writes the data it receives
    from the preceding component into Redshift.

  • tRedshiftInput: reads the data from
    Redshift.

  • tLogRow: displays the data it receives from
    the preceding component on the console.

  • tRedshiftClose: closes the connection to
    Redshift.

Dropping and linking the components

  1. Drop the six components listed previously from the Palette onto the design workspace.

  2. Connect tFixedFlowInput to tRedshiftOutput using a Row > Main
    connection.

  3. Connect tRedshiftInput to tLogRow also using a Row > Main
    connection.

  4. Connect tRedshiftConnection to tFixedFlowInput using a Trigger > OnSubjobOk
    connection.

  5. Connect tFixedFlowInput to tRedshiftInput and tRedshiftInput to tRedshiftClose also using a Trigger > OnSubjobOk
    connection.

Configuring the components

Opening a connection to Redshift

  1. Double-click tRedshiftConnection to open
    its Basic settings view.

    components-use_case-tredshift-s1-tredshiftconnection.png
  2. Select Built-In from the Property Type drop-down list.

    In the Host, Port, Database, Schema, Username, and Password fields,
    enter the information required for the connection to Redshift.

  3. In Advanced settings view, select
    Auto Commit check box to commit any
    changes to Redshift upon each transaction.

Defining the input data

  1. Double-click tFixedFlowInput to open its
    Basic settings view.

    components-use_case-tredshift-s1-tfixedflowinput.png
  2. Click the […] button next to Edit schema to open the schema editor.

    components-use_case-tredshift-s1-tfixedflowinput_schema.png
  3. In the schema editor, click the [+]
    button to add three columns: id of the
    interger type, name of the string type,
    and age of the integer type.

  4. Click OK to validate the changes and
    accept the propagation prompted by the pop-up [Propagate] dialog box.

  5. In the Mode area, select Use Inline Content (delimited file) and enter the
    following personal information in the Content field.

Writing the data into Redshift

  1. Double-click tRedshiftOutput to open its
    Basic settings view.

    components-use_case-tredshift-s1-tredshiftoutput.png
  2. Select the Use an existing connection
    check box, and then select the connection you have already configured for
    tRedshiftConnection from the Component List drop-down list.

  3. In the Table field, enter or browse to
    the table into which you want to write the data, redshiftexample in this scenario.

  4. Select Drop table if exists and create
    from the Action on table drop-down list,
    and select Insert from the Action on data drop-down list.

  5. Click Sync columns to retrieve the schema
    from the preceding component tFixedFlowInput.

Retrieving the data from Redshift

  1. Double-click tRedshiftInput to open its
    Basic settings view.

    components-use_case-tredshift-s1-tredshiftinput.png
  2. Select the Use an existing connection
    check box, and then select the connection you have already configured for
    tRedshiftConnection from the Component List drop-down list.

  3. Click the […] button next to Edit schema to open the schema editor.

  4. In the schema editor, click the [+]
    button to add three columns: id of the
    interger type, name of the string type,
    and age of the integer type. The data
    structure is same as the structure you have defined for tFixedFlowInput.

  5. Click OK to validate the changes and
    accept the propagation prompted by the pop-up [Propagate] dialog box.

  6. In the Table Name field, enter or browse
    to the table into which you write the data, redshiftexample in this scenario.

  7. Click the Guess Query button to generate
    the query. The Query field will be filled
    with the automatically generated query.

Displaying the defined information

  1. Double-click tLogRow to open its
    Basic settings view.

    components-use_case-tredshift-s1-tlogrow.png
  2. In the Mode area, select Table (print values in cells of a table) for a
    better view of the results.

Closing the connection to Redshift

  1. Double-click tRedshiftClose to open its
    Basic settings view.

    components-use_case-tredshift-s1-tredshiftclose.png
  2. From Component List, select the
    connection you have already configured for tRedshiftConnection.

Saving and executing the Job

  1. Press Ctrl+S to save the Job.

  2. Press F6 to execute the Job.

    components-use_case-tredshift-s1-result.png

    The personal information is written to the specified target Redshift
    database, and then the data is retrieved from the database and displayed on
    the console.


Document get from Talend https://help.talend.com
Thank you for watching.
Subscribe
Notify of
guest
0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x