Rapprochement de données à l'aide des outils Talend - 7.3

EnrichVersion
Cloud
7.3
EnrichProdName
Talend Big Data Platform
Talend Data Fabric
Talend Data Management Platform
Talend Data Services Platform
Talend MDM Platform
Talend Real-Time Big Data Platform
EnrichPlatform
Studio Talend
task
Création et développement > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement continu
Création et développement > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement de données
Création et développement > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement flou
Création et développement > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement utilisant l'apprentissage automatique
Gouvernance de données > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement continu
Gouvernance de données > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement de données
Gouvernance de données > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement flou
Gouvernance de données > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement utilisant l'apprentissage automatique
Qualité et préparation de données > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement continu
Qualité et préparation de données > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement de données
Qualité et préparation de données > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement flou
Qualité et préparation de données > Systèmes tiers > Composants Data Quality > Composants de rapprochement > Composants de rapprochement utilisant l'apprentissage automatique

Qu'est-ce que le rapprochement de données ?

Le rapprochement de données est un processus qui vous permet de trouver des enregistrements représentant la même entité dans un jeu de données.

Définition générale

Le rapprochement de données vous permet :
  • de chercher des doublons, des paires suspectes et des enregistrements uniques dans une source de données,
  • d'analyser des données et de retourner des probabilités pondérées de correspondance,
  • de fusionner les entrées identiques ou similaires en une seule entrée et
  • de réduire les disparités entres les différentes sources de données.

Rapprochement d'enregistrements

Le rapprochement consiste en une identification des enregistrements faisant référence à une même entité dans un jeu de données.

Deux types de rapprochements d'enregistrements existent :
  • le rapprochement des enregistrements déterministe, basé sur des identifiants qui entrent en correspondance et
  • le rapprochement des enregistrements probabiliste, basé sur la probabilité que deux identifiants correspondent.

Que faire avant le rapprochement ?

Profiling des données

Le profiling des données est le processus permettant d'examiner des données disponibles dans différentes sources de données et de collecter des statistiques ainsi que des informations sur ces données.

Le profiling des données aide à évaluer le niveau de qualité des données selon des objectifs définis.

Les problèmes de qualité des données peuvent avoir différentes causes dont les systèmes hérités, les migrations de données, les modifications de bases de données, les incohérences en matières de communications humaines et bien d'autres anomalies potentielles. Indépendamment de leur source, les problèmes de qualité des données peuvent avoir un impact sur la capacité des entreprises à utiliser leurs données afin de prendre des décisions éclairées.

Si des données sont de faible qualité ou gérées dans des structures dont l'intégration ne permet pas de satisfaire les besoins de l'entreprise, les processus et la prise de décision en pâtissent.

En comparaison avec les techniques d'analyse manuelle, la technologie de profiling des données améliore la capacité de l'entreprise à relever le défi de la gestion de la qualité des données et à surmonter les difficultés rencontrées lors de migrations et d'intégration de données.

Standardisation des données

La standardisation des données est une étape essentielle avant d'essayer de mettre des données en correspondance et ce, afin d'améliorer la précision du rapprochement.
Talend fournit différents moyens de standardiser des données :
  • Vous pouvez standardiser des données grâce à des index de synonymes. Les synonymes sont standardisés et convertis en mots "maîtres".

    Pour plus d'informations concernant les dictionnaires des synonymes de données, consultez le Guide d'utilisation de Talend Data Fabric Studio.

  • Vous pouvez utiliser des composants de validation d'adresses afin de valider des données d'adresses par rapport aux outils de validation d'Experian QAS, Loqate et MelissaData. Les adresses renvoyées par ces outils sont cohérentes et les variations dans la représentation des adresses sont éliminées. Les adresses étant standardisées, le rapprochement est plus facile.

    Pour plus d'informations concernant les composants tQASBatchAddressRow, tLoqateAddressRow et tMelissaDataAddress, consultez Standardisation d'adresses.

  • Vous pouvez utiliser le tStandardizePhoneNumber pour standardiser un numéro de téléphone, selon les conventions de formatage du pays d'origine.

    Pour plus d'informations concernant la standardisation des numéros de téléphone, consultez Standardisation de numéros de téléphone.

  • Vous pouvez utiliser d'autres composants plus génériques afin de transformer vos données et obtenir des enregistrements plus standardisés, comme le tReplace, le tReplaceList, le tVerifyEmail, le tExtractRegexFields ou le tMap.

Comment rapprocher des données ?

L'approche classique du rapprochement de données

L'approche classique du rapprochement de données consiste à classer les données en partitions de taille similaire ayant un même attribut, choisir les métriques et définir les règles de rapprochement de données.

Technique des blocs par partition

Le rapprochement d'enregistrement est une tâche exigeante car chaque enregistrement doit être comparé aux autres enregistrements du jeu de données. Pour améliorer l'efficacité de cette tâche, la technique des blocs est souvent une étape nécessaire.

Elle consiste en un tri des données en partitions de même tailles ayant le même attribut. L'objectif est de restreindre les comparaisons aux enregistrements groupés dans la même partition.

Pour créer des partitions efficaces, vous devez trouver des attributs qui ne risquent pas de changer, comme un prénom ou un nom. De ce fait, vous améliorez la fiabilité de la méthode des blocs et la vitesse d'exécution de la tâche.

Il est recommandé d'utiliser le composant tGenKey pour générer des clés de bloc et visualiser la distribution des blocs.

Pour plus d'informations sur la génération de clés de bloc, consultez Identification.

Choisir les métriques et définir les règles de rapprochement

Après avoir bloqué les données dans un groupe de la même taille, vous pouvez créer des règles de rapprochement et les tester avant de les utiliser dans le composant tMatchGroup.

Pour plus d'informations concernant la création d'une analyse de rapprochement, consultez Guide d'utilisation de Talend Data Fabric Studio.

Rapprochement des fonctions dans le composant tMatchGroup

Le tMatchGroup permet de créer des groupes d'enregistrements de données similaires dans n'importe quelle source de données, y compris avec des données volumineuses, à l'aide d'une ou plusieurs règles de rapprochement.

Chaque groupe créé est composé d'un enregistrement maître et d'enregistrements similaires à cet enregistrement maître. Les fonctions de rapprochement utilisées pour calculer le degré de similarité entre les enregistrements similaires et l'enregistrement maître sont les suivants :
  • Des algorithmes phonétiques tels que Soundex ou Metaphone, qui sont utilisés pour rapprocher les noms.
  • La distance de Levensthein, qui calcule le nombre minimum de modifications requises pour transformer une chaîne de caractères en une autre.
  • La distance de Jaro, qui rapproche les entrées traitées en fonction des variations orthographiques.
  • La distance de Jaro-Winkler, qui est une variante de la distance de Jaro et qui accorde plus d'importance au début de la chaîne de caractères.

Pour plus d'informations concernant l'utilisation du composant tMatchGroup dans des Jobs Standard et Map/Reduce, consultez Rapprochement classique.

Algorithmes Simple VSR Matcher et T-Swoosh

Lorsque vous utilisez le composant tMatchGroup, vous pouvez choisir entre deux algorithmes :
  • Le Simple VSR Matcher
  • Le T-Swoosh

