Gestion des références - 6.1

Talend MDM Platform Studio Guide utilisateur

EnrichVersion
6.1
EnrichProdName
Talend MDM Platform
task
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

Avertissement

Pour les utilisateurs de Big Data uniquement :

Cette fonction n'est pas disponible dans la version MapReduce de tMap.

Le composant tMap offre différents types de chargements possibles des données de référence pour vous adapter aux différents types de traitements, ainsi que pour gérer les problèmes de performance lorsque vous devez traiter de gros volumes de données dans vos bases de données de référence.

  • Load once : Paramètre par défaut. Sélectionnez cette option pour charger la totalité du flux de référence avant de traiter le flux principal. Sélectionnez cette option si un nombre important de données de votre flux principal est sollicité par votre flux de référence (lookup), ou si vos données de référence proviennent d'un fichier qui peut être chargé facilement.

  • Reload at each row : Le flux de référence est chargé à chaque ligne. Sélectionnez cette option lorsque vous utilisez une base de données de référence de gros volume, et que le flux principal est très petit. Notez que cette option vous permet d'utiliser des paramètres dynamiques de variable (de votre composant base de données), notamment la commande WHERE, pour modifier à la volée le flux de référence au moment où il est chargé, et avant que le flux principal ne soit traité. Cette option peut être considérée comme l'équivalent de l'option Store temp data, permettant de stocker les données de référence dans un dossier temporaire sur votre disque dur, disponible pour les fichiers de référence.

  • Reload at each row (cache) : Les expressions (de la table de référence) sont d'abord évaluées et interrogées dans le cache. Le résultat des jointures ayant déjà été créées, est stocké dans le cache afin d'éviter de charger les mêmes résultats une deuxième fois. Cette option permet d'optimiser le temps de traitement et d'améliorer les performances de traitement du composant tMap.

Note

Notez que, pour le moment, vous ne pouvez pas utiliser les options Reload at each row (cache) et Store temp data en même temps.

Pour configurer le mode de chargement du flux de référence :

  1. Cliquez sur le bouton tMap settings en haut de la table de référence (lookup) pour afficher le tableau des propriétés.

  2. Cliquez sur le champ Value correspondant à l'option Lookup Model, et cliquez sur le bouton [...] pour ouvrir la boîte de dialogue [Options].

  3. Dans la boîte de dialogue [Options], double-cliquez sur le mode de chargement souhaité, ou sélectionnez-le et cliquez sur OK pour activer l'option et fermer la boîte de dialogue.

Pour un exemple d'utilisation de ces options, consultez la section tMap du Guide de référence des Composants Talend.

Note

Lorsque vous utilisez une table en flux de référence, il est conseillé d'ouvrir une connexion à la base de données au début de votre Job, afin d'optimiser les performances.

Recharger des données à chaque ligne

Comme expliqué ci-dessus, l'option Reload at each row est utilisée pour lire tous les enregistrements d'un flux Lookup pour chaque enregistrement du flux principal. En général, cette approche augmente le temps d'exécution du Job mais est recommandée si les flux principal et Lookup remplissent les conditions suivantes :

  1. le flux principal contient beaucoup moins de lignes que le flux Lookup (par exemple avec un ratio de 1000 ou plus).

  2. le composant d'entrée du flux de référence (Lookup) est un composant de base de données, comme un tMysqlInput.

L'avantage de cette approche, lorsque les deux conditions sont satisfaites, est de pouvoir gérer le nombre croissant de données de référence au fil du temps. En effet, il est possible d'exécuter des requêtes sur les données du flux principal dans le composant de base de données, afin de sélectionner les données de référence correspondant à chaque enregistrement du flux principal, comme dans l'exemple suivant utilisant des données de référence d'une base de données MySQL.

Les schémas du flux principal, du flux de référence et du flux de sortie se présentent comme suit :

Dans la base de données MySQL, vous pouvez sélectionner uniquement les données correspondant aux valeurs de la colonne id du flux principal. Pour ce faire, procédez comme suit :

  1. Double-cliquez sur le composant tSetGlobalVar pour ouvrir sa vue Component.

  2. Cliquez sur le bouton [+] pour ajouter une ligne et, dans la colonne Key, saisissez id. Dans la colonne Value, saisissez row1.id.

  3. Double-cliquez sur le tMysqlInput pour ouvrir sa vue Component.

  4. Dans le champ Query, saisissez la requête pour sélectionner les données correspondant à la colonne id du flux principal. Dans cet exemple, la requête se présente comme suit :

    Select * from person where id="+(Integer)globalMap.get("id")

Pour plus d'informations sur les composants utilisés dans cet exemple, consultez le Guide de référence des Composants Talend.