tPigReplicate - 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

Avertissement

Ce composant est disponible dans la Palette du Studio Talend si vous avez souscrit à l'une des solutions Big Data de Talend.

Fonction

Le composant tPigReplicate s'utilise à la suite d'un composant Pig d'entrée. Il duplique le schéma entrant en autant de flux de sortie identiques que nécessaire.

Objectif

Ce composant vous permet d'effectuer différentes opérations sur le même schéma.

Propriétés du tPigReplicate

Famille du composant

Big Data / Pig

 

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.

Depuis la version 5.6, les modes Built-In et Repository sont disponibles dans toutes les solutions de Talend.

Cliquez sur Edit schema pour modifier le schéma. Si le schéma est en mode Repository, trois options sont disponibles :

  • View schema : sélectionnez cette option afin de voir 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].

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.

Advanced settings

tStatCatcher Statistics

Cochez cette case pour collecter les données de log au niveau du 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 n'est pas un composant de début (fond vert), il nécessite un tPigLoad en entrée et attend d'autres composants Pig pour gérer son (ses) flux de sortie.

Prérequis

La distribution Hadoop doit être correctement installée afin de garantir les interactions avec le Studio Talend. La liste suivante présente des informations d'exemple relatives à MapR.

  • Assurez-vous d'avoir installé le client MapR sur la même machine que le Studio Talend et d'avoir ajouté la bibliothèque client de MapR dans la variable PATH de cette machine. D'après la documentation de MapR, la ou les librairies du client MapR correspondant à chaque OS peuvent être trouvées MAPR_INSTALL\ hadoop\hadoop-VERSION\lib\native. Par exemple, pour Windows, la bibliothèque est lib\MapRClient.dll dans le fichier Jar du client MapR. Pour plus d'informations, consultez la page suivante sur le site de MapR : http://www.mapr.com/blog/basic-notes-on-configuring-eclipse-as-a-hadoop-development-environment-for-mapr (en anglais).

    Si vous n'ajoutez pas de librairie, il est possible que vous rencontriez l'erreur suivante : no MapRClient in java.library.path.

  • Configurez l'argument -Djava.library.path, par exemple, dans la zone Job Run VM arguments de la vue Run/Debug de la boîte de dialogue [Preferences] dans le menu Window. Cet argument fournit au studio le chemin d'accès à la bibliothèque native du client MapR. Cela permet aux utilisateurs en souscription d'utiliser entièrement l'aperçu des données (Data viewer) afin de visualiser localement dans le studio les données stockées dans MapR.

Pour plus d'informations concernant l'installation d'une distribution Hadoop, consultez le manuel correspondant à la distribution Hadoop que vous utilisez.

Connections

Liens de sortie (de ce composant à un autre) :

Row : Pig combine. Ce lien effectue une jointure sur toutes les processus de données crées dans le Job et les exécute simultanément.

Lien d'entrée (d'un autre composant à celui-ci) :

Row : Pig combine.

Pour plus d'informations concernant les connexions, consultez le Guide utilisateur du Studio Talend.

Log4j

Si vous utilisez une solution Talend soumise à souscription, l'activité de ce composant peut être journalisée avec la fonctionnalité log4j. Pour plus d'informations sur cette fonctionnalité, consultez le Guide utilisateur du Studio Talend.

Pour plus d'informations sur les niveaux de logs du log4j, consultez la documentation d'Apache : http://logging.apache.org/log4j/1.2/apidocs/org/apache/log4j/Level.html (en anglais).

Scénario : Répliquer un flux et trier deux flux identiques

Le Job de ce scénario utilise des composants Pig pour gérer les noms et les états chargés d'un système HDFS donné. Il lit et réplique le flux d'entrée et trie les données des deux flux identiques, respectivement sur le nom et sur l'état, puis écrit les résultats dans ce système HDFS.

Avant de commencer à reproduire ce Job, assurez-vous de posséder les droits en lecture écriture de données dans la distribution Hadoop à utiliser et que Pig est correctement installé dans cette distribution.

Relier les composants

  1. Dans la perspective Integration du Studio Talend, créez un Job vide, nommé Replicate par exemple, à partir du nœud Job Designs dans la vue Repository.

    Pour plus d'informations concernant la création d'un Job, consultez le Guide utilisateur du Studio Talend.

  2. Déposez un tPigLoad, un tPigReplicate, deux tPigSort et deux tPigStoreResult dans l'espace de modélisation graphique.

    Le composant tPigLoad lit des données du système HDFS donné. Les données d'exemple utilisées dans ce scénario se présentent comme suit :

    Andrew Kennedy;Mississippi
    Benjamin Carter;Louisiana
    Benjamin Monroe;West Virginia
    Bill Harrison;Tennessee
    Calvin Grant;Virginia
    Chester Harrison;Rhode Island
    Chester Hoover;Kansas
    Chester Kennedy;Maryland
    Chester Polk;Indiana
    Dwight Nixon;Nevada
    Dwight Roosevelt;Mississippi
    Franklin Grant;Nebraska

    L'emplacement des données dans ce scénario est le suivant /user/ychen/raw/Name&State.csv.

  3. Reliez les composants à l'aide de liens Row > Pig combine.

