BI experience

Talend : la différence entre le tJava, tJavaRow et le tJavaFlex

| 5 Commentaires

Tout d’abord il faut connaitre la structure d’un composant Talend. Ils sont conçus en 3 parties :
- Begin
- Main
- End

Le Begin et le End ne s’exécutent qu’une fois, on peut ainsi y initialiser des valeurs. Le Begin ouvre la boucle et end la ferme.
Le main, lui, va traiter en boucle chaque ligne qu’il a en entré.

Maintenant voici la structure de ces 3 composants :
Le tJava n’a qu’un Begin donc il ne s’exécute qu’une fois . Il ne gère pas de flux de données (de type row) et est mis généralement seul ou en début de job et rattaché à un subjob par un trigger ( onComponentOk ou onSubjobOk)

Contrairement au tJava, le tJava Row n’a que la partie main. Il peut recevoir un flux et faire des traitement dessus en boucle. Il pourra créer un flux de sortie mais en l’initialisant. (exemple : row5.champ = row4.champ). Le schéma en entrée et en sortie sera le même. Ce composant ne peut être qu’en milieu de job.

Et enfin le tJavaFlex est similaire au tJavaRow. La différence est qu’il a la particularité de créer automatiquement un flux de données en sortie à partir du flux de données en entrée (donc pas besoin d’initialisation). Ce composant a à la fois, le begin, main et end. Il peut donc être mis seul ou en début de job, ou même au milieu en prenant en compte le flux de données. c’est le plus flexible des trois.

J’espère que maintenant vous serez plus apte à développer votre code dans les composants de Talend.

5 Commentaires

  1. C’est bien expliqué ; néanmoins un exemple des trois applications aurait été sympa ; un prochain peut être ?

  2. Pourquoi pas j’y penserai…Merci pour ton commentaire

  3. Je vous remercie de cet article , c m’a permis de résoudre un problème délicat

  4. Pourquoi le TJAVA accepte un flux en entré puisqu’il ne sait pas les gérer?

  5. Merci pour l’explication .Très bon travail :)

Laisser un commentaire

Champs Requis *.

*