Comment le tMatchPairing calcule-t-il les paires suspectes ?
Les principales étapes du processus sont les suivantes :
-
Pour chaque ligne, les valeurs des différentes colonnes utilisées comme clé de bloc sont concaténées. Ensuite, tous les suffixes d'une longueur supérieure ou égale à la valeur définie pour le paramètre Min suffix length sont générés. Par défaut, cette valeur est définie à 3 dans le Studio Talend.
Par exemple, les colonnes first_name et last_name sont utilisées comme clé de bloc. La colonne first_name contient la valeur John et la colonne last_name contient la valeur Doe. Alors, les suffixes générés sont Doe, nDoe, hnDoe, ohnDoe et JohnDoe.
-
Les suffixes restants sont classés par ordre alphabétique. Si deux suffixes consécutifs sont trop similaires, ils sont fusionnés.
Si le nombre de lignes ayant le même suffixe dépasse la valeur définie pour le paramètre Max block size, ce suffixe est considéré comme étant trop fréquent. Il est alors supprimé.
- Pour chaque suffixe, toutes les paires possibles de lignes contenant des enregistrements avec le même suffixe sont générées. La valeur définie pour le paramètre Max block size ne doit pas être trop élevée car le nombre de combinaisons peut augmenter considérablement. Par défaut, la valeur du paramètre Max block size est définie à 10.
- L'étape de filtrage est la dernière étape. Elle consiste en une suppression des paires les moins susceptibles de correspondre. Pour chaque paire, un score est calculé et ajouté dans le schéma de sortie. Pour calculer un score pour chaque paire de paires suspectes, un échantillon de taille fixe est généré. La taille par défaut est définie à 10000. Les deux étapes suivantes sont appliquées à l'échantillon :
- Calcule des différentes mesures - Levenshtein, Jaro-Winkler et Exact without case - pour chaque paire et chaque colonne.
- Calcule du centile pour chaque paire suspecte et chaque colonne.
Il est maintenant possible de donner une bonne approximation pour le centile, selon la valeur d'une mesure. Sur l'ensemble du jeu de données, les différentes mesures calculées pour chaque paire et le centile est extrait pour chaque mesure. Ensuite, le calcul du score se fait en deux étapes :
- Calcul du centile maximum au-delà des mesures, pour chaque colonne.
- Calcul du centile minimum au-delà des colonnes.
Si le score est inférieur au seuil, la paire est filtrée. Ceci garantit que chaque colonne possède au moins une mesure au-dessus du seuil, ce qui signifie que toutes les colonnes correspondent au moins à une mesure.