Accéder au contenu principal Passer au contenu complémentaire

Propriétés du tHMap Standard

Ces propriétés sont utilisées pour configurer le tHMap s'exécutant dans le framework de Jobs Standard.

Le composant tHMap Standard appartient à la famille Processus en cours.

Ce composant est disponible dans Talend Data Management Platform, Talend Big Data Platform, Talend Real Time Big Data Platform, Talend Data Services Platform, Talend MDM Platform et Talend Data Fabric.

Basic settings

Open Map Editor

Cliquez sur le bouton [...] pour ouvrir l'assistant tHMap Structure Generate/Select dans lequel vous pouvez obtenir une structure de mappeur hiérarchique générée automatiquement à partir du schéma ou sélectionner une structure de mappeur hiérarchique existante. Vous devez effectuer cette action pour l'entrée et la sortie de mapping. Voici les différentes options pour la structure de sortie :

  • Generate hierarchial mapper structure based on the schema : lorsqu'il y a plusieurs liens en sortie du tHMap, la page affiche un message de confirmation vous informant que les structures du mappeur sont générées en fonction des liens de sortie.
  • Option Select an existing hierarchical mapper structure : vous pouvez relier plusieurs sorties basées sur le payload au tHMap. S'il n'y a qu'une seule connexion de type payload, vous pouvez cocher la case Allow support for multiple output connections. Le mapping de sortie généré hérite de la structure du payload existante.

Si le Studio Talend détecte plusieurs liens de sortie disponibles, la fenêtre affiche les différentes options de structure de sortie mais pas la case Allow support for multiple output connections.

S'il n'existe aucun lien d'entrée ou de sortie, la page Structure Selection s'ouvre.

Map Path

Spécifiez le mapping à effectuer.

Si le mapping a été créé à partir de l'assistant décrit précédemment, le chemin est automatiquement configuré.

Si vous souhaitez utiliser un mapping existant, cliquez sur le bouton [...] à côté du champ Map Path pour ouvrir une boîte de dialogue dans laquelle vous pouvez sélectionner le mapping à utiliser. Cliquez sur le bouton [...] à côté du Open Map Editor pour travailler sur le mapping sélectionné. Notez que ce mapping doit avoir été précédemment créé dans la perspective Mapping.

Read Input As

Sélectionnez le bouton radio correspondant à la manière dont vous souhaitez que l'entrée soit lue. Selon votre mapping, seules certaines options peuvent être disponibles.

  • Data Integration columns (défaut) : utilisez cette option si vous travaillez avec les métadonnées de Talend Data Integration.

  • Single column : utilisez cette option si vous travaillez avec les métadonnées de Talend Data Mapper.

Write Output As

Sélectionnez le bouton radio correspondant à la manière dont vous souhaitez écrire la sortie. Selon votre mapping, seules certaines options peuvent être disponibles.

  • Data Integration columns (défaut) : utilisez cette option si vous travaillez avec les métadonnées de Talend Data Integration.

  • String (single column) : utilisez cette option si les données de la colonne de sortie sont de type String.

  • Byte array (single column) : utilisez cette option si les données de la colonne de sortie sont de type Byte array.

  • InputStream (single column) : utilisez cette option si vous travaillez avec les métadonnées de Talend Data Mapper et que les données d'entrée sont un flux.

  • Document (single column) : utilisez cette option si la colonne de sortie est de type Document.

    Note InformationsRemarque : Si vous avez sélectionné Document (single column) dans un Job créé dans un Studio Talend en version 6.5 ou antérieure et que vous souhaitez importer ce Job dans une version 7.0 ou ultérieure, assurez-vous d'avoir mis à jour la représentation de sortie du mapping à XML avant d'exécuter le Job. Les versions 7.0 ou postérieures n'acceptent que le type de sortie Document avec représentation XML.

Advanced settings

Map Variable

