tGenKey - 6.3

Composants Talend Guide de référence

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

Fonction

Le composant tGenKey vous permet d'appliquer différents types d'algorithmes sur chaque colonne d'entrée et d'utiliser les résultats calculés pour générer une clé fonctionnelle. Ces algorithmes peuvent être des algorithmes clé ou des algorithmes facultatifs.

Les valeurs retournées par les algorithmes clé seront concaténées, selon l'ordre des colonnes dans la table Key composition.

Objectif

Le composant tGenKey génère une clé fonctionnelle à partir des colonnes d'entrée, en appliquant différents types d'algorithmes sur chaque colonne et en regroupant les résultats calculés en une seule clé.

Selon la solution Talend que vous utilisez, ce composant peut être utilisé dans un framework de Jobs, dans plusieurs, ou dans tous les frameworks :

Propriétés du tGenKey

Famille du composant

Data Quality

 

Basic settings

Schema et Edit schema

Un schéma est une description de lignes, il définit le nombre de champs (colonnes) qui sont traités et passés au composant suivant. Le schéma est soit local (Built-In), soit distant dans le Repository.

Cliquez sur le bouton Sync columns pour récupérer le schéma du composant précédent.

 

 

Built-In : Le schéma est créé et conservé ponctuellement pour ce composant seulement. Voir également le Guide utilisateur du Studio Talend.

 

 

Repository : Le schéma existe déjà et il est stocké dans le Repository. Ainsi, il peut être réutilisé. Voir également le Guide utilisateur du Studio Talend.

 

Cliquez sur l'icône d'import pour importer des clés de bloc des règles de mise en correspondance définies et sauvegardées dans le référentiel du Studio.

Lorsque vous cliquez sur l'icône d'import, un assistant [Match Rule Selector] s'ouvre pour vous permettre d'importer vos clés de bloc depuis les règles de mise en correspondance listées dans le référentiel du Studio et les utiliser dans votre Job.

Vous pouvez importer des clés de bloc uniquement depuis les règles de mise en correspondance définies avec l'algorithme VSR et sauvegardées dans le référentiel du studio. Pour plus d'informations, consultez Import de règles de mise en correspondance depuis le référentiel du studio.

Algorithm

Column

Sélectionnez la (les) colonne(s)du flux principal sur laquelle vous souhaitez définir certains algorithmes pour définir la clé fonctionnelle.

Note

Lorsque vous sélectionnez une colonne de dates sur laquelle appliquer un algorithme ou un algorithme de mise en correspondance, vous pouvez choisir ce que vous souhaitez comparer dans le format de date.

Par exemple, si vous souhaitez comparer uniquement l'année, attribuez le type Date à la colonne concernée dans le schéma du composant puis saisissez "yyyy" dans le champ Date Pattern. Le composant convertit le format de date en une chaîne de caractères, selon le modèle défini dans le schéma, avant de comparer les chaînes de caractères.

 

Pre-Algorithm

Au besoin, sélectionnez l'algorithme de correspondance adéquat dans la liste :

Remove diacritical marks : supprime tout signe diacritique.

Remove diacritical marks and lower case : supprime tout signe diacritique et convertit en minuscules avant de générer le code de la colonne.

Remove diacritical marks and upper case : supprime tout signe diacritique et convertit en minuscules avant de générer le code de la colonne.

Lower case : convertit le champ en lettres minuscules avant d'appliquer l'algorithme clé.

Upper case : convertit le champ en lettres majuscules avant d'appliquer l'algorithme clé.

Add left position character : vous permet d'ajouter un caractère à gauche de la colonne.

Add right position character : vous permet d'ajouter un caractère à droite de la colonne.

 

Value

Définissez la valeur de l'algorithme, là où il peut être appliqué.

 

Algorithm

Sélectionnez l'algorithme adéquat dans la liste :

First character of each word : inclut dans la clé fonctionnelle le premier caractère de chaque mot dans la colonne.

N first characters of each word : inclut dans la clé fonctionnelle les N premiers caractères de chaque mot dans la colonne.

First N characters of the string : inclut dans la clé fonctionnelle les N premiers caractères de la chaîne de caractères.

Last N characters of the string : inclut dans la clé fonctionnelle les N derniers caractères de la chaîne de caractères.

First N consonants of the string : inclut dans la clé fonctionnelle les N premières consonnes de la chaîne de caractères.

First N vowels of the string : inclut dans la clé fonctionnelle les N premières voyelles de la chaîne de caractères.

Pick characters : inclut dans la clé fonctionnelle les caractères situés à une position fixe (correspondant au chiffre défini/à la plage définie).

