Propriétés du tMongoDBOutput dans des Jobs Spark Streaming - 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

Famille du composant

Big Data / MongoDB

 

Basic settings

Property type

Peut être Built-In ou Repository.

- Built-In : Propriétés utilisées ponctuellement.

- Repository : Sélectionnez le fichier dans lequel sont stockées les propriétés du composant.

 

MongoDB configuration

Cochez cette case et sélectionnez le composant de connexion adéquat à partir de la liste Component List pour réutiliser les paramètres d'une connexion que vous avez déjà définie.

 

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.

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

Si une colonne dans une base de données est un document JSON et que vous devez lire le document entier, saisissez un astérisque "*" dans la colonne DB column, sans guillemet.

 

Collection

Saisissez le nom de la collection à utiliser.

Une collection MongoDB est l'équivalent d'une table d'un SGBDR et contient des documents.

 

Set write concern

Cochez cette case pour configurer le niveau d'accusé de réception requis par MongoDB pour les opérations d'écriture. Sélectionnez le niveau de cette opération.

Pour plus d'informations, consultez la documentation relative à MongoDB à l'adresse suivante : http://docs.mongodb.org/manual/core/write-concern/ (en anglais).

 

Action on data

Les opérations suivantes sont disponibles :

  • Insert : insère des documents.

  • Set : modifie les champs existants d'un document existant et écrit à la suite un champ s'il n'existe pas dans ce document.

    Si vous devez appliquer cette action sur tous les documents dans le collection à utiliser, cochez la case Update all document affichée. Sinon, seul le premier document est mis à jour.

    Si vous devez écrire un nouveau champ à la suite d'un nœud père spécifié dans la table Mapping, cochez la case Append to parent. Si vous laissez cette case décochée, ce nouveau champ est écrit à la suite de la racine du document mis à jour.

  • Upsert with set : insère un document s'il n'existe pas, sinon applique les mêmes règles que l'action Set.

    Si vous devez appliquer cette action sur tous les documents de la collection à utiliser, cochez la case Update all document qui s'affiche. Sinon, seul le premier document est mis à jour.

    Si vous devez écrire un nouveau champ à la suite d'un nœud père spécifié dans la table Mapping, cochez la case Append to parent. Si vous laissez cette case décochée, ce nouveau champ est écrit à la suite de la racine du document mis à jour.

 

Mapping

Chaque colonne du schéma défini pour ce composant représente un champ des documents à lire. Dans cette table, vous devez spécifier les nœuds parents de ces champs, s'il y en a.

Par exemple, dans le document se présentant comme suit :

{
               _id: ObjectId("5099803df3f4948bd2f98391"),
               person: { first: "Joe", last: "Walker" }
            }

Les champs first et last ont un nœud père person mais le champ _id ne contient aucun nœud père. Cela fait, la table Mapping doit ressembler à ceci :

Column     Parent node path
_id
first       "person"
last        "person"

Advanced settings

Advanced Hadoop MongoDB properties

Ajoutez des propriétés afin de définir des opérations supplémentaires que vous souhaitez que le composant tMongoDBOutput effectue lors de l'écriture des données.

Les propriétés disponibles sont listées et expliquées à l'adresse suivante MongoDB Connector for Hadoop (en anglais).

Utilisation dans des Jobs Spark Streaming

Ce composant est utilisé en tant que composant de fin et nécessite un lien d'entrée.

Ce composant nécessite qu'un tMongoDBConfiguration soit présent dans le même Job afin de se connecter à une base de données MongoDB. Vous devez déposer un tMongoDBConfiguration près de ce composant et en configurer les propriétés simples (dans l'onglet Basic settings) pour utiliser le tMongoDBConfiguration.

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 de type Standard, c'est-à-dire des Jobs Talend traditionnels d'intégration de données.

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

Spark Connection

Vous devez utiliser l'onglet Spark Configuration de la vue Run afin de définir 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, un (et un seul) composant relatif à un système de fichiers de la famille Storage est requis au sein du même Job, afin que Spark puisse utiliser ce composant pour se connecter au système de fichiers auquel les fichiers .jar dépendants du Job sont transférés :

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