Scénario : Lister et obtenir des fichiers/dossiers d'un répertoire FTP - 6.3

Composants Talend Guide de référence

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
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

Voici un exemple d'utilisation des composants FTP de Talend pour effectuer des itérations, lister tous les fichiers et dossiers d'un répertoire sur un serveur FTP et récupérer uniquement les fichiers texte de ce répertoire vers un répertoire local.

Créer un Job pour lister et obtenir des fichiers/dossiers d'un répertoire FTP

Créez un Job pour vous connecter à un serveur FTP, effectuer des itérations et récupérer tous les fichiers et dossiers d'un répertoire FTP racine vers un répertoire local, puis fermer la connexion au serveur.

Prérequis : pour reproduire ce scénario, un serveur FTP doit être démarré et quelques fichiers/dossiers doivent se situer dans le répertoire racine de ce serveur FTP.

  1. Créez un nouveau Job et ajoutez un composant tFTPConnection, un tFTPFileList, un tIterateToFlow, un tLogRow, un tFTPGet et un tFTPClose, en saisissant leur nom dans l'espace de modélisation graphique ou en les déposant depuis la Palette.

  2. Reliez le tFTPFileList au tIterateToFlow, à l'aide d'un lien Row > Iterate.

  3. Reliez le tIterateToFlow au tLogRow à l'aide d'un lien Row > Main.

  4. Connectez le tFTPConnection au tFTPFileList à l'aide d'un lien Trigger > OnSubjobOk.

  5. Répétez l'opération pour relier le tFTPFileList au tFTPGet et le tFTPGet au tFTPClose.

Ouvrir une connexion au serveur FTP

Configurez le composant tFTPConnection pour ouvrir une connexion au serveur FTP.

  1. Double-cliquez sur le tFTPConnection pour ouvrir sa vue Basic settings.

  2. Dans les champs Host et Port, saisissez l'adresse IP du serveur FTP et le numéro du port d'écoute, respectivement.

  3. Dans les champs Username et Password, saisissez les informations d'authentification.

Lister tous les fichiers/dossiers du répertoire racine FTP

Configurez le composant tFTPFileList, le tIterateToFlow et le tLogRow pour effectuer des itérations sur tous les fichiers et dossiers du répertoire racine du FTP, ainsi que pour afficher les noms de et les chemins d'accès à ces fichiers et dossiers dans la console du Studio Talend.

  1. Double-cliquez sur le composant tFTPFileList pour ouvrir sa vue Basic settings.

  2. Spécifiez les informations de connexion requises pour accéder au serveur FTP. Dans cet exemple, cochez la case Use an existing connection et, dans la liste Component list qui s'affiche, sélectionnez le composant de connexion afin de réutiliser les informations de connexion précédemment définies.

  3. Dans le champ Remote directory, spécifiez le répertoire du serveur FTP sur lequel les fichiers et dossier seront itérés. Dans cet exemple, spécifiez /, ce qui signifie le répertoire racine du serveur FTP.

  4. Décochez la case Move to the current directory.

  5. Double-cliquez sur le composant tIterateToFlow pour ouvrir sa vue Basic settings.

  6. Cliquez sur le bouton à côté du champ Edit schema pour ouvrir le schéma.

  7. Cliquez deux fois sur le bouton pour ajouter deux colonnes de type String, respectivement nommées filename et filepath, qui contiendront respectivement les noms et chemins des fichiers à itérer. Cela fait, cliquez sur OK pour fermer le schéma.

  8. Dans la table Mapping, configurez les valeurs pour les colonnes filename et filepath. Dans cet exemple, la variable globale ((String)globalMap.get("tFTPFileList_1_CURRENT_FILE")) pour filename et la variable globale ((String)globalMap.get("tFTPFileList_1_CURRENT_FILEPATH")) pour filepath.

    Notez que vous pouvez renseigner les valeurs en appuyant sur les touches Ctrl + Espace, pour accéder à la liste des variables globales. Sélectionnez tFTPFileList_1_CURRENT_FILE et tFTPFileList_1_CURRENT_FILEPATH dans la liste.

  9. Double-cliquez sur le tLogRow pour ouvrir sa vue Basic settings, puis sélectionnez Table (print values in cells of a table) dans la zone Mode, pour une meilleure lisibilité des résultats.

Obtenir des fichiers du répertoire du serveur FTP vers un répertoire local

Configurez le composant tFTPGet pour récupérer uniquement les fichiers texte du répertoire racine du FTP vers un répertoire local.

  1. Double-cliquez sur le tFTPGet pour ouvrir sa vue Basic settings.

  2. Spécifiez les informations de connexion requises pour accéder au serveur FTP. Dans cet exemple, cochez la case Use an existing connection et, dans la liste Component list qui s'affiche, sélectionnez le composant de connexion afin de réutiliser les informations de connexion précédemment définies.

  3. Dans le champ Local directory, spécifiez le répertoire local dans lequel télécharger les fichiers et dossiers. Dans cet exemple, spécifiez D:/FtpDownloads.

  4. Dans le champ Remote directory, spécifiez le répertoire du serveur FTP sous lequel les fichiers et dossiers seront téléchargés. Dans cet exemple, spécifiez /, ce qui indique le répertoire racine du serveur FTP.

  5. Dans la table Files, cliquez sur le bouton [+] pour ajouter une ligne et, dans la colonne Filemask, saisissez *.txt, entre guillemets doubles, pour récupérer uniquement les fichiers texte du répertoire FTP vers le répertoire local.

Fermer la connexion au serveur FTP

Configurez le tFTPClose pour fermer la connexion au serveur FTP.

  1. Double-cliquez sur le tFTPClose pour ouvrir sa vue Basic settings.

  2. Dans la liste Component list, sélectionnez le composant tFTPConnection ouvrant la connexion que vous devez fermer. Dans cet exemple, seul un tFTPConnection est utilisé, il est donc sélectionné par défaut.

Exécuter le Job pour lister et obtenir les fichiers/dossiers du répertoire FTP

Après avoir configuré le Job et ses composants pour lister et obtenir les fichiers/dossiers du répertoire FTP, vous pouvez exécuter le Job et vérifier ses résultats d'exécution.

  1. Appuyez sur les touches Ctrl + S pour sauvegarder le Job.

  2. Appuyez sur F6 pour l'exécuter.

    Comme affiché ci-dessus, les noms et chemins d'accès aux fichiers du répertoire racine du serveur FTP sont affichés dans la console. Seuls les fichiers texte sont téléchargés dans le répertoire local spécifié.