Exact : inclut dans la clé fonctionnelle la chaîne de caractères complète.

Substring(a,b) : inclut dans la clé fonctionnelle un caractère selon l'index défini.

Soundex code : génère un code selon un algorithme anglais standard. Ce code représente la chaîne de caractères qui sera incluse dans la clé fonctionnelle.

Metaphone code : génère un selon la prononciation des caractères. Ce code représente la chaîne de caractères qui sera incluse dans la clé fonctionnelle.

Double-metaphone code : génère un code selon la prononciation des caractères en utilisant une nouvelle version de l'algorithme phonétique Metaphone, produisant des résultats plus précis que l'algorithme original. Ce code représente la chaîne de caractères qui sera incluse dans la clé fonctionnelle.

Fingerprint key : génère une clé fonctionnelle d'une valeur d'une chaîne de caractères via la séquence suivante :

  1. supprime les espaces vides en début et fin de champ,

  2. passe tous les caractères en minuscules,

  3. supprime tous les caractères de ponctuation et de contrôle,

  4. divise la chaîne de caractères en jetons séparés par des espaces,

  5. trie les jetons et supprime les doublons,

  6. groupe à nouveau les jetons,

    Comme les parties de la chaîne de caractères sont triées, l'ordre des jetons n'a pas d'importance. Cruise, Tom et Tom Cruise obtiennent finalement l'empreinte (clé) cruise tom et terminent dans le même cluster.

  7. normalise les caractères occidentaux étendus par leur représentations ASCII, par exemple gödel par godel.

    Cette procédure reproduit les erreurs des entrées de données produites lors de la saisie de caractères étendus par un clavier ASCII. Cependant, cette procédure peut amener à de faux positifs, par exemple gödel et godél obtiennent godel comme empreinte mais ce sont probablement des noms différents. Cela fonctionne moins efficacement pour les ensembles de données où les caractères étendus jouent un rôle important de différenciation.

nGramkey : cet algorithme est similaire à la méthode fingerPrintkey décrite ci-dessus. Au lieu d'utiliser des jetons séparés par des espaces, il utilise n-grammes, où n peut être spécifié par l'utilisateur. Cette méthode génère la clé fonctionnelle d'une valeur d'une chaîne de caractères via la séquence suivante :

  1. passe tous les caractères en minuscules,

  2. supprime tous les caractères de ponctuation et de contrôle,

  3. obtient toutes les chaînes de caractères n-grammes,

  4. trie les n-grammes et supprime les doublons,

  5. groupe à nouveau les n-grammes triés,

  6. normalise les caractères occidentaux étendus par leur représentation ASCII, par exemple gödel par godel.

    Par exemple, l'empreinte 2-gramme de Paris est arispari et son empreinte 1-gram est aiprs.

    L'implémentation fournie pour cet algorithme est le 2-gramme.

    Note

    Si la colonne sur laquelle vous souhaitez utiliser l'algorithme nGramkey est susceptible de contenir des données uniquement composées d'un 0 ou d'un 1, vous devez filtrer ces données avant de générer la clé fonctionnelle. Ainsi, vous évitez potentiellement de comparer des enregistrements à ceux n'étant pas des possibles correspondances.

Cologne phonetics : un algorithme phonétique Soundex optimisé pour l'allemand. Il encode une chaîne de caractères en une valeur phonétique de Cologne. Ce code représente la chaîne de caractères qui sera incluse dans la clé fonctionnelle.

 

Value

Définissez la valeur de l'algorithme, là où il peut être appliqué.

Si vous ne définissez pas de valeur pour les algorithmes qui en ont besoin, le Job s'exécute avec une erreur de compilation.

 

Post-Algorithm

Au besoin, sélectionnez l'algorithme de correspondance adéquat dans la liste :

Use default value (chaîne de caractères) : vous permet de choisir une chaîne de caractères pour remplacer des données null ou vides.

Add left position character : vous permet d'ajouter un caractère à gauche de la colonne.

Add right position character : vous permet d'ajouter un caractère à droite de la colonne.

 

Value

Définissez la valeur de l'option, là où elle est applicable.

 

Show help

Cochez cette case pour afficher les instructions concernant la définition des paramètres des algorithmes/options.

Advanced settings

tStatCatcherStatistics

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

Notez que cette case n'est pas disponible dans la version Map/Reduce de ce composant.

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

Ce composant est généralement utilisé comme composant intermédiaire et nécessite un composant d'entrée et un composant de sortie.

Il peut être utilisé avec d'autres composants, comme le tMatchGroup, afin de créer une clé de bloc (blocking key).

Limitation/prérequis

n/a

