Accéder au contenu principal Passer au contenu complémentaire

Mapper des données avec rejet Inner join

Ce scénario, basé sur le scénario 1, requiert l'ajout d'un fichier d'entrée contenant les informations sur les revendeurs, ainsi que l'ajout de champs supplémentaires dans la table de sortie principale. De plus, deux filtres sont ajoutés sur les jointures Inner Join afin de récupérer les rejets spécifiques.

Relier les composants

Procedure

  1. Déposez un tFileInputDelimited et un tFileOutputDelimited dans l'espace de modélisation graphique et renommez les composants, respectivement Resellers et No_Reseller_ID.
  2. Reliez cette connexion au tMap à l'aide d'un lien Row > Main et nommez cette connexion Ressellers_data.
  3. Reliez le tMap au nouveau tFileOutputDelimited à l'aide d'un lien Row. Renommez le lien Reject_ResellerID.

Configurer la jointure Inner Join

Procedure

  1. Double-cliquez sur le composant Resellers pour définir ses propriétés dans la vue Basic settings.
  2. Sélectionnez Repository dans la liste Property Type et sélectionnez le schéma resellers, dans la boîte de dialogue Repository Content. Les autres champs sont automatiquement renseignés.
    Note InformationsNote:

    Dans ce scénario, les schémas d'entrée sont stockés sous le nœud Metadata du Repository afin de les retrouver facilement. Pour plus d'informations concernant la création de métadonnées dans la vue Repository, consultez Gestion des métadonnées dans le Studio Talend.

  3. Double-cliquez sur le composant tMap pour accéder au Map Editor.
    Vous remarquerez que le schéma est automatiquement ajouté à la zone Input des schémas d'entrée.
  4. Créez une jointure entre le flux d'entrée principal et le nouveau flux d'entrée en déposant la colonne ID_Reseller de la table Cars_data dans la colonne ID_Reseller de la table Resellers_data.
  5. Cliquez sur le bouton tMap settings en haut de la table Resellers_data et sélectionnez Inner Join comme modèle de jointure (Join Model).
  6. Glissez-déposez toutes les colonnes de la table Resellers_data sauf ID_Reseller dans la table de sortie principale, Insured.
    Note InformationsNote:

    Lorsque deux Inner Joins sont définis, vous devez soit définir deux tables de rejet Inner Join pour différencier les deux rejets, soit rassembler les deux rejets Inner Join dans une seule et même table de sortie, s'il n'y a qu'une seule sortie.

  7. Dans la zone de sortie Output, cliquez sur le bouton [+] pour ajouter un table de sortie et nommez-la Reject_ResellerID.
  8. Déposez toutes les colonnes de la table Cars_data dans la table Reject_ResellerID.
  9. Cliquez sur le bouton tMap settings puis sélectionnez true pour Catch lookup inner join reject afin de définir la nouvelle table de sortie comme étant la table du flux de sortie de rejets Inner Join.
    Si la jointure Inner Join ne peut être établie pour une entrée, les informations concernant les voitures correspondantes seront rassemblées dans le flux de sortie.
  10. Appliquez maintenant un filtre sur chacune des sorties de rejet Inner Join afin de distinguer les deux types de rejets.
    Dans la première table de rejet (Reject_OwnerID), cliquez sur la flèche dotée d'un signe [+] pour ajouter une ligne de filtre et renseignez ce champ avec la formule suivante pour ne recueillir que les rejets liés au champ OwnerID non défini : Owners_data.ID_Owner==null.
  11. Dans la seconde table de rejet Inner Join (Reject_ResellerID), renouvelez l'opération et utilisez la formule suivante : Resellers_data.ID_Reseller==null
    Cliquez sur OK pour valider les paramètres de mapping et fermer le Map Editor.
  12. Double-cliquez sur le composant No_Reseller_ID pour afficher sa vue Basic settings.
    Spécifiez le chemin d'accès au fichier de sortie et cochez la case Include Header. Laissez les autres paramètres tels qu'ils sont.
  13. Pour comprendre le fonctionnement du Mapper, dans ce scénario, retirez du fichier Resellers.csv les lignes correspondant aux Reseller ID 5 et 8.

Exécuter le Job

Procedure

  1. Appuyez sur les touches Ctrl + S pour sauvegarder votre Job.
  2. Appuyez sur F6 pour l'exécuter.

Results

Les quatre fichiers de sortie sont tous créés dans le dossier spécifique. Ils contiennent les informations telles que définies. Le fichier de sortie No_Reseller_ID.csv contient les informations cars relatives aux ID des revendeurs 5 et 8, qui sont manquants dans le fichier d'entrée Resellers.csv.

Un troisième scénario plus avancé et basé sur le scénario 2 requiert l'ajout d'une nouvelle entrée contenant les informations d'assurance, par exemple.

Dans le Mapper, mettez en place une jointure Inner Join entre deux tables de référence (Lookup) des flux secondaires Owners et Insurance afin de gérer les références en cascade et par conséquent de récupérer les informations de la table Insurance via les données de la table Owners.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.