Dans ce champ, saisissez une variable de contexte contenant le chemin d'accès à un mapping. Par exemple, si vous saisissez ${context.mymapfile}, mymapfile peut alors pointer vers différents fichiers de mapping lors de l’exécution. Cela peut être utile si vous souhaitez utiliser différents mappings sans avoir à créer un Job à chaque fois.

Dans l'onglet Contexts, la valeur doit être un chemin relatif. Par exemple, si vous avez un mapping nommé mapA dans le dossier Maps/FolderA, votre variable de contexte doit avoir la valeur "FolderA/mapA.xml". Vous pouvez écrire le chemin d'accès avec ou sans l'extension .xml.

Notez que tous les mappings qui peuvent être référencés par la variable de contexte doivent être présents dans le même projet. Ainsi, lorsque qu'il est construit, le Job contient tous les mappings candidats et il est possible de passer d'un mapping à un autre lors de l’exécution.

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

Alternate contextual Map(s)

Dans la liste déroulante, sélectionnez un ou plusieurs mapping(s) pouvant être référencé(s) par la variable de contexte ajoutée dans Map Variable lors de l'exécution. Lorsque le Job est construit, il contient le ou les mapping(s) contextuel(s) alternatif(s) sélectionné(s). Pour un scénario d'exemple concernant les mappings alternatifs, consultez Spécifier une variable de mapping et un mapping alternatif dans le tHMap.

Map each row (disable virtual component)

Cochez cette case pour que le tHMap traite l'entrée comme une seule ligne de sortie. Cela empêche le tHMap de mettre en mémoire tampon les lignes d'entrée avant de les passer en aval.

Cela peut être utile, par exemple, lorsque vous utilisez le composant tHMap avec un tSAPIDocReceiver en entrée et un composant prenant un schéma en compte en sortie, car dire au tSAPIDocReceiver de continuer à écouter indéfiniment empêcherait des lignes d'être passées.

Si le tHMap est utilisé avec un composant d'entrée pouvant rester ouvert pour recevoir des entrées en continu, comme le tRestRequest, cette option doit être sélectionnée. Elle permet au tHMap de traiter directement les entrées reçues.

Emit empty payload Cochez cette case pour envoyer une ligne vide dans la connexion de sortie lorsqu'il n'y a pas de données de sortie. Cela peut se produire lorsqu'il n'y a pas d'entrée ou que l'entrée entière est exclue du filtre dans la map. Si cette case est décochée, aucune ligne n'est envoyée dans la connexion de sortie.

Cette option est appliquée uniquement lorsque la case Map each row est décochée.

Note InformationsRemarque : Cette option est disponible uniquement lorsque vous avez installé la mise à jour mensuelle R2021-05 du Studio ou une mise à jour plus récente fournie par Talend. Pour plus d'informations, contactez votre administrateur ou administratrice.

Exception Threshold

Talend Data Mapper retourne un statut d'exécution et une valeur de sévérité pouvant être de niveau OK, Info, Warning, Error ou Fatal. En configurant le seuil d'exception, vous pouvez spécifier le niveau de sévérité auquel est retournée une exception et permettre aux composants suivants de détecter les erreurs dans les cas où la valeur n'est pas celle par défaut, Fatal.

Dans la liste déroulante, sélectionnez le niveau de sévérité auquel une exception est retournée durant l'exécution d'un mapping.

  • Fatal (défaut) : une exception est retournée lorsqu'une erreur fatale (Fatal) survient.

  • Error : une exception est retournée lorsqu'une erreur (de niveau Error ou supérieur) survient.

  • Warning : une exception est retournée lorsqu'un avertissement (Warning ou une erreur de niveau supérieur) survient.

Notez que pour vous aider à diagnostiquer les problèmes de votre mapping, lorsque vous testez ce mapping dans votre Studio, chaque erreur de niveau Warning ou supérieur est écrite dans la vue console, peu importe le réglage défini dans l'option Exception Threshold.