Scénario 1 : Générer des clés fonctionnelles dans le flux de sortie

Ce scénario comprend trois composants. Il décrit un Job simple qui génère une clé fonctionnelle pour chaque enregistrement de données utilisant un algorithme sur l'une des colonnes d'entrée, PostalCode.

Cette clé fonctionnelle peut être utilisée de différentes façons, afin de réduire le nombre de résultats d'un filtre sur les données ou d'une correspondance de données, par exemple. Le composant tGenKey peut être utilisé avec de nombreux composants de qualité ou d'intégration de données, lors d'utilisations variées. Pour un exemple d'utilisation du tGenKey, consultez Scénario 2 : Comparer les colonnes et regrouper dans le flux de sortie les enregistrements en doublon ayant la même clé fonctionnelle.

Dans ce scénario, le flux de données d'entrée se compose de quatre colonnes : Firstname, Lastname, DOB, et PostalCode (Prénom, Nom, Date de naissance et Code postal). Ces données contiennent des problèmes, comme des doublons, des prénoms ou des noms écrits différemment ou mal orthographiés, des informations différentes sur un même client, etc. Ce scénario génère une clé fonctionnelle pour chaque enregistrement de données utilisant un algorithme qui concatène les deux premiers caractères du code postal.

Construire le Job

  1. Déposez les composants suivants de la Palette dans l'espace de modélisation graphique : tFixedFlowInput, tGenKey et tLogRow.

  2. Connectez les composants à l'aide de liens Row > Main.

Configurer les données d'entrée

  1. Double-cliquez sur le tFixedFlowInput afin d'afficher sa vue Basic settings et de définir ses propriétés.

  2. Cliquez sur le bouton [...] à côté du champ Edit Schema pour ouvrir la boîte de dialogue [Schema].

  3. Cliquez sur le bouton [+] pour ajouter autant de lignes que nécessaire au schéma d'entrée que vous souhaitez créer, à partir de variables internes.

    Dans cet exemple, le schéma se compose de quatre colonnes : Firstname, Lastname, DOB et PostalCode.

    Cliquez sur OK pour fermer la boîte de dialogue.

  4. Dans la zone Mode, sélectionnez l'option Use Inline Table.

    Le tableau Value s'affiche en tant que Inline Table.

  5. Cliquez sur le bouton [+] pour ajouter autant de lignes que nécessaire puis cliquez sur chacune d'entre elles pour définir les données d'entrée des quatre colonnes.

Configurer la génération de clé

  1. Double-cliquez sur le tGenKey pour afficher sa vue Basic settings et définir ses propriétés.

    Cliquez sur le bouton pour importez les clés de bloc à partir des règles de mise en correspondance créées avec l'algorithme VSR et testées dans la perspective Profiling du Studio Talend et les utiliser dans votre Job. Sinon, vous pouvez également configurer les paramètres des clés de bloc comme décrit dans les étapes ci-dessous.

  2. Sous le tableau Algorithm, cliquez sur le bouton [+] afin d'ajouter une ligne.

  3. Dans la colonne column, cliquez sur la nouvelle ligne et sélectionnez dans la liste la colonne sur laquelle vous souhaitez appliquer l'algorithme. Dans cet exemple, sélectionnez PostalCode.

    Note

    Lorsque vous sélectionnez une colonne de dates sur laquelle appliquer un algorithme ou un algorithme de mise en correspondance, vous pouvez choisir ce que vous souhaitez comparer dans le format de date.

    Par exemple, si vous souhaitez comparer uniquement l'année, attribuez le type Date à la colonne concernée dans le schéma du composant puis saisissez "yyyy" dans le champ Date Pattern. Le composant convertit le format de date en une chaîne de caractères, selon le modèle défini dans le schéma, avant de comparer les chaînes de caractères.

  4. Cochez la case Show help afin d'afficher les instructions concernant la définition des paramètres des algorithmes et des options.

  5. Dans la colonne algorithm, cliquez sur la nouvelle ligne et sélectionnez dans la liste l'algorithme que vous souhaitez appliquer à la colonne correspondante. Dans cet exemple, sélectionnez first N characters of the string.

  6. Cliquez sur la colonne Value et saisissez la valeur de l'algorithme sélectionné, si besoin. Dans ce scénario, saisissez 2.

    Dans cet exemple, générez une clé fonctionnelle contenant les deux premiers caractères du code postal pour chaque ligne de données, et ne définissez aucune option supplémentaire pour ces colonnes.

    Assurez-vous de définir une valeur pour l'algorithme qui en a besoin, autrement le Job s'exécute avec une erreur de compilation.