Pour plus d'informations concernant les analyses de rapprochement, consultez "Créer une règle de rapprochement" sur Talend Help Center.

Quand est-ce que les enregistrements se rapprochent ?

Deux enregistrements se rapprochent lorsque les conditions suivantes sont remplies :
  • Lorsque vous utilisez l'algortihme T-Swoosh, le score retourné pour chaque fonction de rapprochement doit être supérieur au seuil que vous avez défini.
  • Le score global, score pondéré calculé d'après les différentes fonctions de rapprochement, doit être supérieur au seuil de rapprochement.

Multiples passes

En général, des schémas de partitionnement différents sont nécessaires. Cela requiert d'utiliser des composants tMatchGroup de façon séquentielle pour rapprocher les données avec différentes clés de bloc.

Pour un exemple de rapprochement de données via de multiples passes, consultez Rapprochement classique.

Utilisation du composant tRecordMatching

Le tRecordMatching effectue une jointure entre les colonnes comparées du flux principal et les colonnes de référence du flux Lookup. En fonction de la stratégie de rapprochement que vous avez définie, le tRecordMatching écrit en sortie les données de rapprochement, les éventuelles données de rapprochement et les données rejetées. Au moment de définir votre stratégie de rapprochement, les scores de rapprochement définis par l'utilisateur ou l'utilisatrice sont cruciaux pour déterminer le niveau de rapprochement des données qui vous intéressent.

Pour plus d'informations concernant le composant tRecordMatching, consultez Rapprochement classique.

L'approche de l'apprentissage automatique

L'approche de l'apprentissage automatique est utile lorsque vous souhaitez mettre en correspondance un important volume de données.

Le processus de rapprochement des données peut être automatisé en construisant un modèle permettant de prédire les correspondances.

Le processus de rapprochement de données

Les avantages de l'apprentissage automatique sur l'approche classique sont les suivants :

  • Les différents mécanismes de blocking permettent une augmentation de la vitesse du calcul et une montée en charge. Dans le cadre de l'apprentissage automatique, le blocking est différent du partitionnement : un enregistrement peut appartenir à plusieurs blocs et la taille des blocs est clairement délimitée, ce n'est pas nécessairement le cas lors de l'utilisation du composant tGenKey.
  • Les règles apprises et stockées par le modèle d'apprentissage automatique peuvent être plus complexes et moins arbitraires que les règles de rapprochement définies manuellement.
  • La configuration des composants est plus simple. Le modèle de rapprochement apprend automatiquement les distances de correspondance et les seuils de similarité, entre autres.
  1. La première étape consiste en une pré-analyse du jeu de données à l'aide du tMatchPairing. Les enregistrements uniques, les enregistrements correspondant exactement, les paires suspectes et un échantillon des paires suspectes sont écrits en sortie par le tMatchPairing.

    Pour plus d'exemples, consultez Calculer des paires suspectes et écrire un échantillon dans Talend Data Stewardship et Calculer des paires suspectes et des échantillons suspects depuis les données source.

  2. La deuxième étape consiste à libeller manuellement les paires suspectes en tant que "match" ou "no-match". Vous pouvez utiliser Talend Data Stewardship pour libeller les paires suspectes plus facilement.

    Vous pouvez utiliser une ou plusieurs classes, par exemple “match”, “potential match” et “different”.

    Pour plus d'informations concernant la gestion des tâches de regroupement pour décider des relations entre les paires d'enregistrements dans Talend Data Stewardship, consultez Exemples d'utilisation de Talend Data Stewardship.

  3. La troisième consiste à soumettre les paires suspectes que vous avez libellées au tMatchModel afin d'apprendre et de générer un modèle de classification.

    Pour des exemples de générations de modèles de rapprochement, consultez les scénarios.

  4. La quatrième étape consiste à libeller les paires suspectes dans des jeux de données volumineux automatiquement en utilisant, avec le tMatchPredict, le modèle calculé par le tMatchModel.

    Pour voir un exemple de procédure pour libeller des paires suspectes avec des libellés assignés, consultez le scénario.

Qu'est-ce qu'un bon échantillon ?

L'échantillon doit être équilibré : le nombre d'enregistrements dans chaque classe - "match" et "no match" - doit être approximativement le même. Un échantillon déséquilibré aboutit à un modèle insatisfaisant.

L'échantillon doit être diversifié : plus les exemples sont diversifiés, plus les règles apprises par le modèles seront efficaces.

L'échantillon doit avoir la bonne taille : si vous disposez d'un important jeu de données constitué de millions d'enregistrements, quelques centaines ou milliers d'exemples peuvent suffire. Si votre jeu de données est constitué de moins de 10 000 enregistrements, la taille de l'échantillon doit se situer entre 1 et 10 % du jeu de données total.

Comment le tMatchModel génère-t-il un modèle ?

L'algorithme d'apprentissage automatique calcule différentes mesures, appelées attributs, afin d'obtenir le plus d'informations possibles sur les colonnes choisies.

Pour générer le modèle, le tMatchModel analyse les données en utilisant l'algorithme Random Forest. Une forêt aléatoire (random forest) est une collection d'arbres de décision utilisée pour résoudre un problème de classifications. Dans un arbre de décision, chaque nœud correspond à une question sur les attributs associés aux données d'entrée. Une forêt aléatoire génère plusieurs arbres de décision afin d'améliorer la précision de la classification et de générer un modèle.

Pour plus d'informations concernant le rapprochement de données dans Apache Spark, consultez les propriétés du tMatchModel.

Créer des enregistrements consolidés

Vous pouvez utiliser le tRuleSurvivorship ou Talend Data Stewardship pour créer un représentant unique de chaque entité.

Fusionner les enregistrements à l'aide du tRuleSurvivorship

Après avoir estimé les doublons et regroupé les paires suspectes, vous pouvez utiliser le tRuleSurvivorship créer un représentant unique de chaque groupe de doublons en choisissant les données les plus adaptées. Cette représentation est appelée "enregistrement consolidé".

Pour un exemple de création d'un jeu de données nettoyées à partir des paires suspectes libellées par le tMatchPredict et les enregistrements uniques calculés par le tMatchPairing, consultez Rapprochement utilisant l'apprentissage automatique.

Utiliser Talend Data Stewardship pour examiner manuellement et fusionner les enregistrements

Vous pouvez ajouter des campagnes de fusion dans Talend Data Stewardship pour examiner et modifier les règles, créer des représentants uniques et fusionner les données.

Pour plus d'informations concernant les campagnes de fusion dans Talend Data Stewardship, consultez Exemples d'utilisation de Talend Data Stewardship.

Dans Talend Data Stewardship, les data stewards sont des utilisateur·trice·s métier chargé·e·s de résoudre les tâches de fusion :
  • Classification des données en assignant des libellés choisis parmi une liste prédéfinie de choix d'arbitrage.
  • Fusion d'enregistrements suspects en un seul enregistrement.

    Tâches de fusion permettant aux data stewards de fusionner plusieurs suspects parmi les enregistrements source en un seul enregistrement (enregistrement consolidé). Le résultat d'une tâche de fusion est l'enregistrement maître produit par les data stewards.

    Pour plus d'informations concernant les tâches de fusion dans Talend Data Stewardship, consultez Exemples d'utilisation de Talend Data Stewardship.

    Les enregistrements source peuvent provenir d'une même source (dédoublonnage de base de données) ou de sources différentes (réconciliation de bases de données).