Configurer le tPigLoad

  1. Double-cliquez sur le tPigLoad pour ouvrir sa vue Component.

  2. Cliquez sur le bouton à côté du champ Edit schema pour ouvrir l'éditeur de schéma.

  3. Cliquez deux fois sur le bouton pour ajouter deux lignes et nommez-les respectivement Name et State.

  4. Cliquez sur OK pour valider ces modifications et acceptez la propagation proposée par la boîte de dialogue qui s'ouvre.

  5. Dans la zone Mode, sélectionnez Map/Reduce. Le Hadoop à utiliser dans ce scénario est installé sur une machine distante. Une fois l'option sélectionnée, les paramètres à configurer apparaissent.

  6. Dans les listes Distribution et Version, sélectionnez la distribution de Hadoop à utiliser.

  7. Dans la liste Load function, sélectionnez PigStorage

  8. Dans les champs NameNode URI et JobTracker host, saisissez l'emplacement du NameNode et du JobTracker à utiliser pour Map/Reduce.

  9. Dans le champ Input file URI, saisissez l'emplacement des données à lire depuis HDFS. Dans cet exemple, l'emplacement est /user/ychen/raw/NameState.csv.

  10. Dans le champ Field separator, saisissez ;.

Configurer le tPigReplicate

  1. Double-cliquez sur le tPigReplicate pour ouvrir sa vue Component.

  2. Cliquez sur le bouton à côté du champ Edit schema pour ouvrir l'éditeur de schéma et vérifier que le schéma est identique à celui du composant précédent.

    Note

    Si le composant n'a pas le même schéma que celui du composant précédent, une icône d'avertissement apparaît. Dans ce cas, cliquez sur le bouton Sync columns pour récupérer le schéma du composant précédent. Cela fait, l'icône disparaît.

Configurer le tPigSort

Deux composants tPigSort sont utilisés pour trier les deux flux de sortie identiques : un sur la colonne Name et l'autre sur la colonne State.

  1. Double-cliquez sur le premier composant tPigSort pour ouvrir sa vue Component et définir le tri par nom.

  2. Dans la table Sort key, ajoutez une ligne en cliquant sur le bouton sous la table.

  3. Dans la colonne Column, sélectionnez Name dans la liste déroulante et sélectionnez ASC dans la colonne Order.

  4. Double-cliquez sur l'autre composant tPigSort pour ouvrir sa vue Component et définir le tri par état.

  5. Dans la table Sort key, ajoutez une ligne puis sélectionnez Name dans la liste déroulante de la colonne Column et sélectionnez ASC dans la colonne Order.

Configurer le tPigStoreResult

Deux composants tPigStoreResult sont utilisés pour écrire les données triées dans HDFS.

  1. Double-cliquez sur le premier composant tPigStoreResult pour ouvrir sa vue Component et écrire les données triées par nom.

  2. Dans le champ Result file, saisissez le répertoire dans lequel les données seront écrites. Ce répertoire sera créé s'il n'existe pas. Dans ce scénario, le répertoire est le suivant /user/ychen/sort/tPigreplicate/byName.csv.

  3. Sélectionnez Remove result directory if exists.

  4. Dans la liste Store function, sélectionnez PigStorage.

  5. Dans le champ Field separator, saisissez ;.

  6. Répétez l'opération pour l'autre composant tPigStoreResult mais sélectionnez un répertoire différent pour les données triées par état. Dans ce scénario, le répertoire est le suivant /user/ychen/sort/tPigreplicate/byState.csv.

Exécuter le Job

Vous pouvez exécuter le Job.

  • Appuyez sur F6 pour l'exécuter.

Cela fait, parcourez votre système jusqu'aux emplacements où les résultats ont été écrits dans HDFS.

La capture d'écran suivante présente les résultats triés par nom :

La capture d'écran suivante présente les résultats triés par état :

Si vous souhaitez plus d'informations concernant le Job et son exécution, utilisez la console Web fournie par la distribution Hadoop que vous utilisez.

Dans le JobHistory, vous pouvez facilement trouver le statut d'exécution de votre Job Pig car il est automatiquement nommé. Son nom est le résultat de la concaténation du nom du projet contenant le Job, du nom du Job, de sa version et du libellé du premier composant tPigLoad utilisé. La convention de nommage d'un Job Pig dans le JobHistory est la suivante : ProjectName_JobNameVersion_FirstComponentName.