Après avoir paramétré le composant tGenKey, vous pouvez afficher une vue statistique de ces paramètres. Pour ce faire :

  • Cliquez-droit sur le composant tGenKey et sélectionnez View Key Profile dans le menu contextuel.

    L'éditeur View Key Profile s'affiche et vous permet de visualiser les statistiques du nombre de lignes par blocs et d'adapter les paramètres selon le résultat que vous souhaitez obtenir.

    Lors du traitement de données volumineuses et lorsque ce composant est utilisé pour partitionner les données afin de les utiliser dans un composant de mise en correspondance (tRecordMatching ou tMatchGroup par exemple), il est préférable d'avoir un nombre restreint de lignes par blocs. La configuration est considérée comme optimale autour de 50 lignes par blocs, mais cela dépend du nombre de champs à comparer, du nombre total de lignes et du temps considéré comme acceptable pour le traitement des données.

    Pour un exemple d'utilisation de l'option View Key Profile, consultez Scénario 2 : Comparer les colonnes et regrouper dans le flux de sortie les enregistrements en doublon ayant la même clé fonctionnelle

Configurer l'écriture en sortie

  1. Double-cliquez sur le composant tLogRow afin d'afficher sa vue Basic settings et définir ses propriétés.

  2. Dans la zone Mode, sélectionnez l'option Table pour afficher les résultats d'exécution du Job sous forme de tableau.

Exécuter le Job

  • Sauvegardez votre Job et appuyez sur F6 pour l'exécuter.

Toutes les colonnes de sortie comprenant la colonne T_GEN_KEY sont listées dans la console de la vue Run. La clé fonctionnelle pour chaque enregistrement de données concatène les deux premiers caractères de la valeur correspondante dans la colonne PostalCode.

Scénario 2 : Comparer les colonnes et regrouper dans le flux de sortie les enregistrements en doublon ayant la même clé fonctionnelle

Ce second scénario décrit un Job dont le but est de :

  • générer une clé fonctionnelle utilisant un algorithme sur l'une des colonnes d'entrée, DoB ;

  • mettre en correspondance les deux colonnes d'entrée à l'aide de l'algorithme Jaro-Winkler.

  • regrouper les colonnes de sortie via la clé fonctionnelle générée afin d'optimiser l'opération de mise en correspondance et comparer uniquement les enregistrements ayant la même valeur de bloc, la clé fonctionnelle dans ce scénario. Pour plus d'informations concernant le regroupement des colonnes de sortie et l'utilisation des valeurs de bloc, consultez tMatchGroup.

Construire le Job

  1. Déposez les composants suivants de la Palette dans l'espace de modélisation graphique : un tRowGenerator, un tGenKey et un tMatchGroup.

  2. Connectez les composants les uns aux autres à l'aide de liens Row > Main.

Configurer les données d'entrée

  1. Double-cliquez sur le tRowGenerator afin de définir son schéma comme suit :

    Le composant tRowGenerator génèrera un flux de données d'entrée comprenant trois colonnes : Firstname, Lastname, et DoB (date de naissance). Ces données peuvent contenir des problèmes, comme des doublons, des prénoms ou des noms écrits différemment ou mal orthographiés, des informations différentes sur un même client, etc.

  2. Cliquez sur OK pour valider les paramètres et fermer la boîte de dialogue. Acceptez la propagation des modifications lorsque cela vous est proposé.