tStatCatcher Statistics

Cochez cette case pour collecter les métadonnées de traitement du Job au niveau du Job ainsi qu'au niveau de chaque composant.

Variables globales

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, lorsque le composant contient cette case.

MapExecutionStatus : retourne un objet de la classe org.talend.transform.runtime.common.MapExecutionStatus

EXECUTION_SEVERITY : Récupère la valeur numérique de Overall Severity. Cette variable est une variable After et retourne un entier.

Une variable Flow fonctionne durant 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. À partir de cette liste, vous pouvez choisir la variable que vous souhaitez utiliser.

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

Utilisation

Règle d'utilisation

Le composant tHMap est utilisé pour les Jobs nécessitant un mapping de données complexes provenant de différentes sources.

Les connexions d'entrée et de sortie peuvent utiliser les métadonnées de Talend Data Mapper, de Talend Data Integration ou une combinaison des deux. Chaque connexion est indépendante.

Lorsque vous ouvrez l'éditeur de mapping pour la première fois pour chaque connexion, il peut générer une définition de structure Talend Data Mapper basée sur le schéma d'un composant de Talend Data Integration, ou vous permettre de sélectionner une structure Talend Data Mapper si vous utilisez les métadonnées de Talend Data Mapper. L'éditeur crée un mapping avec la structure sélectionnée ou générée.

Ce composant peut être utilisé de plusieurs manières :

  • Vous pouvez travailler avec un mapping Talend Data Mapper et des structures basées sur les métadonnées de Talend Data Mapper. Dans ce cas, les composants (par exemple, tFileInputRaw et tFileOutputRaw) passent les données dans une seule colonne dans une seule ligne.

    Pour un exemple de cette utilisation, consultez Utilisation de métadonnées.

  • Vous pouvez travailler avec les métadonnées de Talend Data Integration. Dans ce cas, connectez un composant d'entrée et un composant de sortie au tHMap, puis ouvrez le Map Editor sans spécifier de chemin de mapping.

    Pour un exemple de cette utilisation, consultez Utilisation de métadonnées.

  • Vous pouvez travailler avec une combinaison de métadonnées de Talend Data Mapper et de la solution de Talend Data Integration.

    Pour un exemple de cette utilisation, consultez Transformation d'un schéma d'intégration de données en un schéma complexe.

  • Vous pouvez utiliser des fichiers d'entrée bruts et des liens d'entrée basés sur les schémas pour le tHMap.

    Pour des exemples de cette utilisation, consultez Générer la sortie à l'aide d'un tHMap avec plusieurs schémas d'entrée et Générer la sortie à l'aide d'un tHMap comprenant plusieurs entrées Payload.

  • Vous pouvez utiliser des tables de bases de données créées dans le Studio Talend et connecter ces tables en entrée du tHMap. Si vos Jobs utilisent la fonctionnalité dépréciée DatabaseLookup, consultez Migrer de DatabaseLookup au tHMap pour connaître les étapes de migration vers le tHMap.
  • Vous pouvez relier le tHMap à plusieurs connexions de bases de données de sortie. Pour migrer des Jobs précédemment créés à l'aide de fonctions d'entrée et sortie de bases de données, consultez Migrer des fonctions de bases de données d'entrée et de sortie vers des connexions avec plusieurs sorties du tHMap.
  • Vous pouvez relier le tHMap à plusieurs connexions de sortie à l'aide de fichiers bruts, connexions basées sur des schémas ou basées payloads.
  • Le scénario Gestion des erreurs montre comment traiter les conditions d'erreur à l'aide du composant tHMap.

  • Pour un composant tHMap avec une seule connexion, l'option Wrap Structure (permet au tHMap de supporter plusieurs entrées/sorties) n'est pas cochée par défaut, pour les options suivantes : Generate from Schema (basée schéma) et Select From Existing Structure (de type payload).

