tELTGreenplumMap - 6.1

Composants Talend Open Studio Guide de référence

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

Propriétés du tELTGreenplumMap

Les trois composants ELT Greenplum sont étroitement liés en ce qui concernent leurs conditions d'utilisation. Ces composants sont conçus pour prendre en charge les schémas Greenplum DB afin de générer des commandes Insert, dont des clauses, qui sont exécutés dans la table de sortie définie.

Famille du composant

ELT/Map/Greenplum

 

Fonction

Le composant tELTGreenplumMap permet de construire votre commande SQL graphiquement en utilisant la table fournie en entrée.

Objectif

Ce composant utilise les tables fournies en entrée pour alimenter les paramètres dans la commande mise en place. L'instruction peut inclure des joints internes ou externes qui peuvent être implémentés entre des tables ou entre une table et ses alias.

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.

Note

Lorsqu'un Job contient un Job parent et un Job enfant, si vous souhaitez utiliser une connexion existant entre les deux niveaux, par exemple pour partager la connexion créée par le Job parent avec le Job enfant, vous devez :

  1. Au niveau parent, enregistrer la connexion à la base de données à partager, dans la vue Basic settings du composant de connexion créant cette connexion.

  2. Au niveau enfant, utiliser un composant dédié à la création de connexion, afin de lire la connexion enregistrée.

Pour plus d'informations concernant le partage d'une connexion à travers différents niveaux de Jobs, consultez le Guide utilisateur du Studio Talend.

 

ELT Greenplum Map Editor

L'éditeur ELT du Mapper vous permet de définir le schéma de sortie ainsi que de construire graphiquement la commande SQL à exécuter. Le nom des colonnes du schéma peut être différent du nom des colonnes dans la base de données.

 

Style link

Sélectionnez le type d'affichage des liens.

Auto : par défaut, les liens entre les schémas d'entrée et de sortie et les paramètres du service Web sont en forme de courbe.

Bezier curve : les liens entre les schémas et les paramètres du service Web sont en forme de ligne.

Line : les liens entre les schémas et les paramètres du service Web sont en forme de lignes droites. Cette option vous permettra d'optimiser les performances.

 

Property type

Peut être Built-in ou Repository.

Depuis la version 5.6, les modes Built-In et Repository sont disponibles dans toutes les solutions de Talend.

 

 

Built-in : Propriétés utilisées ponctuellement.

 

 

Repository : Sélectionnez le fichier de propriétés du composant. Les champs suivants sont alors pré-remplis à l'aide des données collectées.

 

Host

Adresse IP du serveur de base de données.

 

Port

Numéro de port d'écoute du serveur de la base.

 

Database

Nom de la base de données

 

Username et Password

Données d'authentification de l'utilisateur de la base de données.

Pour saisir le mot de passe, cliquez sur le bouton [...] à côté du champ Password, 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.

Advanced settings

Additional JDBC parameters

Spécifiez des informations supplémentaires de connexion à la base de données créée. Cette option n'est pas disponible lorsque vous utilisez l'option Use an existing connection dans les Basic settings.

 

tStatCatcher Statistics

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

Dynamic settings

Cliquez sur le bouton [+] pour ajouter une ligne à la table. Dans le champ Code, saisissez une variable de contexte afin de sélectionner dynamiquement votre connexion à la base de données parmi celles prévues dans votre Job. Cette fonctionnalité est utile si vous devez accéder à plusieurs tables de bases de données ayant la même structure mais se trouvant dans différentes bases de données, en particulier lorsque vous travaillez dans un environnement dans lequel vous ne pouvez pas changer les paramètres de votre Job, par exemple lorsque votre Job doit être déployé et exécuté dans un Studio Talend indépendant.

La table Dynamic settings n'est disponible que si la case Use an existing connection est cochée dans la vue Basic settings. Lorsqu'un paramètre dynamique est configuré, la liste Component List devient inaccessible dans la vue Basic settings.