Configurer la génération de clé

  1. Double-cliquez sur le tGenKey pour afficher sa vue Basic settings et définir ses propriétés.

    Cliquez sur le bouton pour importez les clés de bloc à partir des règles de mise en correspondance créées avec l'algorithme VSR et testées dans la perspective Profiling du Studio Talend et les utiliser dans votre Job. Sinon, vous pouvez également configurer les paramètres des clés de bloc comme décrit dans les étapes ci-dessous.

  2. Sous le tableau Algorithm, cliquez sur le bouton [+] afin d'ajouter une ligne.

  3. Dans la colonne column, cliquez sur la nouvelle ligne et sélectionnez dans la liste la colonne sur laquelle vous souhaitez appliquer l'algorithme. Dans cet exemple, sélectionnez DoB.

  4. Dans la colonne algorithm, cliquez sur la nouvelle ligne et sélectionnez dans la liste l'algorithme que vous souhaitez appliquer à la colonne correspondante. Dans cet exemple, sélectionnez substring(a,b).

  5. Cliquez sur la colonne value et saisissez la valeur de l'algorithme sélectionné, si besoin. Dans ce scénario, saisissez 6,10.

    L'algorithme substring(a,b) permet d'extraire les caractères d'une chaîne situés entre deux indices, et de retourner la nouvelle sous-chaîne. Le premier caractère est numéroté 0. Dans ce scénario, pour une date de naissance "21-01-1995", la valeur 6,10 retourne uniquement l'année de naissance, soit "1995" qui correspond à la sous-chaîne du 7ème au 10ème caractère.

    Dans cet exemple, générez une clé fonctionnelle contenant les quatre derniers caractères, correspondant à l'année dans la date de naissance (DoB), pour chaque ligne de données, et ne définissez aucune option supplémentaire pour ces colonnes.

    Vous pouvez cocher la case Show help afin d'afficher les instructions concernant la définition des paramètres des algorithmes et des options.

    Après avoir paramétré le composant tGenKey, vous pouvez afficher une vue statistique de ces paramètres. Pour ce faire :

  6. Cliquez-droit sur le composant tGenKey et sélectionnez View Key Profile dans le menu contextuel.

    L'éditeur View Key Profile s'affiche et vous permet de visualiser les statistiques du nombre de blocs et d'adapter les paramètres selon le résultat que vous souhaitez obtenir.

    Note

    Lors du traitement de données volumineuses et lorsque ce composant est utilisé pour partitionner les données afin de les utiliser dans un composant de mise en correspondance (tRecordMatching ou tMatchGroup par exemple), il est préférable d'avoir un nombre restreint de lignes par blocs. La configuration est considérée comme optimale autour de 50 lignes par blocs, mais cela dépend du nombre de champs à comparer, du nombre total de lignes et du temps considéré comme acceptable pour le traitement des données.

    Depuis l'éditeur de, vous pouvez :

    • éditer la limite (Limit) du nombre de lignes utilisées pour calculer les statistiques ;

    • cliquer sur l'icône et importer les clés de bloc depuis le référentiel du studio et les utiliser dans votre Job ;

    • modifier la colonne d'entrée que vous souhaitez traiter à l'aide d'un algorithme ;

    • modifier les paramètres de l'algorithme à appliquer aux colonnes d'entrée.

    Pour chaque modification effectuée, vous pouvez visualiser ses implications en cliquant sur le bouton Refresh situé en haut à droite de l'éditeur.

  7. Cliquez sur OK pour fermer l'éditeur View Key Profile.

Configurer le groupement des données de sortie

  1. Double-cliquez sur le composant tMatchGroup pour afficher sa vue Basic settings et définir ses propriétés. Cliquez sur le bouton Edit schema afin de voir les colonnes d'entrée et de sortie et d'effectuer des modifications dans le schéma de sortie, si nécessaire.

    Dans le schéma de sortie de ce composant, des colonnes standard de sortie sont en lecture seule. Pour plus d'informations, consultez Propriétés du tMatchGroup.

  2. Cliquez sur OK pour fermer la boîte de dialogue.

  3. Double-cliquez sur le composant tMatchGroup pour afficher l'assistant [Configuration Wizard] et configurer les propriétés du composant.

    Si vous souhaitez ajouter une colonne de sortie fixe, MATCHING_DISTANCES, donnant les détails de la distance entre chaque colonne, cliquez sur l'onglet Advanced settings et cochez la case Output distance details. Pour plus d'informations, consultez Propriétés du tMatchGroup.

  4. Dans la table Key definition, cliquez sur le bouton [+] pour ajouter à la liste les colonnes sur lesquelles effectuer l'opération de mise en correspondance, FirstName et LastName, dans ce scénario.

  5. Cliquez sur la première et la deuxième cellules de la colonne Matching Function et sélectionnez dans la liste l'algorithme (les algorithmes) à utiliser pour effectuer la mise en correspondance, Jaro-Winkler dans cet exemple.

  6. Cliquez sur la première et la deuxième cellules de la colonne Weight et définissez les poids numériques pour chacune des colonnes utilisées comme attributs de clés.

  7. Dans le champ Match threshold, saisissez le seuil de probabilité. Deux enregistrements de données correspondent lorsque le seuil de probabilité est supérieur à cette valeur.

  8. Cliquez sur le bouton [+] sous le tableau Blocking Selection afin d'ajouter une ligne, puis cliquez sur cette ligne et sélectionnez dans la liste la colonne que vous souhaitez utiliser comme une valeur de bloc, T_GEN_KEY dans cet exemple.

    Utiliser une valeur de bloc réduit le nombre de paires d'enregistrements à examiner. Les données d'entrée sont partitionnées en blocs exhaustifs basés sur la clé fonctionnelle. Cela permet de diminuer le nombre de paires à comparer, puisque la comparaison est limitée aux paires d'enregistrements dans chaque bloc.

  9. Cliquez sur le bouton Chart dans le coin supérieur droit de l'assistant afin d'exécuter le Job avec la configuration définie et voir directement les résultats de correspondance dans l'assistant.

    Le diagramme de correspondances montre une vue d'ensemble des doublons dans les données analysées. La table des correspondances indique les détails des éléments de chaque groupe et colore les groupes selon leur couleur dans le diagramme.