Comment utiliser la fonction de rapprochement continue à l'aide de composants d'apprentissage automatique ?

Effectuer un rapprochement continu

Si vous voulez rapprocher de nouveaux enregistrements et un jeu de données nettoyées, il n'est pas nécessaire de reprendre le processus de rapprochement depuis le début.

Vous pouvez réutiliser et indexer le jeu de données nettoyées et effectuer un rapprochement continu.

Afin d'effectuer des tâches de rapprochement continu, vous devez avoir lancé Elasticsearch version 5.1.2+.

Le processus de rapprochement continu comprend les étapes suivantes :

  1. La première étape consiste à calculer les suffixes pour séparer les enregistrements nettoyés et dédoublonnés d'un jeu de données et à les indexer dans Elasticsearch à l'aide du tMatchIndex.

    Pour un exemple d'indexation de données dans Elasticsearch à l'aide du tMatchIndex, consultez ce scénario.

  2. La deuxième étape consiste à comparer les enregistrements indexés à de nouveaux enregistrements ayant le même schéma et à écrire en sortie les doublons et les enregistrements uniques à l'aide du tMatchIndexPredict. Ce composant utilise le modèle permettant d'apparier les données et le modèle de rapprochement générés par le tMatchPairing et le tMatchModel

    Pour un exemple de rapprochement de nouveaux enregistrements avec des enregistrements d'un jeu de données de référence, consultez ce scénario.

Vous pouvez ensuite nettoyer et dédoublonner les enregistrements n'ayant aucune correspondance à l'aide du tRuleSurvivorship et alimenter le jeu de données nettoyées indexé dans Elasticsearch à l'aide du tMatchIndex.

Exact matching (Correspondance exacte)

Cette option considère que deux enregistrements sont une correspondance exacte lorsqu'un sous-ensemble de leurs attributs est identique.

Composant

tUniqRow

Ce composant assure une qualité de données des flux d'entrée et de sortie du Job.

Le composant tUniqRow compare des entrées et trie les entrées en doublon du flux d'entrée.

Propriétés du tUniqRow Standard

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

Le composant tUniqRow Standard appartient à la famille Qualité de données.

Le composant de ce framework est disponible dans tous les produits Talend.

Basic settings

Schema et Edit schema

Un schéma est une description de lignes. Il définit le nombre de champs (colonnes) à traiter et à passer au composant suivant. Lorsque vous créez un Job Spark, évitez le mot réservé line lors du nommage des champs.

Modifiez le schéma en cliquant sur Edit Schema. Si le schéma est en mode Repository, trois options sont disponibles :

  • View schema : sélectionnez cette option afin de voir uniquement le schéma.

  • Change to built-in property : sélectionnez cette option pour passer le schéma en mode Built-In et effectuer des modifications locales.

  • Update repository connection : sélectionnez cette option afin de modifier le schéma stocké dans le référentiel et décider de propager ou non les modifications à tous les Jobs. Si vous souhaitez propager les modifications uniquement au Job courant, cliquez sur No et sélectionnez à nouveau la métadonnée du schéma dans la fenêtre Repository Content.

Ce composant offre la fonction de schéma dynamique. Cela vous permet de récupérer des colonnes inconnues de fichiers sources ou de copier des lots de colonnes d'une source sans avoir à mapper chaque colonne individuellement. Pour plus d'informations concernant la définition des schémas dynamiques, consultez le Guide d'utilisation du Studio Talend.

Cette fonctionnalité de schéma dynamique est conçue pour permettre de récupérer des colonnes inconnues d'une table. Il est recommandé de l'utiliser uniquement à cet effet et non pour créer des tables.

 

Built-in : le schéma est créé et conservé localement pour ce composant seulement.

 

Repository : le schéma existe déjà et est stocké dans le Repository. Ainsi, il peut être réutilisé dans des Jobs et projets.

Unique key

Sélectionnez dans cette zone une ou plusieurs colonnes sur lesquelles le dédoublonnage sera effectué.

- Cochez la case Key attribute afin d'effectuer le dédoublonnage sur toutes les colonnes.

- Cochez la case Case sensitive afin de différencier les majuscules et les minuscules.

Advanced settings

Only once each duplicated key

Cochez cette case si vous souhaitez envoyer uniquement les premières entrées en doublon des colonnes définies comme clé(s) vers le flux de sortie des doublons.

Use of disk (suitable for processing large row set)

Cochez cette case pour permettre la génération de fichiers temporaires sur le disque dur lors du traitement de données volumineuses. Cela permet d'éviter les échecs d'exécution liés à une surcharge de la mémoire. Quand cette case est cochée, vous devez également définir les éléments suivants :

- Buffer size in memory : sélectionnez le nombre de lignes à mettre en mémoire tampon avant qu'un fichier temporaire ne soit généré sur le disque dur.

- Directory for temp files : indiquez l'endroit où les fichiers temporaires doivent être enregistrés.

Avertissement :

Assurez-vous de spécifier un répertoire existant pour les fichiers temporaires, sinon l'exécution du Job échouera.

Ignore trailing zeros for BigDecimal

Cochez cette case pour ignorer les zéros en fin de champs pour les données de type BigDecimal.

tStatCatcher Statistics

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

Global Variables

Global Variables

NB_UNIQUES : nombre de lignes uniques. Cette variable est une variable After et retourne un entier.

NB_DUPLICATES : nombre de lignes en doublon. Cette variable est une variable After et retourne un entier.

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.

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. À 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

Ce composant est un composant intermédiaire puisqu'il sert à traiter un flux de données. Ainsi, il nécessite un composant d'entrée et un composant de sortie.

Propriétés du tUniqRow pour Apache Spark Batch

Ces propriétés sont utilisées pour configurer le tUniqRow s'exécutant dans le framework de Jobs Spark Batch.

Le composant tUniqRow Spark Batch appartient à la famille Traitement.

Le composant de ce framework est disponible dans tous les produits Talend avec Big Data nécessitant une souscription et dans Talend Data Fabric.

Basic settings

Schema et Edit schema

Un schéma est une description de lignes. Il définit le nombre de champs (colonnes) à traiter et à passer au composant suivant. Lorsque vous créez un Job Spark, évitez le mot réservé line lors du nommage des champs.

Modifiez le schéma en cliquant sur Edit Schema. Si le schéma est en mode Repository, trois options sont disponibles :

  • View schema : sélectionnez cette option afin de voir uniquement le schéma.

  • Change to built-in property : sélectionnez cette option pour passer le schéma en mode Built-In et effectuer des modifications locales.

  • Update repository connection : sélectionnez cette option afin de modifier le schéma stocké dans le référentiel et décider de propager ou non les modifications à tous les Jobs. Si vous souhaitez propager les modifications uniquement au Job courant, cliquez sur No et sélectionnez à nouveau la métadonnée du schéma dans la fenêtre Repository Content.

 

