tGSPut - 6.1

Composants Talend Guide de référence

EnrichVersion
6.1
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

Avertissement

Ce composant est disponible dans le Palette du Studio si vous avez souscrit à l'une des solutions Big Data de Talend.

Propriétés du tGSPut

Famille du composant

Big Data / Google Cloud Storage

 

Fonction

Le composant tGSPut met un fichier d'un dossier local dans Google Cloud Storage.

Objectif

Ce composant est conçu pour charger des fichiers dans Google Cloud Storage afin que vous puissiez les gérer avec Google Cloud Storage.

Basic settings

Use an existing connection

Cochez cette case et sélectionnez le composant de connexion adéquat à partir de la liste Component List pour réutiliser les paramètres d'une connexion que vous avez déjà définie.

 

Access Key et Secret Key

Saisissez les informations d'authentification obtenues de Google pour envoyer des requêtes à Google Cloud Storage.

Ces clés peuvent être consultées dans la vue Interoperable Access, sous l'onglet Google Cloud Storage du projet dans la console d'API de Google.

Pour saisir la clé secrète, cliquez sur le bouton [...] à côté du champ Secret key, puis, dans la boîte de dialogue qui s'ouvre, saisissez le mot de passe entre guillemets doubles puis cliquez sur OK afin de sauvegarder les paramètres.

Pour plus d'informations sur la clé d'accès et la clé secrète, rendez-vous sur https://developers.google.com/storage/docs/reference/v1/getting-startedv1?hl=en/ (en anglais) et consultez la description des clés développeur.

Avertissement

Les champs Access Key et Secret Key ne sont disponibles que si la case Use an existing connection n'est pas cochée.

 

Bucket name

Saisissez le nom du bucket dans lequel vous souhaitez charger les fichiers.

 

Local directory

Saisissez le chemin d'accès complet ou parcourez votre système vers le dossier local contenant les fichiers à charger.

 

Google Storage directory

Saisissez le nom du dossier Google Storage dans lequel vous souhaitez charger des fichiers.

 

Use files list

Cochez cette case et renseignez la table Files.

  • Filemask : saisissez un nom ou un masque de fichier à l'aide de caractères spéciaux (*) ou d'expressions régulières.

  • New name: saisissez le nom à donner au fichier après le chargement.

 

Die on error

Cette case est décochée par défaut afin d'ignorer les lignes en erreur et de terminer le traitement avec les lignes sans erreur.

Advanced settings

tStatCatcher Statistics

Cochez cette case pour collecter les données de log au niveau du Job ainsi qu'au niveau de chaque composant.

Global Variables

NB_LINE : nombre de lignes lues par un composant d'entrée ou passées à un composant de sortie. Cette variable est une variable After et retourne un entier.

ERROR_MESSAGE : message d'erreur généré par le composant lorsqu'une erreur survient. Cette variable est une variable After et retourne une chaîne de caractères. Cette variable fonctionne uniquement si la case Die on error est décochée, si le composant a cette option.

Une variable Flow fonctionne durant l'exécution d'un composant. Une variable After fonctionne après l'exécution d'un composant.

Pour renseigner un champ ou une expression à l'aide d'une variable, appuyez sur les touches Ctrl+Espace pour accéder à la liste des variables. A partir de cette liste, vous pouvez choisir la variable que vous souhaitez utiliser.

Pour plus d'informations concernant les variables, consultez le Guide utilisateur du Studio Talend.

Utilisation

Ce composant peut être utilisé avec d'autres composants Google Cloud Storage, par exemple le tGSGet.

Log4j

Si vous utilisez une solution Talend soumise à souscription, l'activité de ce composant peut être journalisée avec la fonctionnalité log4j. Pour plus d'informations sur cette fonctionnalité, consultez le Guide utilisateur du Studio Talend.

Pour plus d'informations sur les niveaux de logs du log4j, consultez la documentation d'Apache : http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html (en anglais).

Limitation

n/a

Scénario : Gérer des fichiers avec Google Cloud Storage

Le scénario suivant permet de créer un Job chargeant des fichiers à partir d'un répertoire local dans un bucket dans Google Storage. Ce Job permet ensuite d'effectuer des opérations de copie, de déplacement et de suppression sur ces fichiers, puis de lister et afficher les fichiers dans leurs buckets respectifs dans la console.

Prérequis : Vous devez posséder un compte Google Cloud Storage et avoir créé trois buckets dans le même répertoire Google Cloud Storage. Dans cet exemple, les buckets créés sont bighouse, bed_room et study_room.

Déposer et relier les composants

Afin de créer ce Job, procédez comme suit :

  1. Déposez les composants suivants de la Palette dans l'espace de modélisation graphique : un tGSConnection, un tGSPut, deux tGSCopy, un tGSDelete, un tGSList, un tIterateToFlow, un tLogRow et un tGSClose.

  2. Reliez le tGSConnection au tGSPut à l'aide d'un lien Trigger > On Subjob Ok.

  3. Reliez le tGSPut au premier tGSCopy à l'aide d'un lien Trigger > On Subjob Ok.

  4. Reliez ensuite le premier tGSCopy au second tGSCopy, le tGSCopy au tGSDelete, le tGSDelete au tGSList et le tGSList au tGSClose à l'aide de liens Trigger > On Subjob Ok.

  5. Reliez le tGSList au tIterateToFlow à l'aide d'un lien Row > Iterate.

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

Configurer les composants