Pour des exemples sur l'usage des paramètres dynamiques, consultez Scénario 3 : Lire des données dans des bases de données MySQL à l'aide de connexions dynamiques basées sur les variables de contexte et Scénario : Lire des données à partir de différentes bases de données MySQL à l'aide de paramètres de connexion chargés dynamiquement. Pour plus d'informations concernant les Dynamic settings et les variables de contexte, consultez le Guide utilisateur du Studio Talend.

Global Variables

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

L'utilisation du composant tELTGreenplumMap est étroitement liée à celle des composants tELTGreenplumInput et tELTGreenplumOutput. Notez que le lien de sortie (output) à utiliser avec ces deux composants doit respecter strictement la syntaxe du nom de la table.

Note

Les composants ELT ne traitent pas le flux de données lui-même mais uniquement les informations du schéma.

Ajouter des clauses WHERE et d'autres clauses

Vous pouvez également restreindre une requête Select à l'aide d'une clause WHERE et/ou à l'aide d'autres clauses telles que GROUP BY, ORDER BY, etc., en cliquant sur le bouton Add filter row situé en haut de la table de sortie dans l'éditeur de map.

Pour ajouter une restriction à l'aide d'une clause WHERE, cliquez sur le bouton Add filter row et sélectionnez Add a WHERE clause dans le menu qui s'ouvre.

Pour ajouter une restriction à l'aide de GROUP BY, ORDER BY, etc., cliquez sur le bouton Add filter row et sélectionnez Add an other(GROUP...) clause dans le menu qui s'ouvre.

Veillez à ce que les composants d'entrée soient tous liés correctement au composant ELT Map pour garantir que les inclusions, jointures et clauses fonctionnent.

Scénario: Mapper les données à l'aide d'une jointure implicite simple

Dans ce scénario, un composant tELTGreenplumMap est utilisé afin de récupérer les données de la table source employee_by_statecode, comparer sa colonnestatecode à la table statecode et enfin mapper les colonnes désirées à partir des deux tables vers la table de sortie employee_by_state.

Avant l'exécution du Job, les trois tables employee_by_statecode, statecode et employee_by_state ressemblent à ceci :

Déposer les composants

  1. Déposez les composants suivants de la Palette dans l'espace de modélisation graphique : un tGreenplumConnection, deux tELTGreenplumInput, un tELTGreenplumMap, untELTGreenplumOutput, un tGreenplumCommit, untGreenplumInput et un tLogRow.

  2. Renommez le composant tGreenplumConnection en connect_to_greenplum_host, les deux tELTGreenplumInput en employee+statecode et statecode, le tELTGreenplumMap en match+map, le tELTGreenplumOutput en map_data_output, le tGreenplumCommit en commit_to_host, le tGreenplumInput en read_map_output_table et le tLogRow en show_map_data

  3. Reliez le composant tGreenplumConnection au tELTGreenplumMap à l'aide d'un lien OnSubjobOk.

    Reliez le composant tELTGreenplumMap au tGreenplumCommit à l'aide d'un lien OnSubjobOk.

    Reliez le composant tGreenplumCommit au tGreenplumInput à l'aide d'un lien OnSubjobOk.

  4. Reliez le composant tGreenplumInput au tLogRow à l'aide d'une connexion Row > Main.

    Les deux tELTGreenplumInput et le composant tELTGreenplumOutput seront connectés plus tard au tELTGreenplumMap, une fois les tables correspondantes définies.