Built-in : le schéma est créé et conservé localement pour ce composant seulement.

 

Repository : le schéma existe déjà et est stocké dans le Repository. Ainsi, il peut être réutilisé dans des Jobs et projets.

Unique key

Sélectionnez dans cette zone une ou plusieurs colonnes sur lesquelles le dédoublonnage sera effectué.

- Cochez la case Key attribute afin d'effectuer le dédoublonnage sur toutes les colonnes.

- Cochez la case Case sensitive afin de différencier les majuscules et les minuscules.

Advanced settings

Only once each duplicated key

Cochez cette case si vous souhaitez envoyer uniquement les premières entrées en doublon des colonnes définies comme clé(s) vers le flux de sortie des doublons.

Utilisation

Règle d'utilisation

Ce composant est utilisé comme étape intermédiaire.

Ce composant, ainsi que la Palette Spark Batch à laquelle il appartient, ne s'affiche que lorsque vous créez un Job Spark Batch.

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.

Connexion à Spark

Dans l'onglet Spark Configuration de la vue Run, définissez la connexion à un cluster Spark donné pour le Job complet. De plus, puisque le Job attend ses fichiers .jar dépendants pour l'exécution, vous devez spécifier le répertoire du système de fichiers dans lequel ces fichiers .jar sont transférés afin que Spark puisse accéder à ces fichiers :
  • Yarn mode (Yarn Client ou Yarn Cluster) :
    • Lorsque vous utilisez Google Dataproc, spécifiez un bucket dans le champ Google Storage staging bucket de l'onglet Spark configuration.

    • Lorsque vous utilisez HDInsight, spécifiez le blob à utiliser pour le déploiement du Job, dans la zone Windows Azure Storage configuration de l'onglet Spark configuration.

    • Lorsque vous utilisez Altus, spécifiez le bucket S3 ou le stockage Azure Data Lake Storage (apercu technique) pour le déploiement du Job, dans l'onglet Spark configuration.
    • Lorsque vous utilisez Qubole, ajoutez tS3Configuration à votre Job pour écrire vos données métier dans le système S3 avec Qubole. Sans tS3Configuration, ces données métier sont écrites dans le système Qubole HDFS et détruites une fois que vous arrêtez votre cluster.
    • Lorsque vous utilisez des distributions sur site (on-premises), utilisez le composant de configuration correspondant au système de fichiers utilisé par votre cluster. Généralement, ce système est HDFS et vous devez utiliser tHDFSConfiguration.

  • Standalone mode : vous devez choisir le composant de configuration selon le système de fichiers que vous utilisez, comme tHDFSConfiguration ou tS3Configuration.

    Si vous utilisez Databricks sans composant de configuration dans votre Job, vos données métier sont écrites directement dans DBFS (Databricks Filesystem).

Cette connexion fonctionne uniquement pour le Job dans lequel vous l'avez définie.

Propriétés du tUniqRow pour Apache Spark Streaming

Ces propriétés sont utilisées pour configurer le tUniqRow s'exécutant dans le framework de Jobs Spark Streaming.

Le composant tUniqRow Spark Streaming appartient à la famille Traitement.

Ce composant est disponible dans Talend Real Time Big Data Platform et dans Talend Data Fabric.

Basic settings

Schema et Edit schema

Un schéma est une description de lignes. Il définit le nombre de champs (colonnes) à traiter et à passer au composant suivant. Lorsque vous créez un Job Spark, évitez le mot réservé line lors du nommage des champs.

Modifiez le schéma en cliquant sur Edit Schema. Si le schéma est en mode Repository, trois options sont disponibles :

  • View schema : sélectionnez cette option afin de voir uniquement le schéma.

  • Change to built-in property : sélectionnez cette option pour passer le schéma en mode Built-In et effectuer des modifications locales.

  • Update repository connection : sélectionnez cette option afin de modifier le schéma stocké dans le référentiel et décider de propager ou non les modifications à tous les Jobs. Si vous souhaitez propager les modifications uniquement au Job courant, cliquez sur No et sélectionnez à nouveau la métadonnée du schéma dans la fenêtre Repository Content.

 

Built-in : le schéma est créé et conservé localement pour ce composant seulement.

 

Repository : le schéma existe déjà et est stocké dans le Repository. Ainsi, il peut être réutilisé dans des Jobs et projets.

Unique key

Sélectionnez dans cette zone une ou plusieurs colonnes sur lesquelles le dédoublonnage sera effectué.

- Cochez la case Key attribute afin d'effectuer le dédoublonnage sur toutes les colonnes.

- Cochez la case Case sensitive afin de différencier les majuscules et les minuscules.

Advanced settings

Only once each duplicated key

Cochez cette case si vous souhaitez envoyer uniquement les premières entrées en doublon des colonnes définies comme clé(s) vers le flux de sortie des doublons.

Utilisation

Règle d'utilisation

Ce composant est utilisé comme étape intermédiaire.

Ce composant, ainsi que les composants Spark Streaming de la Palette à laquelle il appartient, s'affichent uniquement lorsque vous créez un Job Spark Streaming.

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.

Connexion à Spark

Dans l'onglet Spark Configuration de la vue Run, définissez la connexion à un cluster Spark donné pour le Job complet. De plus, puisque le Job attend ses fichiers .jar dépendants pour l'exécution, vous devez spécifier le répertoire du système de fichiers dans lequel ces fichiers .jar sont transférés afin que Spark puisse accéder à ces fichiers :
  • Yarn mode (Yarn Client ou Yarn Cluster) :
    • Lorsque vous utilisez Google Dataproc, spécifiez un bucket dans le champ Google Storage staging bucket de l'onglet Spark configuration.

    • Lorsque vous utilisez HDInsight, spécifiez le blob à utiliser pour le déploiement du Job, dans la zone Windows Azure Storage configuration de l'onglet Spark configuration.

    • Lorsque vous utilisez Altus, spécifiez le bucket S3 ou le stockage Azure Data Lake Storage (apercu technique) pour le déploiement du Job, dans l'onglet Spark configuration.
    • Lorsque vous utilisez Qubole, ajoutez tS3Configuration à votre Job pour écrire vos données métier dans le système S3 avec Qubole. Sans tS3Configuration, ces données métier sont écrites dans le système Qubole HDFS et détruites une fois que vous arrêtez votre cluster.
    • Lorsque vous utilisez des distributions sur site (on-premises), utilisez le composant de configuration correspondant au système de fichiers utilisé par votre cluster. Généralement, ce système est HDFS et vous devez utiliser tHDFSConfiguration.

  • Standalone mode : vous devez choisir le composant de configuration selon le système de fichiers que vous utilisez, comme tHDFSConfiguration ou tS3Configuration.

    Si vous utilisez Databricks sans composant de configuration dans votre Job, vos données métier sont écrites directement dans DBFS (Databricks Filesystem).

Cette connexion fonctionne uniquement pour le Job dans lequel vous l'avez définie.

Propriétés du tUniqRow MapReduce (déprécié)

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

Le composant tUniqRow MapReduce appartient à la famille Qualité de données.

Le composant de ce framework est disponible dans tous les produits Talend avec Big Data nécessitant une souscription et dans Talend Data Fabric.

