tMongoDBRow - 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 tMongoDBRow exécutes les commandes et fonctions fournies par la base de données MongoDB.

Objectif

Ce composant vous permet d'exécuter les commandes et les fonctions de la base de données MongoDB.

Propriétés du tMongoDBRow

Famille du composant

Big Data / MongoDB

 

Basic settings

Use existing connection

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.

 

DB Version

Sélectionnez dans la liste la version de la base de données que vous utilisez.

Cette option est disponible lorsque la case Use existing connection est décochée.

 

Use replica set address

Cochez cette case pour afficher la table Replica adddress.

Dans la table Replica address, vous pouvez configurer différents serveurs de la base de données MongoDB pour le failover.

Cette option est disponible lorsque la case Use existing connection n'est pas cochée.

 

Server et Port

Adresse IP et port d'écoute du serveur de la base de données.

Ces champs sont disponibles lorsque les cases Use existing connection et Use replica set address ne sont pas cochées.

 

Database

Nom de la base de données.

 

Use SSL connection

Cochez cette case pour activer la connexion cryptée SSL ou TLS.

Utilisez le composant tSetKeystore dans le même Job afin de spécifier les informations de chiffrement.

Pour plus d'informations concernant le tSetKeystore, consultez tSetKeystore.

Notez que la connexion SSL est disponible uniquement à partir de la version 2.4 de MongoDB.

 

Required authentication

Cochez cette case pour activer l'authentification à la base de données.

La liste déroulante Authentication mechanism devient disponible. Parmi les mécanismes listés, le mécanisme NEGOTIATE est recommandé si vous n'utilisez pas Kerberos, car il sélectionne automatiquement le mécanisme d'authentification le plus adapté à la version de MongoDB que vous utilisez.

Pour plus d'informations sur les autres mécanismes de la liste, consultez MongoDB Authentication (en anglais) dans la documentation MongoDB.

 

Set Authentication database

Si le nom d'utilisateur à utiliser pour se connecter à MongoDB a été créé dans une base de données d'authentification MongoDB spécifique, cochez cette case pour saisir le nom de la base de données en question dans le champ Authentication database qui s'affiche.

Pour plus d'informations sur la base de données d'authentification MongoDB, consultez User Authentication database (en anglais).

 

Username et Password

Informations d'authentification de l'utilisateur à la base de données.

Pour saisir le mot de passe, cliquez sur le bouton [...] à côté du champ Password, puis, dans la boîte de dialogue qui s'ouvre, saisissez le mot de passe entre guillemets doubles et cliquez sur OK afin de sauvegarder les paramètres.

Ces champs sont disponibles lorsque la case Required authentication est cochée.

Si le système de sécurité sélectionné dans la liste Authentication mechanism est Kerberos, saisissez les informations dans les champs suivants User principal, Realm et KDC server et non dans les champs Username et Password.

 

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

Cliquez sur le bouton Sync columns pour récupérer le schéma du composant précédent.

 

Execute command

Cochez cette case afin de saisir des commandes MongoDB dans le champ Command pour l'exécution.

  • Command : dans ce champ, saisissez la commande à exécuter, si cette commande contient une seule variable.

    Par exemple, si vous devez construire la commande suivante :

    {"isMaster": 1}

    Saisissez simplement isMaster entre guillements.

  • Construct command from keys and values : si la commande à exécuter contient différentes variables, cochez cette case et, dans la table Command keys and values, ajoutez les variables et leurs valeurs à utiliser.

    Par exemple, si vous devez construire la commande suivante :

    { renameCollection : "<source_namespace>" , to : "<target_namespace>" , dropTarget : < true | false > }

    Vous devez ajouter trois lignes à la table Command keys and values et saisir une paire variable-valeur pour chaque ligne, entre guillemets :

    "renameCollection"      "old_name"
    "to"                    "new_name"
    "dropTarget"            "false"
  • Construct command from a JSON string : si vous souhaitez saisir directement la commande à utiliser, cochez cette case et saisissez cette commande dans le champ JSON string command affiché. Une commande est autorisée par composant tMongoDBRow.

    Par exemple :

    "{createIndexes: 'restaurants', indexes : [{key : {restaurant_id: 1}, name: 'id_index_2', unique: true}]}"

    Notez que vous devez utiliser des guillemets simples pour entourer les valeurs String utilisées dans la commande et des guillemets doubles pour entourer la commande elle-même.

    Pour plus d'informations concernant les commandes MongoDB que vous pouvez utiliser dans ce champ, consultez https://docs.mongodb.org/manual/reference/command/ (en anglais).

 

Function

Saisissez les fonctions MongoDB dans le champ Function pour l'exécution.

