Configurer les composants - 6.4

tMap

author
Talend Documentation Team
EnrichVersion
6.4
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 ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Création et développement > Systèmes tiers > Composants Processing (Intégration) > tMap
Gouvernance de données > Systèmes tiers > Composants Processing (Intégration) > tMap
Qualité et préparation de données > Systèmes tiers > Composants Processing (Intégration) > tMap
EnrichPlatform
Studio Talend

Procédure

  1. Double-cliquez ensuite sur le composant tMap pour ouvrir l'éditeur graphique de mapping.
  2. La table Output (qui s'est créée automatiquement quand vous avez lié le tMap au tMysqlOutput) sera composée des lignes concordantes du flux de référence (large_data_volume) et du flux principal (people_age).
    Sélectionnez les lignes du flux principal que vous voulez passer en sortie et faites les glisser vers la table de sortie (dans le coin supérieur droit de l'éditeur de mapping) : ils y seront copiés.
    Dans cet exemple, la sélection des lignes du flux principal inclut les champs suivants : id, first_name, last_Name et age.
    Dans la table de référence, la colonne city est sélectionnée.
    Faites glisser les colonnes sélectionnées des tables d'entrée (people et large_volume) vers la table de sortie.
  3. Créez maintenant la jointure entre le flux principal et le flux de référence.
    Sélectionnez la colonne age dans la table du flux principal (en haut) et faites-la glisser vers la colonne age de la table du flux de référence (large_volume dans cet exemple).
    L'icône d'une clé apparaît à côté de l'expression liée dans la table de référence. La jointure est maintenant établie.
  4. Cliquez sur le bouton tMap Settings puis sur le bouton [...] correspondant à Lookup Model et sélectionnez l'option Reload at each row dans la boîte de dialogue [Options] pour que la base de référence soit chargée à nouveau pour chaque nouvelle ligne traitée.
  5. De la même manière, paramétrez Match Model comme All matches dans la table de référence pour récupérer dans le flux de sortie toutes les occurrences de age qui correspondent.
  6. Implémentez ensuite le filtre, établi à partir de la colonne age, dans la table de référence. Le champ GlobalMapKey est créé automatiquement lorsque vous sélectionnez l'option Reload at each row. Vous pouvez donc utiliser cette expression pour filtrer les données de référence de manière dynamique, pour que seules les informations pertinentes soient chargées avec le flux principal.
    Comme l'a souligné l'introduction de ce scénario, le flux de données principal contient uniquement les personnes dont l'âge est de 40 ou 60. Pour éviter de charger toutes les lignes de la table de référence, dont les âges sont différents de 40 et 60, vous pouvez utiliser la valeur âge du flux principal comme variable globale pour alimenter le filtre de référence.
  7. Glissez la colonne Age de la table de flux principal vers le champ Expr. dans la table de référence.
  8. Renseignez ensuite le nom de la variable dans le champ globalMap Key, en utilisant une expression. Dans cet exemple, l'expression est : "people.Age". Cliquez sur le bouton OK pour enregistrer les paramètres de mapping et retourner dans l'éditeur graphique.
  9. Pour terminer l'implémentation du filtrage dynamique du flux de référence, vous devez maintenant ajouter une clause WHERE à la requête de la base de données d'entrée.
  10. A la fin du champ Query, juste après la commande Select, entrez la clause de type WHERE suivante :
    WHERE AGE ='"+((Integer)globalMap.get("people.Age"))+"'".
  11. Assurez-vous que le type correspond à la colonne utilisée comme variable. Dans cet exemple, la donnée Age est du type Integer. Veillez aussi à utiliser la variable de la manière dont vous l'avez paramétrée dans le champ globalMap key de l'éditeur de mapping.
  12. Double-cliquez ensuite sur le composant tMysqlOutput et vérifiez que le schéma correspond aux paramètres de mapping.
  13. Cochez la case Use an existing connection afin d'utiliser la connexion créée.
  14. Spécifiez dans le champ Table le nom de la table cible.
    Dans les listes Action on table et Action on data, sélectionnez les actions que vous souhaitez effectuer.