tS3List - 6.3

Talend Components Reference Guide

EnrichVersion
6.3
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for Data Quality
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Data Governance
Data Quality and Preparation
Design and Development
EnrichPlatform
Talend Studio

Function

Lists the files on Amazon S3 based on the bucket/file prefix settings.

Purpose

tS3List is designed to list the files on Amazon S3 based on the bucket/file prefix settings.

tS3List properties

Component family

Cloud/Amazon/S3

 

Basic settings

Use existing connection

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

 

Access Key

The Access Key ID that uniquely identifies an AWS Account. For how to get your Access Key and Access Secret, visit Getting Your AWS Access Keys.

 

Secret Key

The Secret Access Key, constituting the security credentials in combination with the access Key.

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

 

Inherit credentials from AWS role

Select this check box to obtain AWS security credentials from Amazon EC2 instance metadata. To use this option, the Amazon EC2 instance must be started and your Job must be running on Amazon EC2. For more information, see Using an IAM Role to Grant Permissions to Applications Running on Amazon EC2 Instances.

 

Assume role

Select this check box and specify the values for the following parameters used to create a new assumed role session.

  • Role ARN: the Amazon Resource Name (ARN) of the role to assume.

  • Role session name: an identifier for the assumed role session.

  • Session duration (minutes): the duration (in minutes) for which we want to have the assumed role session to be active.

For more information about assuming roles, see AssumeRole.

 

Region

Specify the AWS region by selecting a region name from the list or entering a region between double quotation marks (e.g. "us-east-1") in the list. For more information about the AWS Region, see Regions and Endpoints.

 

List all bucket objects

Select this check box to list all the files on the S3 server.

Key prefix: enter the prefix of files to be listed. This way, only files with that prefix will be listed.

 

Bucket

Click the [+] button to add one or more lines for defining the buckets and file prefixes.

Bucket name: name of the bucket, namely the top level folder, whose files will be listed.

Key prefix: prefix of files to be listed.

Not available when List all bucket objects is selected.

 

Die on error

This check box is cleared by default, meaning to skip the row on error and to complete the process for error-free rows.

Advanced settings

Config client

Select this check box to configure client parameters.

Client parameter: select client parameters from the list.

Value: enter the parameter value.

Not available when Use existing connection is selected.

STS Endpoint

Select this check box and in the field displayed, specify the AWS Security Token Service endpoint where session credentials are retrieved from.

This check box is available only when the Assume role check box is selected.

 

tStatCatcher 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.

Once a dynamic parameter is defined, the Component List box in the Basic settings view becomes unusable.

For examples on using dynamic parameters, see Scenario 3: Reading data from MySQL databases through context-based dynamic connections and Scenario: Reading data from different MySQL databases using dynamically loaded connection parameters. For more information on Dynamic settings and context variables, see Talend Studio User Guide.

Global Variables

CURRENT_BUCKET: the current bucket name. This is a Flow variable and it returns a string.

CURRENT_KEY: the current key. This is a Flow variable and it returns a string.

NB_BUCKET: the number of buckets. This is an After variable and it returns an integer.

NB_BUCKET_OBJECT: the number of objects in all the buckets. This is an After variable and it returns an integer.

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 can be used alone or with other S3 components, e.g. tS3Delete.

Log4j

If you are using a subscription-based version of the Studio, 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 the article Installing External Modules on Talend Help Center (https://help.talend.com) or the section describing how to configure the Studio in the Talend Installation Guide.

Scenario: Listing files with the same prefix from a bucket

In this scenario, tS3List is used to list all the files in a bucket which have the same prefix.

There are such files in this bucket:

For how to create a bucket and put files into it, see Scenario: Verifing the absence of a bucket, creating it and listing all the S3 buckets and Scenario: File exchanges with Amazon S3 .

Linking the components

  1. Drop tS3Connection, tS3List, tIterateToFlow, tLogRow and tS3Close onto the workspace.

  2. Link tS3Connection to tS3List using the OnSubjobOk trigger.

  3. Link tS3List to tIterateToFlow using the Row > Iterate connection.

  4. Link tIterateToFlow to tLogRow using the Row > Main connection.

  5. Link tS3List to tS3Close using the OnSubjobOk trigger.

Configuring the components

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

  2. In the Access Key and Secret Key fields, enter the authentication credentials.

  3. Double-click tS3List to open its Basic settings view.

  4. Select the Use existing connection check box to reuse the connection.

  5. In the Bucket area, click the [+] button to add one line.

  6. In the Bucket name and Key prefix fields, enter the bucket name and file prefix.

    This way, only files with the specified prefix will be listed.

  7. Double-click tIterateToFlow to open its Basic settings view.

  8. Click Edit schema to open the schema editor.

    Click the [+] button to add one column, namely file_list of the String type.

    Click Ok to validate the setup and close the schema editor.

  9. In the Mapping area, press Ctrl + Space in the Value field to choose the variable tS3List_1_CURRENT_KEY.

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

    Select Table (print values in cells of a table) for a better display of the results.

  11. Double-click tS3Close to open its Basic settings view.