Configurer les composants

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

    Dans les champs Host et Port, saisissez les variables de contexte pour le serveur Greenplum.

    Dans le champ Database, saisissez la variable de contexte pour la base de données Greenplum.

    Dans les champs Username et Password, saisissez les variables de contexte pour les paramètres d'authentification.

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

  2. Double-cliquez sur employee+statecode pour ouvrir sa vue Basic settings dans l'onglet Component.

    Dans le champ Default table name, saisissez le nom de la table source, nommée employee_by_statecode.

    Cliquez sur le bouton [...] près du champ Edit schema pour ouvrir l'éditeur de schéma.

    Cliquez sur le bouton [+] pour ajouter trois colonnes et appelez-les id, name et statecode, avec pour type respectivement INT4, VARCHAR, et INT4.

    Cliquez sur OK pour fermer l'éditeur de schéma.

    Reliez le employee+statecode au tELTGreenplumMap en utilisant le composant de sortie employee_by_statecode.

  3. Double-cliquez sur le statecode pour ouvrir sa vue Basic settings dans l'onglet Component.

    Dans le champ Default table name, saisissez le nom de la table, ici statecode.

  4. Cliquez sur le bouton [...] près du champ Edit schema pour ouvrir l'éditeur de schéma.

    Cliquez sur le bouton [+] pour ajouter deux colonnes et appelez-les state et statecode, avec pour type respectivement VARCHAR et INT4.

    Cliquez sur OK pour fermer l'éditeur de schéma.

    Reliez le statecode au tELTGreenplumMap en utilisant la sortie statecode.

  5. Cliquez le composant tELTGreenplumMap pour ouvrir sa vue Basic settings dans l'onglet Component.

    Cochez la case Use an existing connection.

  6. Cliquez sur le bouton [...] près du champ ELT Greenplum Map Editor pour ouvrir l'éditeur de mapping.

  7. Cliquez sur le bouton [+] en haut à gauche pour ouvrir la fenêtre de sélection de table.

    Sélectionnez les tables employee_by_statecode et statecode dans la liste et cliquez sur Ok.

    Les tables apparaissent sur le panneau gauche de l'éditeur.

  8. Dans le coin en haut à droite, cliquez sur le bouton [+] pour ajouter la table de sortie nommée employee_by_state.

    Cliquez sur OK pour fermer l'éditeur de map.

  9. Double-cliquez sur le tELTGreenplumOutput pour ouvrir sa vue Basic settings dans l'onglet Component.

    Dans le champ Default table name, saisissez le nom de la table de sortie, ici employee_by_state.

  10. Cliquez sur le bouton [...] près du champ Edit schema pour ouvrir l'éditeur de schéma.

    Cliquez sur le bouton [+] pour ajouter trois colonnes et appelez-les respectivement id, name et state, avec pour type respectivement INT4, VARCHAR, et VARCHAR .

    Cliquez sur OK pour fermer l'éditeur de schéma.

    Reliez le composant tELTGreenplumMap au tELTGreenplumOutput en utilisant la table de sortie employee_by_state.

    Cliquez sur OK dans la fenêtre pop-up pour récupérer le schéma du tELTGreenplumOutput.

    La table de sortie employee_by_state partage maintenant le même schéma que celui du tELTGreenplumOutput.

  11. Double-cliquez sur le composant tELTGreenplumMap pour ouvrir l'éditeur de map.

    Déposez la colonne statecode de la table employee_by_statecode dans la colonne du même nom, dans la table statecode, afin de chercher les enregistrements des deux tables ayant les mêmes valeurs statecode.

    Déposez les colonnes id et name de la table employee_by_statecode ainsi que la colonne statecode de la table statecode dans les colonnes de même nom dans la table de sortie employee_by_state.

    Cliquez sur OK pour fermer l'éditeur de mapping.

  12. Double-cliquez sur le tGreenplumInput pour ouvrir sa vue Basic settings dans l'onglet Component.

    Cochez la case Use an existing connection.

    Dans le champ Table name, saisissez le nom de la table source, appelée employee_by_state.

    Dans le champ Query, saisissez la commande "SELECT * FROM \"employee_by_state\"".

  13. Double-cliquez sur le composant tLogRow pour ouvrir sa vue Basic settings dans l'onglet Component.

    Dans la zone Mode, sélectionnez l'option Table (print values in cells of a table) pour une meilleure lisibilité.

Exécuter le Job

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

  2. Appuyez sur F6 pour exécuter le Job.

    Comme affiché ci-dessus, les données sur les employés ont été écrites dans la table employee_by_state, qui présente des informations géographiques concernant les employés.

Scénario associé

Pour des scénarios associés, consultez les scénarios :