Le framework MapReduce est déprécié à partir de la version 7.3 de Talend. Utilisez des Jobs Talend pour Apache Spark afin d'accomplir vos tâches d'intégration.

Basic settings

Schema et Edit schema

Un schéma est une description de lignes. Il définit le nombre de champs (colonnes) à traiter et à passer au composant suivant. Lorsque vous créez un Job Spark, évitez le mot réservé line lors du nommage des champs.

Modifiez le schéma en cliquant sur Edit Schema. Si le schéma est en mode Repository, trois options sont disponibles :

  • View schema : sélectionnez cette option afin de voir uniquement le schéma.

  • Change to built-in property : sélectionnez cette option pour passer le schéma en mode Built-In et effectuer des modifications locales.

  • Update repository connection : sélectionnez cette option afin de modifier le schéma stocké dans le référentiel et décider de propager ou non les modifications à tous les Jobs. Si vous souhaitez propager les modifications uniquement au Job courant, cliquez sur No et sélectionnez à nouveau la métadonnée du schéma dans la fenêtre Repository Content.

Ce composant offre la fonction de schéma dynamique. Cela vous permet de récupérer des colonnes inconnues de fichiers sources ou de copier des lots de colonnes d'une source sans avoir à mapper chaque colonne individuellement. Pour plus d'informations concernant la définition des schémas dynamiques, consultez le Guide d'utilisation du Studio Talend.

Cette fonctionnalité de schéma dynamique est conçue pour permettre de récupérer des colonnes inconnues d'une table. Il est recommandé de l'utiliser uniquement à cet effet et non pour créer des tables.

 

Built-in : le schéma est créé et conservé localement pour ce composant seulement.

 

Repository : le schéma existe déjà et est stocké dans le Repository. Ainsi, il peut être réutilisé dans des Jobs et projets.

Unique key

Sélectionnez dans cette zone une ou plusieurs colonnes sur lesquelles le dédoublonnage sera effectué.

- Cochez la case Key attribute afin d'effectuer le dédoublonnage sur toutes les colonnes.

- Cochez la case Case sensitive afin de différencier les majuscules et les minuscules.

Advanced settings

Only once each duplicated key

Cochez cette case si vous souhaitez envoyer uniquement les premières entrées en doublon des colonnes définies comme clé(s) vers le flux de sortie des doublons.

Ignore trailing zeros for BigDecimal

Cochez cette case pour ignorer les zéros en fin de champs pour les données de type BigDecimal.

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.

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. À 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

Dans un Job Map/Reduce Talend, 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 Map/Reduce Talend, consultez les sections décrivant comment créer, convertir et configurer un Job Map/Reduce Talend, dans le Guide de prise en main de Talend Open Studio for Big Data.

Pour un exemple de scénario de Job Map/Reduce Job utilisant ce composant, consultez le Dédoublonner des entrées en utilisant des composants Map/Reduce.

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.

Scénarios

Dédoublonner des données

Ce scénario décrit un Job à cinq composants, dont le but est de trier des entrées à partir d'une liste d'entrées comprenant des noms, de trouver des noms en doublons, et d'afficher les noms uniques ainsi que les noms en doublon dans la console Run.

Configurer le Job

Procédure

  1. Déposez un tFileInputDelimited, un tSortRow, un tUniqRow et deux tLogRow de la Palette dans l'espace de modélisation graphique et renommez les composants comme montrer ci-dessus.
  2. Reliez les composants tFileInputDelimited, tSortRow, et tUniqRow à l'aide d'un lien Row > Main.
  3. Reliez le tUniqRow au premier tLogRow à l'aide d'un lien Main > Uniques.
  4. Reliez le tUniqRow au second tLogRow à l'aide d'un lien Main > Duplicates.

Configurer les composants

Procédure

  1. Double-cliquez sur le composant tFileInputDelimited afin d'afficher sa vue Basic settings.
  2. Cliquez sur le bouton [...] à côté du champ File Name pour sélectionner le fichier contenant les données d'entrée.
  3. Définissez les lignes d'en-tête et de pied de page. Dans ce scénario, la première ligne du fichier d'entrée est l'en-tête.
  4. Cliquez sur Edit schema pour définir le schéma de ce composant. Dans ce scénario, le fichier d'entrée comprend cinq colonnes : Id, FirstName, LastName, Age et City. Cliquez ensuite sur OK pour propager le schéma et fermer l'éditeur de schéma.
  5. Double-cliquez sur le tSortRow afin d'afficher sa vue Basic settings.
  6. Afin de disposer les entrées en ordre alphabétique des noms, ajoutez deux lignes au tableau Criteria en cliquant sur le bouton [+], sélectionnez les colonnes FirstName et LastName sous Schema column, sélectionnez le type de tri alphabétique (alpha), puis sélectionnez l'ordre croissant (asc).
  7. Double-cliquez sur le composant tUniqRow afin d'afficher sa vue Basic settings.
  8. Dans la zone Unique key, sélectionnez les colonnes sur lesquelles vous souhaitez effectuer le dédoublonnage. Dans ce scénario, les noms en doublon seront triés.
  9. Dans l'onglet Basic settings de chaque composant tLogRow, cochez l'option Table afin de visualiser le résultat de l'exécution du Job en mode tableau.

Exécuter le Job

Procédure

  1. Appuyez sur les touches Ctrl+S afin de sauvegarder votre Job.
  2. Exécutez le Job en appuyant sur F6 ou en cliquant sur le bouton Run dans l'onglet Run.
    Dans la console Run, les noms uniques et les noms en doublon sont affichés dans des tableaux différents.

Dédoublonner les entrées basées sur le schéma dynamique

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.

Dans ce scénario, vous utilisez un Job similaire à celui décrit dans le scénario précédent pour dédoublonner les données d'entrée de plusieurs familles, de telle manière qu'une seule personne par famille reste sur la liste des noms. Comme tous les composants de ce Job supportent le schéma dynamique, vous pouvez utiliser cette option pour gagner du temps en évitant de configurer chaque colonne des schémas.

Configurer le Job

Procédure

  1. Déposez les composants suivants de la Palette dans l'espace de modélisation graphique : un tFileInputDelimited, un tExtractDynamicFields, un tUniqRow, un tFileOutputDelimited et un tLogRow. Renommez-les comme ci-dessus pour mieux identifier leur rôle au sein du Job.
  2. Reliez les composants nommés People, Split_Column et Deduplicate à l'aide de liens Row > Main.
  3. Reliez le composant nommé Deduplicate au Unique_Families à l'aide d'un lien Main > Uniques.
  4. Reliez le composant nommé Deduplicate au Duplicated_Families à l'aide d'un lien Main > Duplicates.

Configurer les composants