Ce champ est indisponible lorsque la case Execute command est cochée.

 

Parameters value

Cliquez sur le bouton [+] pour ajouter des lignes, puis configurez la valeur des paramètres sous forme de valeurs variables ou constantes, par exemple row1.author ou "Andy". La valeur des paramètres correspond aux paramètres définis dans le champ Function, dans le même ordre.

Cette option est indisponible lorsque la case Execute command est cochée.

 

Die on error

Cette case est décochée par défaut, afin d'ignorer les lignes en erreur et de terminer le traitement avec les lignes sans erreur.

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

Le composant tMongoDBRow vous permet de manipuler la base de données MongoDB à l'aide des commandes et des fonctions MongoDB.

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 : Utiliser les fonctions MongoDB pour créer une collection et y écrire des données

Ce scénario crée la collection blog et y écrit des données à l'aide des fonctions MongoDB.

Relier les composants

  1. Déposez, de la Palette dans l'espace de modélisation graphique, un composant tMongoDBConnection, un tFixedFlowInput, un tMongoDBRow, un tMongoDBClose, un tMongoDBInput et un tLogRow.

  2. Renommez le tFixedFlowInput en blog_post_data, le tMongoDBRow en write_data_to_collection, le tMongoDBInput en read_data_from_collection et le tLogRow en show_data_from_collection.

  3. Reliez le tMongoDBConnection au tFixedFlowInput à l'aide d'un lien OnSubjobOk.

  4. Reliez le tFixedFlowInput au tMongoDBRow à l'aide d'un lien Row > Main.

  5. Connectez le tFixedFlowInput au tMongoDBInput en utilisant un lien OnSubjobOk.

  6. Reliez le composant tMongoDBInput au tMongoDBClose à l'aide d'un lien OnSubjobOk.

  7. Reliez le tMongoDBInput au composant tLogRow à l'aide d'un lien Row > Main.

Configurer les composants

  1. Double-cliquez sur le tMongoDBConnection pour ouvrir sa vue Basic settings.

  2. Dans la liste DB Version, sélectionnez la version de MongoDB que vous utilisez.

  3. Dans les champs Server et Port, saisissez le nom du serveur et le numéro du port, respectivement.

    Dans le champ Database, saisissez le nom de la base de données MongoDB.

  4. Double-cliquez sur le tFixedFlowInput pour ouvrir sa vue Basic settings.

    Sélectionnez l'option Use Inline Content (delimited file) dans la zone Mode.

    Dans le champ Content, saisissez les données à écrire dans la base de données, par exemple :

    Andy;Open Source Outlook;Open Source,Talend;Talend, the leader of the open source world...
    Andy;Data Integration Overview;Data Integration,Talend;Talend, the leading player in the DI field...
    Andy;ELT Overview;ELT,Talend;Talend, the big name in the ELT circle...
  5. Double-cliquez sur le tMongoDBRow pour ouvrir sa vue Basic settings.

    Cochez la case Use existing connection.

    Dans le champ Function, saisissez la fonction MongoDB pour créer la collection blog et y insérer des données :

    "function(author,title,keywords,contents){
    return db.blog.save(
    {author:author,title:title,keywords:keywords,contents:contents}
    );
    
    }"
  6. Cliquez sur le bouton [...] à côté de Edit schema pour ouvrir l'éditeur du schéma.

  7. Cliquez quatre fois sur le bouton [+] pour ajouter quatre colonnes, à droite. Nommez-les respectivement author, title, keywords et contents, toutes de type String.

    Cliquez sur le bouton afin de copier toutes les colonnes vers la table d'entrée.

    Cliquez sur OK pour fermer l'éditeur.

  8. Dans la table Parameters value, cliquez quatre fois sur le bouton [+] pour ajouter quatre lignes. Saisissez les valeurs en séquence : row1.author, row1.title, row1.keywords et row1.contents. Les données de row1 sont transférées aux paramètres définis dans la fonction.

  9. Double-cliquez sur le tMongoDBInput pour ouvrir sa vue Basic settings.

    Cochez la case Use existing connection.

    Dans le champ Collection, saisissez le nom de la collection, blog.

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

  11. Cliquez quatre fois sur le bouton [+] pour ajouter quatre colonnes. Nommez-les author, title, keywords et contents et configurez leur type à String.

    Cliquez sur OK pour fermer l'éditeur.

  12. Double-cliquez sur le tLogRow pour ouvrir sa vue Basic settings.

    Dans la zone Mode, sélectionnez Table (print values in cells of a table), pour un meilleur affichage.

Exécuter le Job

  1. Appuyez sur les touches Ctrl+S pour sauvegarder le Job.

  2. Appuyez sur la touche F6 pour exécuter le Job.