Ouvrir une connexion à Google Cloud Storage

  1. Double-cliquez sur le tGSConnection afin d'ouvrir sa vue Basic settings dans l'onglet Component.

  2. Naviguez vers la console d'API de Google dans votre navigateur afin d'accéder au projet Google contenant les services Cloud Storage que vous souhaitez utiliser.

  3. Cliquez sur Google Cloud Storage > Interoperable Access afin d'ouvrir la vue correspondante et copiez la clé d'accès et la clé secrète dans votre presse-papier.

  4. Dans la vue Component du Studio, collez la clé d'accès et la clé secrète dans les champs correspondants, respectivement Access Key et Secret Key.

Charger les fichiers dans Google Cloud Storage

  1. Double-cliquez sur le tGSPut afin d'ouvrir sa vue Basic settings dans l'onglet Component.

  2. Cochez la case Use an existing connection puis sélectionnez la connexion que vous avez configurée précédemment.

  3. Dans le champ Bucket name, saisissez le nom du bucket dans lequel vous souhaitez charger les fichiers, bighouse dans cet exemple.

  4. Dans le champ Local directory, parcourez votre système vers le dossier contenant les fichiers à charger, D:/Input/House dans cet exemple.

    La capture d'écran suivante montre les fichiers contenus dans ce dossier :

  5. Laissez les autres paramètres tels qu'ils sont.

Copier tous les fichiers d'un bucket à un autre

  1. Double-cliquez sur le premier tGSCopy afin d'ouvrir sa vue Basic settings dans l'onglet Component.

  2. Cochez la case Use an existing connection puis sélectionnez la connexion que vous avez configurée précédemment.

  3. Dans le champ Source bucket name, saisissez le nom du bucket à partir duquel vous souhaitez copier les fichiers, bighouse dans cet exemple.

  4. Cochez la case Source is a folder. Tous les fichiers contenus dans le bucket bighouse sont copiés.

  5. Dans le champ Target bucket name, saisissez le nom du bucket vers lequel vous souhaitez copier les fichiers, bed_room dans cet exemple.

  6. Sélectionnez Copy dans la liste Action.

Déplacer un fichier d'un bucket à un autre et les renommer

  1. Double-cliquez sur le second tGSCopy afin d'ouvrir sa vue Basic settings dans l'onglet Component.

  2. Cochez la case Use an existing connection puis sélectionnez la connexion que vous avez configurée précédemment.

  3. Dans le champ Source bucket name, saisissez le nom du bucket contenant le fichier que vous souhaitez déplacer, bighouse dans cet exemple.

  4. Dans le champ Source object key, saisissez la clé de l'objet à déplacer, computer_01.txt dans cet exemple.

  5. Dans le champ Target bucket name, saisissez le nom du bucket vers lequel vous souhaitez déplacer le fichier, study_room dans cet exemple.

  6. Sélectionnez Move dans la liste Action. Le fichier source défini, computer_01.txt, est déplacé du bucket bighouse vers le bucket study_room.

  7. Cochez la case Rename. Dans le champ New name, saisissez un nouveau nom pour le fichier déplacé, laptop.txt dans cet exemple.

  8. Laissez les autres paramètres tels qu'ils sont.

Supprimer un fichier dans un bucket

  1. Double-cliquez sur le tGSDelete, afin d'ouvrir sa vue Basic settings dans l'onglet Component.

  2. Cochez la case Use an existing connection puis sélectionnez la connexion que vous avez configurée précédemment.

  3. Cochez la case Delete object from bucket list. Dans la table Bucket, saisissez les informations du fichier que vous souhaitez supprimer.

    Dans cet exemple, le fichier computer_03.csv est supprimé du bucket bed_room dont les fichiers sont copiés depuis le bucket bighouse.

Lister les fichiers contenus dans les trois buckets

  1. Double-cliquez sur le tGSList afin d'ouvrir sa vue Basic settings dans l'onglet Component.

  2. Cochez la case Use an existing connection puis sélectionnez la connexion que vous avez configurée précédemment.

  3. Cochez la case List objects in bucket list. Dans la colonne Bucket name de la table Bucket, saisissez le nom des trois buckets, bighouse, study_room et bed_room.

  4. Double-cliquez sur le tIterateToFlow afin d'ouvrir sa vue Basic settings dans l'onglet Component.

  5. Cliquez sur le bouton Edit schema afin de définir les données qui sont passées au tLogRow.

    Dans cet exemple, ajoutez deux colonnes, bucketName et key, de type Object.

  6. La table Mapping est automatiquement renseignée avec les colonnes définies.

    Dans la colonne Value, saisissez globalMap.get("tGSList_2_CURRENT_BUCKET") dans la ligne bucketName et globalMap.get("tGSList_2_CURRENT_KEY") dans la ligne key, respectivement. Vous pouvez également appuyer sur Ctrl + Espace puis choisir les variables appropriées.

  7. Double-cliquez sur le tLogRow afin d'ouvrir sa vue Basic settings dans l'onglet Component.

  8. Sélectionnez l'option Table (print values in cells of a table) pour un meilleur affichage des résultats.

Fermer la connexion à Google Cloud Storage

  1. Double-cliquez sur le tGSClose afin d'ouvrir sa vue Basic settings dans l'onglet Component.

  2. Dans la liste Component List, sélectionnez la connexion que vous souhaitez fermer.

Sauvegarder et exécuter le Job

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

  2. Appuyez sur F6 ou cliquez sur Run dans l'onglet Run afin d'exécuter le Job.

    Les fichiers contenus dans les trois buckets s'affichent. Comme attendu, les fichiers du bucket bighouse sont d'abord copiés vers le bucket bed_room. Ensuite, le fichier computer_01.txt du bucket bighouse est déplacé vers le bucket study_room puis renommé laptop.txt. Enfin, le fichier computer_03.csv est supprimé du bucket bed_room.