Procédure

  1. Double-cliquez sur le composant nommé People pour afficher sa vue Basic settings.
    Avertissement :

    La fonctionnalité de schéma dynamique est supportée uniquement en mode Built-In et requiert une ligne d'en-tête dans le fichier d'entrée.

  2. Cliquez sur le bouton [...] près du champ File Name/Stream pour parcourir votre système jusqu'à votre fichier d'entrée.
  3. Définissez les lignes d'en-tête et de pied de page. Dans ce scénario, la première ligne du fichier d'entrée est l'en-tête.
  4. Cliquez sur Edit schema pour définir le schéma de ce composant.
    Dans ce scénario, le fichier d'entrée contient cinq colonnes : FirstName, LastName, HouseNo, Street, et City. Toutefois, comme vous allez profiter de l'option de schéma dynamique, vous n'aurez à définir qu'une seule colonne, ici nommée Dyna.
    Pour ce faire :
    1. Ajoutez une nouvelle ligne en cliquant sur le bouton [+].
    2. Dans le champ Column, saisissez Dyna.
    3. Dans la liste Type, choisissez Dynamic.
    4. Cliquez sur OK pour propager les changements et fermer la boîte de dialogue Schema.
  5. Double-cliquez sur le composant nommé Split_Column pour afficher sa vue Basic settings.
    Ce composant vous servira à séparer la colonne du schéma d'entrée en deux colonnes : une pour le prénom et l'autre pour les informations concernant la famille. Pour ce faire :
    1. Cliquez sur Edit schema pour ouvrir la boîte de dialogue Schema.
    2. Dans le panneau Output, sur la droite, cliquez sur le bouton [+] pour ajouter deux colonnes dans le schéma de sortie et appelez-les respectivement FirstName et FamilyInfo.
    3. Choisissez String dans la liste Type de la colonne FirstName pour extraire cette colonne du schéma d'entrée et prendre en compte le nom de chaque personne sur la liste des noms.
    4. Sélectionnez Dynamic dans la liste Type afin que la colonne FamilyInfo récupère le reste des informations de chaque personne de la liste : le nom, le numéro de la maison, la rue et la ville, qui ensemble constituent l'identification de la famille.
    5. Cliquez sur OK pour propager les changements et fermer la boîte de dialogue Schema.
  6. Double-cliquez sur le composant nommé Deduplicate pour afficher sa vue Basic settings.
  7. Dans la zone Unique key, cochez la case Key attribute pour la colonne FamilyInfo afin de dédoublonner les informations concernant la famille.
  8. Dans la vue Basic settings du tFileOutputDelimited nommé Deduplicated_Families, définissez le chemin d'accès au fichier de sortie, cochez la case Include header et laissez les autres paramètres tels qu'ils sont.
  9. Dans la vue Basic settings du composant tLogRow, nommé Duplicated_Families, sélectionnez l'option Table pour visualiser les résultats de l'exécution du Job en mode tableau.

Exécuter le Job

Procédure

  1. Appuyez sur les touches Ctrl+S afin de sauvegarder votre Job.
  2. Exécutez-le en appuyant sur F6 ou en cliquant sur le bouton Run dans l'onglet Run.
    Les informations concernant les familles en doublon apparaissent dans la console Run. Une personne par famille s'affiche dans la liste des noms, dans le fichier de sortie.

Dédoublonner des entrées en utilisant des composants Map/Reduce

Le framework MapReduce est déprécié à partir de la version 7.3 de Talend. Utilisez des Jobs Talend pour Apache Spark afin d'accomplir vos tâches d'intégration.

Ce scénario s'applique uniquement aux solutions Talend Platform avec Big Data et Talend Data Fabric nécessitant une souscription.

Ce scénario montre comment créer un Job Talend Map/Reduce afin de dédoublonner des entrées. En d'autres termes, ce scénario utilise des composants Map/Reduce afin de générer du code Map/Reduce et exécuter le Job dans Hadoop.

Notez que les composants Map/Reduce de Talend ne sont disponibles que pour les utilisateurs et utilisatrices ayant souscrit à une offre Big Data, et que ce scénario ne peut être reproduit qu'avec des composants Map/Reduce.

Les données d'exemple utilisées dans ce scénario se présentent comme suit :
1;Harry;Ford;68;Albany
2;Franklin;Wilson;79;Juneau
3;Ulysses;Roosevelt;25;Harrisburg
4;Harry;Ford;48;Olympia
5;Martin;Reagan;75;Columbia
6;Woodrow;Roosevelt;63;Harrisburg
7;Grover;McKinley;98;Atlanta
8;John;Taft;93;Montpelier
9;Herbert;Johnson;85;Lincoln
10;Grover;McKinley;33;Lansing

Étant donné que le Studio Talend vous permet de convertir un Job Map/Reduce en Job Standard (non Map/Reduce), et vice-versa, vous pouvez convertir le scénario expliqué plus tôt afin de créer ce Job Map/Reduce. Ainsi, la plupart des composants utilisés peuvent garder leurs paramètres d'origine afin de réduire votre charge de travail pour la création de ce Job.

Avant de commencer à reproduire ce scénario, assurez-vous d'avoir les droits d'accès appropriés à la distribution Hadoop à utiliser. Procédez comme suit :

Convertir le Job en un Job Big Data Batch

Procédure

  1. Dans la vue Repository, cliquez-droit sur le Job que vous avez créé dans le scénario précédent pour ouvrir son menu contextuel et sélectionnez Edit properties.
    La boîte de dialogue Edit properties s'ouvre alors. Notez que le Job doit être fermé avant que vous ne puissiez effectuer des changements dans cet assistant.
    L'assistant se présente comme dans la capture d'écran ci-dessous :
    Notez que vous pouvez changer le nom du Job ainsi que les autres informations de description du Job à partir de cet assistant.
  2. Dans la liste Job Type, sélectionnez Big Data Batch. Un Job Map/Reduce portant le même nom apparaît sous le sous-nœud Big Data Batch du nœud Job Design.

Réorganiser les composants

Procédure

  1. Double-cliquez sur le Job Map/Reduce que vous venez de créer afin de l'ouvrir dans l'espace de modélisation graphique. La Palette de composants Map/Reduce s'ouvre et des composants peuvent être barrés, car ils n'ont pas de version Map/Reduce.
  2. Cliquez-droit sur chacun des composants en question et sélectionnez Delete afin de les supprimer.
  3. Déposez un composant tHDFSInput, un tHDFSOutput et un tJDBCOutput dans l'espace de modélisation graphique. Le tHDFSInput lit les données à partir de la distribution Hadoop utilisée, le tHDFSOutput écrit les données dans cette distribution et le tJDBCOutput écrit les données dans une base de données, par exemple, une base de données MySQL pour ce scénario. Les deux composants de sortie remplacent les deux tLogRow pour écrire les données en sortie.
    Si vous partez d'un Job vierge, déposez également un tSortRow et un tUniqRow.
  4. Reliez le tHDFSInput au tSortRow à l'aide d'un lien Row > Main et acceptez le schéma provenant du tSortRow.
  5. Reliez le tUniqRow au tHDFSOutput à l'aide d'un lien Row > Uniques et au tJDBCOutput à l'aide d'un lien Row > Duplicates.

Configurer une connexion Hadoop