Configurer l'écriture en sortie

  1. Double-cliquez sur le composant tLogRow afin d'afficher sa vue Basic settings et définir ses propriétés.

  2. Dans la zone Mode, sélectionnez l'option Table pour afficher les résultats d'exécution du Job sous forme de tableau.

Exécuter le Job

  • Sauvegardez votre Job et appuyez sur F6 pour l'exécuter.

    Les colonnes de sortie incluent la colonne T_GEN_KEY contenant la clé fonctionnelle générée par le composant tGenKey. Vous pouvez constater que tous les enregistrements ayant la même clé fonctionnelle sont regroupés en groupes de blocs différents. Tous les enregistrements ayant la même clé fonctionnelle sont partitionnés en groupes de blocs. L'identifiant de chaque groupe est affiché dans la colonne GID à côté de l'enregistrement correspondant. Le nombre d'enregistrements dans chacun des blocs de sortie est listé dans la colonne GRP_SIZE et calculé uniquement sur l'enregistrement maître. La colonne MASTER indique par true/false si l'enregistrement correspondant est un enregistrement maître ou non. La colonne SCORE affiche la distance calculée entre l'enregistrement d'entrée et l'enregistrement maître selon l'algorithme de correspondance Jaro-Winkler.

    Pour un exemple sur la création de partitions de données basées sur différentes clés de bloc, ainsi que sur leur utilisation avec plusieurs composants tMatchGroup, consultez tMatchGroup.

Le composant tGenKey dans les Jobs Talend Map/Reduce

Avertissement

Les informations contenues dans cette section concernent uniquement les utilisateurs ayant souscrit à l'une des solutions Big Data de Talend et ne sont pas applicables aux utilisateurs de Talend Open Studio for Big Data.

Dans un Job Talend Map/Reduce, le composant tGenKey, ainsi que les autres composants Map/Reduce qui le précédent, génèrent du code Map/Reduce natif. Cette section présente les propriétés spécifiques du tGenKey lorsqu'il est utilisé dans le cas présent. Pour plus d'informations sur les Jobs Talend Map/Reduce Job, consultez le Guide de prise en main de Talend Big Data.

Famille du composant

Data Quality

 

Basic settings

Schema et Edit schema

Un schéma est une description de lignes, il définit le nombre de champs (colonnes) qui sont traités et passés au composant suivant. Le schéma est soit local (Built-In), soit distant dans le Repository.

Cliquez sur le bouton Sync columns pour récupérer le schéma du composant précédent.

 

 

Built-In : Le schéma est créé et conservé ponctuellement pour ce composant seulement. Voir également le Guide utilisateur du Studio Talend.

 

 

Repository : Le schéma existe déjà et il est stocké dans le Repository. Ainsi, il peut être réutilisé. Voir également le Guide utilisateur du Studio Talend.

 

Cliquez sur l'icône d'import pour importer des clés de bloc des règles de mise en correspondance définies et sauvegardées dans le référentiel du Studio.

Lorsque vous cliquez sur l'icône d'import, un assistant [Match Rule Selector] s'ouvre pour vous permettre d'importer vos clés de bloc depuis les règles de mise en correspondance listées dans le référentiel du Studio et les utiliser dans votre Job.

Vous pouvez importer des clés de bloc uniquement depuis les règles de mise en correspondance définies avec l'algorithme VSR et sauvegardées dans le référentiel du studio. Pour plus d'informations, consultez Import de règles de mise en correspondance depuis le référentiel du studio.

Algorithm

Column

Sélectionnez la (les) colonne(s)du flux principal sur laquelle vous souhaitez définir certains algorithmes pour définir la clé fonctionnelle.

Note

Lorsque vous sélectionnez une colonne de dates sur laquelle appliquer un algorithme ou un algorithme de mise en correspondance, vous pouvez choisir ce que vous souhaitez comparer dans le format de date.

Par exemple, si vous souhaitez comparer uniquement l'année, attribuez le type Date à la colonne concernée dans le schéma du composant puis saisissez "yyyy" dans le champ Date Pattern. Le composant convertit le format de date en une chaîne de caractères, selon le modèle défini dans le schéma, avant de comparer les chaînes de caractères.

 

Pre-Algorithm

Au besoin, sélectionnez l'algorithme de correspondance adéquat dans la liste :