Exemple d'utilisation avancée
  • Pour la structure de sortie du tHMap, vous pouvez également utiliser la fonction WriteURL dans Talend Data Mapper. Si la structure de sortie du tHMap comprend une connexion à une métadonnée ou à un composant Talend Data Integration et une fonction WriteURL, la valeur de la fonction WriteURL passe la première. La métadonnée ou le composant Talend Data Integration ne reçoit aucune donnée du tHMap.
  • En utilisant le tHMap, vous pouvez tester le mapping Talend Data Mapper généré en mode Test Run.

    Pour utiliser la fonctionnalité, assurez-vous d'avoir un document d'entrée compatible de format CSV avec les propriétés suivantes :
    • le séparateur par défaut est la virgule (,) ;
    • le séparateur de lignes par défaut est utilisé pour les nouvelles lignes ;
    • le fichier d'entrée ne contient pas de ligne d'en-tête ;
    • le fichier de sortie ne contiendra pas de ligne d'en-tête.

    Spécifiez votre document d'entrée dans Show Document > Select Sample Input Document > Select Resource/Import Document.

    Pour exécuter la transformation, cliquez sur Test Run. Après exécution, votre document de sortie généré est au format CSV. Vous pouvez le sauvegarder en cliquant sur Save to File. Pour configurer cette fonctionnalité, consultez Préférences de test dans le Guide d'utilisation de Talend Data Mapper.

    Note InformationsConseil : Si votre mapping contient plusieurs entrées et sorties, spécifiez un document d'entrée pour chaque ligne ou élément de mapping ReadURL. Pour l'exécuter, utilisez l'option Test Run to External Output et spécifiez une URL de fichier pour chaque WriteURL dans la structure de sortie du mapping.
Limitations
  • Si vous avez créé un tHMap avec plusieurs liens d'entrée ou de sortie, vous pouvez ajouter des liens d'entrée ou de sortie uniquement basés sur des schémas.
  • Lorsque vous ajoutez un nouveau lien avec une colonne unique, vous ne pouvez l'associer à une structure de payload. Le mécanisme de regénération de mapping ne génère qu'un enregistrement contenant un élément pour le nouveau lien.
  • Si vous renommez un lien de type payload, générez à nouveau son mapping correspondant et sa structure en double-cliquant sur le tHMap avant de fermer l'éditeur du Job. La structure de l'enregistrement renommée contient la structure du payload.
  • Si vous avez fermé le Job avant de générer à nouveau un lien renommé de type payload, le système traite le lien comme s'il était de type schéma. La structure du payload ne s'associe pas au nouveau nom.
  • Un Job contenant un tHMap ne peut être déployé en tant que bundle OSGi avec l'ancien moteur d'exécution basé Eclipse.
Utilisation avec Talend Runtime Si vous souhaitez déployer un Job ou une Route contenant un composant de mapping de données avec Talend Runtime, vous devez d'abord installer la fonctionnalité Talend Data Mapper. Pour plus d'informations, consultez Utiliser Talend Data Mapper avec Talend Runtime.
Note InformationsRemarque :
  • Pour plus d'informations concernant les transformations effectuées à l'aide de Talend Data Mapper, consultez le Guide d'utilisation de Talend Data Mapper (en anglais).

  • Lorsque vous utilisez des représentations autres que Map, CSV, Avro, XML et Cobol, exécuter ce composant avec l'ancien conteneur d'exécution basé Eclipse peut créer des dossiers temporaires, qui ne sont pas automatiquement supprimés après arrêt du conteneur d'exécution. Si vous exécutez Talend Data Mapper fréquemment, ces dossiers risquent de prendre beaucoup de place et conduire à une erreur de mémoire disque. Lorsque cette erreur survient, l'exécution échoue. Pour éviter cela, il est recommandé d'effectuer un nettoyage régulier des dossiers. Pour plus d'informations, consultez Nettoyer les fichiers et dossiers temporaires.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.