Procédure

  1. Cliquez sur Run afin d'ouvrir la vue correspondante et cliquez sur l'onglet Hadoop Configuration afin d'afficher cette vue et configurer la connexion Hadoop pour ce Job.
  2. Dans la liste Property type, sélectionnez Built-in. Si vous avez créé une connexion afin qu'elle soit utilisable depuis le Repository, sélectionnez alors Repository afin que le Studio Talend réutilise les informations de connexion pour ce Job.
  3. Dans la zone Version, sélectionnez la distribution Hadoop à utiliser et sa version.
    • Si vous utilisez Google Cloud Dataproc, consultez Google Cloud Dataproc.

    • Si vous ne trouvez pas la version de Cloudera ou Hortonworks à utiliser dans la liste déroulante Version, vous pouvez ajouter votre distribution dans les paramètres de distributions dynamiques dans le Studio.
      • Sur la liste des versions de distribution, certaines versions ont un libellé Builtin. Ces versions ont été ajoutées par Talend via le mécanisme de distribution dynamique et livrées avec le Studio lors de sa sortie. Elles sont certifiées par Talend et sont donc officiellement supportées et prêtes à l'emploi.
    • Si vous ne trouvez pas la distribution correspondant à la vôtre dans la liste, sélectionnez Custom afin de vous connecter à une distribution Hadoop non officiellement supportée par le Studio. Pour un exemple d'utilisation étape par étape de cette option Custom, consultez Connexion à une distribution Hadoop personnalisée.

  4. Dans le champ Name node, saisissez l'emplacement du nœud maître, le NameNode, de la distribution à utiliser. Par exemple, hdfs://tal-qa113.talend.lan:8020.
    • Si vous utilisez une distribution MapR, vous pouvez simplement laisser maprfs:/// dans le champ. Le client MapR va gérer les informations à la volée lors de la création de la connexion. Le client MapR doit être correctement installé. Pour plus d'informations concernant la configuration d'un client MapR, consultez la page suivante sur le site de la documentation MapR : http://doc.mapr.com/display/MapR/Setting+Up+the+Client (en anglais).

    • Si vous utilisez WebHDFS, l'emplacement doit être webhdfs://masternode:portnumber ; WebHDFS avec SSL n'est pas supporté.

  5. Dans le champ Resource Manager, saisissez l'emplacement du ResourceManager de votre distribution. Par exemple tal-qa114.talend.lan:8050.
    • Vous pouvez continuer à configurer les paramètres suivants selon la configuration du cluster Hadoop à utiliser (si vous ne cochez pas la case d'un paramètre, alors la configuration de ce paramètre dans le cluster Hadoop à utiliser sera ignorée lors de l'exécution) :

      • Cochez la case Set resourcemanager scheduler address et saisissez l'adresse de l'ordonnanceur (Scheduler) dans le champ qui apparaît.

      • Cochez la case Set jobhistory address et saisissez l'emplacement du serveur JobHistory du cluster Hadoop à utiliser. Cela permet de stocker les métriques du Job courant sur le serveur de JobHistory.

      • Cochez la case Set staging directory et saisissez le chemin d'accès au répertoire défini dans votre cluster Hadoop pour les fichiers temporaires créés par l'exécution de programmes. Ce répertoire se trouve sous la propriété yarn.app.mapreduce.am.staging-dir dans les fichiers de configuration comme yarn-site.xml ou mapred-site.xml de votre distribution.

      • Cochez la case Use datanode hostname pour permettre au Job d'accéder aux nœuds de données via leurs hébergeurs. Cela permet de configurer la propriété dfs.client.use.datanode.hostname à true. Lorsque vous vous connectez à un système de fichiers S3N, vous devez cocher cette case.

  6. Si vous accédez au cluster Hadoop fonctionnant avec la sécurité Kerberos, cochez cette case, puis saisissez le Principal Name de Kerberos pour le NameNode dans le champ affiché. Cela vous permet d'utiliser votre nom d'utilisateur ou d'utilisatrice pour vous authentifier, en les comparant aux informations stockées dans Kerberos.
    • Si ce cluster est un cluster MapR de version 5.0.0 ou postérieure, vous pouvez paramétrer la configuration de l'authentification par ticket MapR en plus ou comme une alternative en suivant les explications dans Connexion sécurisée à MapR.

      Gardez à l'esprit que cette configuration génère un nouveau ticket de sécurité MapR pour le nom d'utilisateur ou d'utilisatrice défini dans le Job dans chaque exécution. Si vous devez réutiliser un ticket existant provenant du même utilisateur, laissez décochées les cases Force MapR ticket authentication et Use Kerberos authentication.

    De plus, comme ce composant effectue des calculs Map/Reduce, vous devez également authentifier les services associés, comme le serveur de l'historique des Jobs et le gestionnaire de ressources ou le JobTracker, selon votre distribution, dans le champ correspondant. Ces principaux se trouvent dans les fichiers de configuration de votre distribution. Par exemple, dans une distribution CDH4, le principal du gestionnaire de ressource est configuré dans le fichier yarn-site.xml et le principal de l'historique des Jobs dans le fichier mapred-site.xml.

    Si vous souhaitez utiliser un fichier Kerberos keytab pour vous identifier, cochez la case Use a keytab to authenticate. Un fichier Keytab contient les paires des Principaux et clés cryptées Kerberos. Vous devez saisir le principal à utiliser dans le champ Principal et le chemin d'accès au fichier keytab dans le champ Keytab. Ce fichier keytab doit être stocké sur la machine où s'exécute votre Job, par exemple, sur un serveur de Jobs Talend.

    l'utilisateur ou l'utilisatrice exécutant un Job utilisant un fichier Keytab n'est pas nécessairement celui désigné par un Principal mais doit avoir le droit de lire le fichier Keytab utilisé. Par exemple, le nom d'utilisateur ou d'utilisatrice que vous utilisez pour exécuter le Job est user1 et le principal à utiliser est guest. Dans cette situation, assurez-vous que user1 a les droits de lecture pour le fichier keytab à utiliser.

  7. Dans le champ User name, saisissez votre identifiant pour cette distribution. Si vous laissez le champ vide, le nom de la machine hébergeant le Studio sera utilisé.
  8. Dans le champ Temp folder, saisissez le chemin d'accès au dossier HDFS dans lequel sont stockés les fichiers temporaires générés pendant les opérations de Map/Reduce.
  9. Laissez le champ Path separator in server tel quel, sauf si vous changez le séparateur utilisé par la machine hôte de votre distribution Hadoop pour sa variable PATH. En d'autres termes, changez le séparateur si celui-ci n'est pas le signe deux points (:). Dans ce cas, vous devez remplacer cette valeur par celle utilisée dans votre hôte.
  10. Laissez la case Clear temporary folder (Effacer le contenu du dossier temporaire) cochée, sauf si vous souhaitez garder ces fichiers temporaires.
  11. Laissez la case Compress intermediate map output to reduce network traffic (Compresser la sortie de mapping intermédiaire pour réduire la consommation de bande passante) cochée, afin de réduire le temps de transfert des partitions du Mapper aux différents Reducers.
    Cependant, si le transfert des données dans le Job est négligeable, il est recommandé de décocher cette case afin de désactiver l'étape de compression, car la compression consomme des ressources supplémentaires du CPU.
  12. Si vous souhaitez utiliser des propriétés Hadoop personnalisées, renseignez la table Hadoop properties avec la ou les propriété(s) à personnaliser. Lors de l'exécution, les propriétés personnalisées écrasent celles par défaut utilisées par le Studio pour son moteur Hadoop.
    Pour plus d'informations concernant les propriétés requises par Hadoop, consultez la documentation de Apache Hadoop à l'adresse suivante : http://hadoop.apache.org (en anglais) ou la documentation de la distribution Hadoop que vous utilisez.
  13. Si le chiffrement transparent HDFS est activé dans votre cluster, cochez la case Setup HDFS encryption configurations et, dans le champ HDFS encryption key provider qui s'affiche, saisissez l'emplacement du proxy KMS.

    Pour plus d'informations concernant le chiffrement transparent HDFS et son proxy KMS, consultez Transparent Encryption in HDFS (en anglais).

  14. Vous pouvez personnaliser les opérations map et reduce en cochant la case Set memory, pour configurer les allocations de mémoire pour ces opérations à effectuer par le système Hadoop.

    Les paramètres de mémoire à définir sont Map (in Mb), Reduce (in Mb) et ApplicationMaster (in Mb). Ces champs permettent d'allouer dynamiquement de la mémoire aux opérations map et reduce et à l'ApplicationMaster de YARN.

    Pour plus d'informations concernant le Resource Manager, son ordonnanceur et l'ApplicationMaster, consultez la documentation de YARN sur le site http://hortonworks.com/blog/apache-hadoop-yarn-concepts-and-applications/ (en anglais).

    Pour plus d'informations concernant la définition des paramètres de mémoire pour YARN et MapReduce, consultez la documentation de la distribution utilisée comme, par exemple, celle d'Hortonworks : http://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.0.6.0/bk_installing_manually_book/content/rpm-chap1-11.html (en anglais).

  15. Si vous utilisez Cloudera V5.5 ou une version supérieure, vous pouvez cocher la case Use Cloudera Navigator pour permettre au Cloudera Navigator de votre distribution de visualiser le lignage de vos Jobs jusqu'au niveau des composants, notamment les modifications des schémas entre les composants.

    Lorsque cette option est activée, vous devez configurer les paramètres suivants :

    • Username et Password : informations d'authentification utilisées pour vous connecter à votre Cloudera Navigator.

    • Cloudera Navigator URL : saisissez l'emplacement du Cloudera Navigator pour vous connecter.

    • Cloudera Navigator Metadata URL : saisissez l'emplacement où sont stockées les métadonnées (Navigator Metadata).

    • Activate the autocommit option : cochez cette case pour que le Cloudera Navigator génère le lignage du Job courant à la fin de son exécution.

      Comme cette option force le Cloudera Navigator à générer des lignages de toutes ses entités disponibles, comme les fichiers et répertoires HDFS, les requêtes Hive ou les scripts Pig, il n'est pas recommandé de l'utiliser dans un environnement de production, car elle ralentit le Job.

    • Kill the job if Cloudera Navigator fails : cochez cette case pour arrêter l'exécution du Job lorsque la connexion à Cloudera Navigator échoue.

      Sinon, laissez cette case décochée pour que votre Job continue à s'exécuter.

    • Disable SSL validation : cochez cette case pour que votre Job se connecte au Cloudera Navigator sans processus de validation SSL.

      Cette fonctionnalité est conçue pour simplifier les tests de vos Jobs mais il n'est pas recommandé de l'utiliser dans un cluster en production.

  16. Si vous utilisez Hortonworks Data Platform V2.4.0 ou supérieure et que vous avez installé Atlas dans votre cluster, vous pouvez cocher la case Use Atlas, afin de permettre le lignage du Job au niveau des composants, notamment les modifications de schéma entre les composants.

    Lorsque cette option est activée, vous devez configurer les paramètres suivants :

    • Atlas URL : saisissez l'emplacement d'Atlas auquel se connecter. C'est généralement http://nom_de_votre_noeud_atlas:port

    • Die on error : cochez cette case pour arrêter l'exécution du Job lorsque des problèmes relatifs à Atlas surviennent, par exemple des problèmes de connexion à Atlas.

      Sinon, laissez cette case décochée pour que votre Job continue à s'exécuter.

    Dans les champs Username et Password, saisissez respectivement les informations d'authentification pour accéder à Atlas.

