Ce tutoriel explique l'utilisation de l'ETL Open Source Talend Open Studio pour la
transformation d'une table d'une base de donnes Oracle en une multitude de fichiers XML,
un fichier XML par ligne.
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
I - Introduction..............................................................................................................................................................3
II - La source de donnes........................................................................................................................................... 3
III - La destination des donnes..................................................................................................................................4
IV - Job Talend Open Studio.......................................................................................................................................4
IV-A - Cration d'une connexion avec la base de donnes.................................................................................. 4
IV-B - Cration du schma de notre table.............................................................................................................8
IV-C - Cration de la requte SQL utiliser....................................................................................................... 10
IV-D - Dfinition du job........................................................................................................................................ 13
IV-D-1 - Cration de la connexion Oracle...................................................................................................... 15
IV-D-2 - Cration du composant de journalisation......................................................................................... 16
IV-D-3 - Cration du fichier de sortie XML.....................................................................................................17
IV-D-4 - Cration du composant tMap........................................................................................................... 19
IV-D-5 - Transformer un champ grce au tMap ....................................................................................... 21
V - Conclusion........................................................................................................................................................... 22
VI - Remerciements................................................................................................................................................... 22
-2Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
I - Introduction
Le document suivant nous prsente les tapes de cration d'un job sous Talend Open Studio, il aura comme but de
migrer les lignes d'une table d'une base de donnes Oracle vers des fichiers XML. Le schma suivant reprsente
ce scnario :
II - La source de donnes
Avant de parler de la cration du job TOS on va tout d'abord prsenter la source de donnes, qui n'est autre qu'une
table dans une base de donnes Oracle qui a t cre dans le schma TEST avec le script suivant :
CREATE TABLE CLIENT(
CODE VARCHAR2(100 BYTE),
NOM VARCHAR2(100 BYTE),
PRENOM VARCHAR2(100 BYTE),
ADRESSE VARCHAR2(100 BYTE),
EMAIL VARCHAR2(100 BYTE)
);
Puis des lignes ont t insres dans cette table en utilisant ce script :
INSERT INTO CLIENT
VALUES
('cli001',
'ELHASSAK',
'MUSTAPHA',
'N8 BLOC10 RUE20 CASA',
'ELHASSAK.M@HOTMAIL.COM');
INSERT INTO CLIENT
VALUES
('cli002',
'Esbaiss',
'MOUAD',
'N9 BLOC310 RUE21 RABAT',
'ESBAISS.M@HOTMAIL.COM');
INSERT INTO CLIENT
VALUES
('cli003',
'zAkI',
'ANASS',
'N18 BLOC1 RUE33 CASA',
'ZAKI.A@HOTMAIL.COM');
INSERT INTO CLIENT
VALUES
('cli004',
-3Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
'MoufRIJE',
'KHALID',
'N82 BLOC33 RUE220 FES',
'MOUFRIJE.K@HOTMAIL.COM');
INSERT INTO CLIENT
VALUES
('cli005',
'hadri',
'ZAKARIA',
'N1 BLOC21 RUE10 TANGER',
'HADRI.Z@HOTMAIL.COM');
Les valeurs entre deux "_" reprsentent les parties qui vont changer suivant chaque ligne de la table.
Aprs cette description des donnes d'entre et du format de sortie, on va montrer les tapes de cration de notre
job TOS.
-4Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
-5Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
-6Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
Voil notre connexion est cre et on peut la voir dans l'arborescence de l'onglet rfrentiel .
-7Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
-8Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
Les noms de toutes les tables s'affichent, on coche la ou les tables qui nous intressent.
On clique sur Suivant .
-9Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
- 10 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
Dans la partie Structure de la base de donnes on slectionne la table qui nous intresse , on fait un clic
droit et on choisit : Gnration de la clause select .
La requte est cre droite, il ne nous reste plus qu' la sauvegarder en lui donnant un nom.
- 11 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
- 12 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
- 13 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
- 14 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
- 15 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
On clique sur le premier bouton . pour choisir notre schma. Une fentre s'affiche avec les diffrents
schmas crs. On choisit celui qui nous intresse. Puis on clique sur OK .
Aprs a il faut spcifier la requte utiliser. Dans le combobox Type de requte on choisit la valeur
Rfrentiel .
On clique sur le bouton . qui apparat droite, puis on parcourt les diffrentes requtes pour choisir celle
qui nous intresse. Puis on clique sur OK .
Voil notre connexion avec la base est configure. On passe maintenant crer le composant de journalisation.
Dans l'onglet Palette on choisit le composant tLogRow , on le glisse et le dpose dans le Designer
du job.
- 16 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
On fait un clic droit sur le composant tOracleInput puis on le glisse vers le composant tLogRow .
On slectionne le composant tLogRow , puis on va dans l'onglet Component .
On clique sur le bouton Synchroniser les colonnes pour rcuprer le schma depuis le composant
d'entre (ici c'est le tOracleInput ).
On choisit les autres diffrentes options pour notre composant.
Le composant est maintenant fin prt, et on peut dj tester le job pour voir s'il marche en appuyant sur la touche
F6 ou bien en allant dans l'onglet Excuter et en cliquant sur le bouton Excuter .
- 17 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
On clique sur le bouton . devant le libell Configurer l'arbre XML pour crer la structure de notre XML.
L'assistant de cration de l'arbre XML s'affiche. On choisit soit de crer la structure manuellement, soit de
- 18 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
faire un clic droit sur le root Tag puis cliquer sur Importer un arbre XML , ce qui est notre cas ici. On
slectionne le fichier XML qui reprsente la structure dsire puis on clique sur Open et enfin sur OK .
Aprs on dfinit le schma qui doit tre mapp avec la structure du XML, pour cela soit on choisit un schma
du rfrentiel comme avant, soit on le cre manuellement. Dans notre exemple on choisira le mme schma
que celui de la connexion Oracle.
On fait un double-clic sur le composant tAdvancedFileOutputXML pour faire la relation entre les champs
en entre affichs dans la partie Source du lien et les balises de sortie dans la partie Cible du lien .
Pour cela il suffit de faire des glisser/dplacer depuis la partie gauche vers celle de droite.
Il faut spcifier un lment de boucle , c'est la balise sur laquelle on va boucler et c'est obligatoire, on choisit
ici la balise <Nom>.
On clique sur OK .
Maintenant on va placer un composant tMap qui nous permettra de faire quelques oprations sur les champs
avant de les mapper.
Dans l'onglet Palette on choisit le composant tMap , on le glisse et le dpose dans le Designer du
job.
- 19 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
On fait un clic droit sur le composant tLogRow puis on glisse vers le composant tMap .
On fait un clic droit sur le composant tMap puis on glisse vers le composant
tAdvancedFileOutputXML , on donne un nom au lien qui sera cr. Puis on clique sur Oui pour
rcuprer les schmas de la cible.
- 20 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
Le job est prt tre excut, on appuie sur le bouton F6 , et si on va sur le dossier de sortie on retrouvera
nos fichiers XML.
- 21 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/
Cration de job avec l'ETL Talend Open Studio par Mustapha EL HASSAK
On peut maintenant relancer le job on remarque que les noms des clients sont maintenant tous en majuscules.
V - Conclusion
Merci d'avoir lu tout ce document :), j'espre qu'il a pu aider quelques-uns de ses lecteurs, au moins pour les dbutants
sur TOS. Ceci dit pour les gens qui souhaiteraient apprendre encore plus je leur conseille d'aller sur le site officiel
de Talend o il y'a plusieurs autres tutos trs intressants, sans oublier le forum sur Developpez o vous pouvez
poser toutes vos questions !
VI - Remerciements
Un grand merci ClaudeLELOUP pour la relecture orthographique.
- 22 Ce document est issu de http://www.developpez.com et reste la proprit exclusive de son auteur. La copie, modification et/ou distribution par quelque moyen que ce soit est soumise l'obtention
pralable de l'autorisation de l'auteur.
http://haskouse.developpez.com/tutoriels/etl/talend-open-studio/creation-job/