Scénario : Comparer quatre colonnes en utilisant différentes méthodes de correspondance, et collecter les doublons rencontrés - 6.1

Composants Talend Guide de référence

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

Ce scénario décrit un Job à quatre composants, dont le but est de collecter dans deux fichiers séparés toutes les entrées uniques et tous les doublons d'entrées depuis des colonnes traitées définies, à partir des types de correspondance Levenshtein et Double Métaphone.

Le fichier d'entrée dans cet exemple ressemble à ceci :

ID;Status;FirstName;Email;City;Initial;ZipCode
1;married;Paul;pnewman@comp.com;New York;P.N.;55677
2;single;Raul;rnewman@comp.com;New Ork;R.N.;55677
3;single;Mary;mnewman@comp.com;Chicago;M.N;66898

Construire le Job

  1. Déposez un tFileInputDelimited, tFuzzyUniqRow, et deux tFileOutputExcel de la Palette dans l'espace de modélisation graphique.

  2. Connectez le tFileInputDelimited au tFuzzyUniqRow à l'aide d'un lien Main > Row, le tFuzzyUniqRow au premier tFileOutputExcel avec un lien Uniques, puis au second tFileOutputExcel à l'aide d'un lien Duplicates.

Configurer les composants

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

  2. Cliquez sur le bouton [...] à côté du champ File Name pour sélectionner le fichier contenant les données d'entrée.

  3. Au besoin, paramétrez les champs Header, Footer, and Limit.

    Pour ce scénario, saisissez 1 dans le champ Header. Les champs Footer et Limit pour le nombre de lignes traitées ne sont pas paramétrés.

  4. Cliquez sur Edit schema pour ouvrir une boîte de dialogue où vous pourrez décrire la structure des données du fichier délimité source.

    Dans ce scénario, le schéma source est composé des colonnes suivantes : ID, Status, FirstName, Email, City, Initial, et ZipCode, (ID, Statut, Prénom, E-mail, Ville, Initiales et Code postal,).

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

  6. Dans la colonne Key Attribute, cochez les cases à côté des colonnes que vous souhaitez vérifier en utilisant la méthode de correspondance définie, Firstname, Email, City et ZipCode (Prénom, E-mail, Ville et Code postal) dans cet exemple.

  7. Dans la colonne Matching Type, paramétrez les méthodes de correspondance que vous souhaitez appliquer pour chaque colonne sélectionnée.

    Dans cet exemple, Levenshtein est utilisé comme méthode de correspondance pour les colonnes FirstName, Email, et ZipCode, le Double Metaphone sera utilisé comme méthode de correspondance pour la colonne City.

  8. Paramétrez ensuite les distances minimale et maximale pour la méthode Levenshtein. Dans cette méthode, la distance est le nombre de changements devant être apporté aux caractères (insertion, suppression ou substitution) afin que l'entrée corresponde entièrement à la référence. Dans cet exemple, l'objectif est de faire en sorte que la distance minimale soit égale à 0, et que la distance maximale soit égale à 2. Cela conduira à l'écriture de toutes les entrées des colonnes FirstName, Email, et ZipCode qui correspondent exactement ou ont au plus deux modifications de caractères. Il n'y a ni distance minimale, ni distance maximale à paramétrer pour le Double Metaphone, car cette méthode de correspondance est basée sur les divergences phonétiques dans les données d'entrée.

  9. Double-cliquez sur le premier tFileOutputExcel afin d'afficher sa vue Basic settings et définir ses propriétés.

  10. Paramétrez le répertoire de destination, ainsi que la nom de la feuille (Sheet name), et cochez la case Include header.

  11. Répétez l'opération pour le deuxième tFileOutputExcel.

Exécuter le Job

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

Le tFuzzyUniqRow utilise la méthode de Levenshtein pour comparer séparément chacune des trois colonnes définies, il utilise la méthode du Double Metaphone, afin de comparer les données de la colonne City, puis passer la ligne unique et les doublons aux fichiers de sortie définis. Dans notre exemple, les deux premières lignes correspondent, cependant, la deuxième ligne ira dans la sortie duplicates.

La colonne FID générée fournit un identifiant de référence de l'enregistrement original auquel se réfère l'enregistrement actuel.

La troisième ligne est unique et ira dans la sortie uniques.

La colonne UID générée contient les identifiants générés pour l'enregistrement principal.