Configurer les composants d'entrée et de sortie

Configurer le tHDFSInput

Procédure

  1. Double-cliquez sur le tHDFSInput pour ouvrir sa vue Component.
  2. Cliquez sur le bouton situé à côté du champ Edit schema afin de vérifier si le schéma reçu dans les étapes précédentes a été correctement défini.
    Notez que si vous avez créé ce Job à partir d'un Job vierge, vous devez cliquer sur le bouton afin d'ajouter manuellement ces colonnes au schéma. Si le schéma a été défini dans le Repository, vous pouvez sélectionner l'option Repository dans la liste Schema de la vue Basic settings afin de le réutiliser. Pour plus d'informations concernant la définition d'un schéma dans le Repository, consultez le chapitre décrivant la gestion des métadonnées dans le Guide d'utilisation du Studio Talend ou le chapitre décrivant le nœud Hadoop cluster du Repository dans le Guide de prise en main de Talend Open Studio for Big Data .
  3. Si vous effectuez des changements dans le schéma, cliquez sur OK afin de valider ces changements et acceptez la propagation proposée par la boîte de dialogue qui s'affiche.
  4. Dans le champ Folder/File, saisissez le chemin ou parcourez votre système vers le fichier source à lire par le Job.
    Si le fichier ne se trouve pas dans le système HDFS utilisé, vous devez le placer dans le système HDFS. Pour cela, vous pouvez par exemple utiliser le tFileInputDelimited et le tHDFSOutput dans un Job Standard.

Vérifier les composants de transformation

Procédure

  1. Double-cliquez sur le tSortRow afin d'ouvrir sa vue Component.
    Ce composant garde la configuration utilisée dans le Job d'origine. Il trie les données d'entrée par ordre alphabétique à partir des colonnes FirstName et LastName.
  2. Double-cliquez sur le tUniqRow pour ouvrir sa vue Component.
    Le composant garde également la configuration utilisée dans le Job d'origine. Il sépare les données d'entrée en un flux Uniques et un flux Duplicates (Doublons), puis envoie les données uniques dans le tHDFSOutput et les doublons dans le tJDBCOutput.

Configurer le tHDFSOutput

Procédure

  1. Double-cliquez sur le tHDFSOutput afin d'ouvrir sa vue Component.
  2. Comme expliqué précédemment pour la vérification du schéma du tHDFSInput, procédez de la même manière afin de vérifier le schéma du tHDFSOutput. S'il ne correspond pas au schéma du composant précédent, le tUniqRow, cliquez sur Sync column afin de récupérer le schéma du tUniqRow.
  3. Dans le champ Folder, saisissez le chemin d'accès au dossier dans lequel vous souhaitez écrire les données uniques. Vous pouvez également parcourir votre système de fichiers afin de définir ce chemin.
  4. Dans la liste Action, sélectionnez l'opération que vous souhaitez effectuer sur le dossier en question. Si le dossier existe déjà, sélectionnez Overwrite, sinon, sélectionnez Create.

Configurer le tJDBCOutput

Procédure

  1. Double-cliquez sur le tJDBCOutput afin d'ouvrir sa vue Component.