Remove diacritical marks : supprime tout signe diacritique.

Remove diacritical marks and lower case : supprime tout signe diacritique et convertit en minuscules avant de générer le code de la colonne.

Remove diacritical marks and upper case : supprime tout signe diacritique et convertit en minuscules avant de générer le code de la colonne.

Lower case : convertit le champ en lettres minuscules avant d'appliquer l'algorithme clé.

Upper case : convertit le champ en lettres majuscules avant d'appliquer l'algorithme clé.

Add left position character : vous permet d'ajouter un caractère à gauche de la colonne.

Add right position character : vous permet d'ajouter un caractère à droite de la colonne.

 

Value

Définissez la valeur de l'algorithme, là où il peut être appliqué.

 

Algorithm

Sélectionnez l'algorithme adéquat dans la liste :

First character of each word : inclut dans la clé fonctionnelle le premier caractère de chaque mot dans la colonne.

N first characters of each word : inclut dans la clé fonctionnelle les N premiers caractères de chaque mot dans la colonne.

First N characters of the string : inclut dans la clé fonctionnelle les N premiers caractères de la chaîne de caractères.

Last N characters of the string : inclut dans la clé fonctionnelle les N derniers caractères de la chaîne de caractères.

First N consonants of the string : inclut dans la clé fonctionnelle les N premières consonnes de la chaîne de caractères.

First N vowels of the string : inclut dans la clé fonctionnelle les N premières voyelles de la chaîne de caractères.

Pick characters : inclut dans la clé fonctionnelle les caractères situés à une position fixe (correspondant au chiffre défini/à la plage définie).

Exact : inclut dans la clé fonctionnelle la chaîne de caractères complète.

Substring(a,b) : inclut dans la clé fonctionnelle un caractère selon l'index défini.

Soundex code : génère un code selon un algorithme anglais standard. Ce code représente la chaîne de caractères qui sera incluse dans la clé fonctionnelle.

Metaphone code : génère un selon la prononciation des caractères. Ce code représente la chaîne de caractères qui sera incluse dans la clé fonctionnelle.

Double-metaphone code : génère un code selon la prononciation des caractères en utilisant une nouvelle version de l'algorithme phonétique Metaphone, produisant des résultats plus précis que l'algorithme original. Ce code représente la chaîne de caractères qui sera incluse dans la clé fonctionnelle.

Fingerprint key : génère une clé fonctionnelle d'une valeur d'une chaîne de caractères via la séquence suivante :

  1. supprime les espaces vides en début et fin de champ,

  2. passe tous les caractères en minuscules,

  3. supprime tous les caractères de ponctuation et de contrôle,

  4. divise la chaîne de caractères en jetons séparés par des espaces,

  5. trie les jetons et supprime les doublons,

  6. groupe à nouveau les jetons,

    Comme les parties de la chaîne de caractères sont triées, l'ordre des jetons n'a pas d'importance. Cruise, Tom et Tom Cruise obtiennent finalement l'empreinte (clé) cruise tom et terminent dans le même cluster.

  7. normalise les caractères occidentaux étendus par leur représentations ASCII, par exemple gödel par godel.

    Cette procédure reproduit les erreurs des entrées de données produites lors de la saisie de caractères étendus par un clavier ASCII. Cependant, cette procédure peut amener à de faux positifs, par exemple gödel et godél obtiennent godel comme empreinte mais ce sont probablement des noms différents. Cela fonctionne moins efficacement pour les ensembles de données où les caractères étendus jouent un rôle important de différenciation.

nGramkey : cet algorithme est similaire à la méthode fingerPrintkey décrite ci-dessus. Au lieu d'utiliser des jetons séparés par des espaces, il utilise n-grammes, où n peut être spécifié par l'utilisateur. Cette méthode génère la clé fonctionnelle d'une valeur d'une chaîne de caractères via la séquence suivante :

  1. passe tous les caractères en minuscules,

  2. supprime tous les caractères de ponctuation et de contrôle,

  3. obtient toutes les chaînes de caractères n-grammes,

  4. trie les n-grammes et supprime les doublons,

  5. groupe à nouveau les n-grammes triés,

  6. normalise les caractères occidentaux étendus par leur représentation ASCII, par exemple gödel par godel.

    Par exemple, l'empreinte 2-gramme de Paris est arispari et son empreinte 1-gram est aiprs.

    L'implémentation fournie pour cet algorithme est le 2-gramme.

    Note

    Si la colonne sur laquelle vous souhaitez utiliser l'algorithme nGramkey est susceptible de contenir des données uniquement composées d'un 0 ou d'un 1, vous devez filtrer ces données avant de générer la clé fonctionnelle. Ainsi, vous évitez potentiellement de comparer des enregistrements à ceux n'étant pas des possibles correspondances.

