Insérer un code personnalisé dans un job Talend avec tJava

Dans cet article, nous allons voir comment insérer du code java dans un job Talend afin d’étendre ses fonctionnalités. Talend open studio est une plate-forme d’intégration de données, basée sur le langage java. C’est un outil qui permet de répondre à toutes les problématiques liées au traitement de données : ETL (Extraction, Traitement et chargement de données), EAI (Echange de données Inter-Application) et synchronisation de données. L’avantage des solutions talend réside dans leur facilité de prise en main, leur souplesse, leur flexibilité et un excellent résultat graphique des jobs grâce aux interfaces des composants.

Le contexte

Nous avons une liste de fichiers avec un nom de fichier formaté comme suit : date_création + nom_créateur. On désire créer un dossier pour chaque créateur.

La solution

Récupérer le fichier, lire le nom du fichier et extraire le nom du créateur. Créer un dossier à partir du nom du créateur.

Talend possède 3 composants permettant d’insérer du code java : tJava, tJavaRow et le tJavaFlex.

Structure des composants

tJava : ne gère pas les flux de données (de type row), ne s’exécute qu’une seule fois et est rattaché à un subjob par un trigger (onCompenentOk ou onSubJobOk).

tJavaRow : ce composant peut gérer les flux, en entrée et sortie, mais le schéma des données en sortie sera le même que les données en entrée.

tJavaFlex : peut gérer les flux des données et peut en créer un autre en sortie à partir des données en entrée.

Création du job

Ci-dessus le scénario de notre exemple :

On récupère la liste des fichiers par le tFTPFileList.

Le composant tSetGlobalVar permet de récupérer le nom du fichier en cours.

Pour insérer le code java, sélectionner le composant tJava et ouvrir l’onglet composant.

On peut initialiser (put) ou récupérer (get) la valeur d’une variable globale dans le code.

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Captcha *