Propriétés du tJavaMR MapReduce - 7.1

Java custom code for Map Reduce

Version
7.1
Language
Français (France)
Product
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Real-Time Big Data Platform
Module
Studio Talend
Content
Création et développement > Systèmes tiers > Composants Custom Code (Intégration) > Composant Custom Code Java pour Map Reduce
Gouvernance de données > Systèmes tiers > Composants Custom Code (Intégration) > Composant Custom Code Java pour Map Reduce
Qualité et préparation de données > Systèmes tiers > Composants Custom Code (Intégration) > Composant Custom Code Java pour Map Reduce

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

Le composant tJavaMR MapReduce appartient à la famille Custom Code.

Le composant de ce framework est disponible dans tous les produits Talend Platform avec Big Data 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.

 

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.

 

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.

Map only

Cochez cette case afin d'éditer et utiliser uniquement un mapping personnalisé. Dans ce cas, seuls le champ Map code et la zone Map advanced code sont disponibles.

Map code

Saisissez le corps de la méthode map que vous souhaitez exécuter.

Ce composant définit automatiquement les autres parties de la méthode de mapping. Si vous n'utilisez pas l'option Map only, le tJavaMR utilise également de manière automatique le nom spécifié des colonnes dans les tables mrKeyStruct et mrValueStruct. Cela permet d'instancier l'intermédiaire des paires clé/valeur entre la phase map et la phase reduce.

Par exemple, dans la table mrKeyStruct, nommez la colonne word. Ensuite, lorsque vous écrivez le code, saisissez mrKey.word afin de représenter l'instance de la clé correspondante. À l'exécution, cette instance est automatiquement construite afin d'avoir la structure mrKey_component_ID.word comme par exemple mrKey_tJavaMR_1.word.

Notez que le texte affiché au-dessus du champ Map code montre les paramètres que vous pouvez directement utiliser pour écrire le code, comme par exemple mrKey, mrValue ou outputRow.

Pour plus d'informations concernant la méthode de mapping et l'intermédiaire des paires clé/valeur générées en sortie, consultez https://hadoop.apache.org/docs/stable/api/org/apache/hadoop/mapred/Mapper.html (en anglais).

Pour plus d'informations concernant la syntaxe des fonctions Java spécifiques à Talend , consultez l'aide du Studio Talend (Help > Developer Guide > API Reference).

Pour une référence Java complète, consultez http://docs.oracle.com/javaee/6/api/ (en anglais).

mrKeyStruct et mrValueStruct

Dans ces deux tables, ajoutez les colonnes que vous souhaitez utiliser afin de composer les paires clé/valeur requises par les opérations MapReduce.

Reduce code

Saisissez le corps de la méthode reduce que vous souhaitez exécuter en fonction de la tâche que vous devez effectuer.

Ce composant définit automatiquement les phases de regroupement (shuffle) et de tri ainsi que les autres parties de la méthode reduce. Il utilise également le nom spécifié des colonnes dans les tables mrKeyStruct et mrValueStruct. Cela permet d'instancier l'intermédiaire des paires clé/valeur qui ont été regroupées et triées.

Par exemple, dans la table mrKeyStruct, nommez la colonne word. Ensuite, lorsque vous écrivez le code, saisissez key.word afin de représenter l'instance de la clé correspondante. À l'exécution, cette instance est automatiquement construite afin d'avoir la structure key_component_ID.word comme par exemple key_tJavaMR_1.word. De même, dans la table mrValueStruct, saisissez count. Ensuite, saisissez values.count afin de définir l'instance de la valeur correspondante. À l'exécution, cette instance est automatiquement construite afin d'avoir la structure values_component_ID.count comme par exemple values_tJavaMR_1.count.

Notez que le texte affiché au-dessus du champ Reduce code montre les paramètres que vous pouvez directement utiliser pour écrire le code.

Pour plus d'informations concernant la méthode reduce, ses phases et les paires clé/valeur, consultez https://hadoop.apache.org/docs/stable/api/org/apache/hadoop/mapred/Reducer.html (en anglais).

Pour plus d'informations concernant la syntaxe des fonctions Java spécifiques à Talend , consultez l'aide du Studio Talend (Help > Developer Guide > API Reference).

Pour une référence Java complète, consultez http://docs.oracle.com/javaee/6/api/ (en anglais).

Advanced settings

Map advanced code

Dans cette zone, définissez les classes, les variables et les méthodes que vous souhaitez utiliser avec la méthode de mapping définie dans la vue Basic settings. Notez que le code saisi dans cette zone n'est pas requis pour utiliser le tJavaMR.

Trois champs sont disponibles :

Implement the prepare code : cochez cette case et, dans le champ qui s'affiche, définissez les variables, les méthodes et les classes internes à inclure dans le corps de la classe publique de la partie Map de ce composant.

Implement the configure method : cochez cette case et, dans le champ qui s'affiche, définissez le corps de la méthode configure pour la partie Map de ce composant.

Implement the close method : cochez cette case et, dans le champ qui s'affiche, définissez le corps de la méthode close de la partie Map de ce composant.

Reduce advanced code

Dans cette zone, définissez les classes, les variables et les méthodes que vous souhaitez utiliser avec la méthode reduce définie dans la vue Basic settings. Notez que le code saisi dans cette zone n'est pas requis pour utiliser le tJavaMR.

Trois champs sont disponibles :

Implement the prepare code : cochez cette case et, dans le champ qui s'affiche, définissez les variables, les méthodes et les classes internes à inclure dans le corps de la classe publique de la partie Reduce de ce composant.

Implement the configure method : cochez cette case et, dans le champ qui s'affiche, définissez le corps de la méthode configure pour la partie Reduce de ce composant.

Implement the close method : cochez cette case et, dans le champ qui s'affiche, définissez le corps de la méthode close de la partie Reduce de ce composant.

Global Variables

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 utilisateur du Studio Talend .

Utilisation

Règle d'utilisation

Une fois le Job Map/Reduce ouvert dans l'espace de modélisation graphique, le tJavaMR apparaît dans la Palette du Studio. Il est utilisé en tant qu'étape intermédiaire dans un Job 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.

Hadoop Connection

Vous devez utiliser l'onglet Hadoop Configuration de la vue Run afin de définir la connexion à une distribution Hadoop donnée pour le Job complet.

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