Cologne phonetics : un algorithme phonétique Soundex optimisé pour l'allemand. Il encode une chaîne de caractères en une valeur phonétique de Cologne. Ce code représente la chaîne de caractères qui sera incluse dans la clé fonctionnelle.

 

Value

Définissez la valeur de l'algorithme, là où il peut être appliqué.

 

Post-Algorithm

Au besoin, sélectionnez l'algorithme de correspondance adéquat dans la liste :

Use default value (chaîne de caractères) : vous permet de choisir une chaîne de caractères pour remplacer des données null ou vides.

Add left position character : vous permet d'ajouter un caractère à gauche de la colonne.

Add right position character : vous permet d'ajouter un caractère à droite de la colonne.

 

Value

Définissez la valeur de l'option, là où elle est applicable.

 

Show help

Cochez cette case pour afficher les instructions concernant la définition des paramètres des algorithmes/options.

Advanced settings

tStatCatcherStatistics

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

Notez que cette case n'est pas disponible dans la version Map/Reduce de ce composant.

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 dans des Jobs Map/Reduce

Dans un Job Talend Map/Reduce, il est utilisé comme étape intermédiaire, avec d'autres composants Map/Reduce. Ils génèrent nativement du code Map/Reduce pouvant être exécuté directement dans Hadoop.

Pour plus d'informations concernant les Jobs Talend Map/Reduce, consultez les sections décrivant comment créer, convertir et configurer un Job Talend Map/Reduce, dans le Guide de prise en main de Talend Big Data.

Notez que, dans cette documentation, sauf mention contraire, un scénario présente uniquement des Jobs Standard, c'est-à-dire des Jobs Talend traditionnels d'intégration de données et non des Jobs Map/Reduce.

Limitation/prérequis

n/a

Scénario associé

Aucun scénario n'est disponible pour la version Map/Reduce de ce composant.

Propriétés du tGenKey dans des Jobs Spark Batch

Famille du composant

Data Quality

 

Basic settings

Schema et Edit schema

Un schéma est une description de lignes, il définit le nombre de champs (colonnes) qui sont traités et passés au composant suivant. Le schéma est soit local (Built-In), soit distant dans le Repository.

Cliquez sur le bouton Sync columns pour récupérer le schéma du composant précédent.

 

 

Built-In : Le schéma est créé et conservé ponctuellement pour ce composant seulement. Voir également le Guide utilisateur du Studio Talend.

 

 

Repository : Le schéma existe déjà et il est stocké dans le Repository. Ainsi, il peut être réutilisé. Voir également le Guide utilisateur du Studio Talend.

 

Cliquez sur l'icône d'import pour importer des clés de bloc des règles de mise en correspondance définies et sauvegardées dans le référentiel du Studio.

Lorsque vous cliquez sur l'icône d'import, un assistant [Match Rule Selector] s'ouvre pour vous permettre d'importer vos clés de bloc depuis les règles de mise en correspondance listées dans le référentiel du Studio et les utiliser dans votre Job.

Vous pouvez importer des clés de bloc uniquement depuis les règles de mise en correspondance définies avec l'algorithme VSR et sauvegardées dans le référentiel du studio. Pour plus d'informations, consultez Import de règles de mise en correspondance depuis le référentiel du studio.

Algorithm

Column

Sélectionnez la (les) colonne(s)du flux principal sur laquelle vous souhaitez définir certains algorithmes pour définir la clé fonctionnelle.

Note

Lorsque vous sélectionnez une colonne de dates sur laquelle appliquer un algorithme ou un algorithme de mise en correspondance, vous pouvez choisir ce que vous souhaitez comparer dans le format de date.

Par exemple, si vous souhaitez comparer uniquement l'année, attribuez le type Date à la colonne concernée dans le schéma du composant puis saisissez "yyyy" dans le champ Date Pattern. Le composant convertit le format de date en une chaîne de caractères, selon le modèle défini dans le schéma, avant de comparer les chaînes de caractères.

 

Pre-Algorithm

Au besoin, sélectionnez l'algorithme de correspondance adéquat dans la liste :

Remove diacritical marks : supprime tout signe diacritique.

Remove diacritical marks and lower case : supprime tout signe diacritique et convertit en minuscules avant de générer le code de la colonne.

Remove diacritical marks and upper case : supprime tout signe diacritique et convertit en minuscules avant de générer le code de la colonne.

Lower case : convertit le champ en lettres minuscules avant d'appliquer l'algorithme clé.

Upper case : convertit l