tMongoDBInput - 6.1

Composants Talend Guide de référence

EnrichVersion
6.1
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.

Propriétés du tMongoDBInput

Famille du composant

Big Data / MongoDB

 

Fonction

Le composant tMongoDBInput récupère des documents d'une collection de la base de données MongoDB en fournissant un document de requête contenant les champs auxquels doivent correspondre les documents souhaités.

Objectif

Ce composant vous permet de récupérer des documents d'une collection, dans la base de données MongoDB et de les transférer au composant suivant, pour affichage ou stockage.

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.

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

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.

 

Set read preference

Cochez cette case et, dans la liste Read preference qui s'affiche, sélectionnez le membre à lire par le Job depuis le Replica set de MongoDB à utiliser.

Si vous laissez décochée cette case, le Job lit le membre par défaut du Replica set.

Pour plus d'informations, consultez la documentation de MongoDB relative à la réplication et à ses préférences de lecture (Read preferences).

 

Required authentication

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

 

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, puis 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.

 

Collection

Nom de la collection dans la base de données MongoDB.

 

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, sélectionnez 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.

 

Query

Spécifiez la condition de la requête.

Par exemple, saisissez "{id:4}" afin de récupérer l'enregistrement dont l'id est 4, dans la collection spécifiée dans le champ Collection.

Note

A la différence des instructions de requête requises dans le logiciel client MongoDB, la requête fait ici référence au contenu dans find(). Ainsi la requête est {id:4} alors qu'elle devrait être db.blog.find({id:4}) dans le client MongoDB.

 

Mapping

Spécifiez le nœud père de la colonne dans la base de données MongoDB.

 

Sort by

Spécifiez la colonne et choisissez l'ordre pour l'opération de tri.

 

Limit

Saisissez le nombre maximal de documents à récupérer.

Advanced settings

tStatCatcher Statistics

Cochez cette case pour collecter les données de log au niveau du composant.

Global Variables

NB_LINE : nombre de lignes lues par un composant d'entrée ou passées à un composant de sortie. Cette variable est une variable After et retourne un entier.

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 tMongoDBInput est un composant de début et vous permet de récupérer des documents d'une collection, dans la base de données MongoDB et de les transférer au composant suivant, pour affichage ou stockage.

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écupérer des données d'une collection via des requêtes avancées

Dans ce scénario, des requêtes avancées de MongoDB sont utilisées pour récupérer le post écrit par Anderson.

Ces posts sont contenus dans la collection blog de la base de données MongoDB talend :

Pour insérer des données dans la base de données, consultez Scénario : Créer une collection et écrire des données dans celle-ci.

Relier les composants

  1. Déposez les composants suivants de la Palette dans l'espace de modélisation graphique : un tMongoDBConnection, un tMongoDBClose, un tMongoDBInput et un tLogRow.

  2. Reliez le tMongoDBConnection au tMongoDBInput à l'aide d'un lien OnSubjobOk.

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

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

Configurer les composants

  1. Double-cliquez sur le composant 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 les détails de la connexion.

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

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

  6. Cochez la case Use existing connection.

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

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

  9. Cliquez sur le bouton [+] pour ajouter cinq colonnes, nommées respectivement id (de type Integer), author, title, keywords et contents, de type String.

  10. Cliquez sur OK pour fermer l'éditeur.

  11. Les colonnes apparaissent dans la partie gauche de la zone Mapping.

  12. Pour les colonnes author, title, keywords et contents, saisissez le nœud parent post, afin que les données soient récupérées de leurs positions.

  13. Dans le champ Query, saisissez la requête avancée afin de récupérer les posts dont l'auteur est Anderson :

    "{post.author : 'Anderson'}"

    Cette instruction nécessite que le sous-nœud de post, le nœud author, doit avoir la valeur "Anderson".

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

    Sélectionnez l'option Table (print values in cells of a table) pour un affichage optimal des résultats.

Exécuter le Job

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

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

    Comme affiché ci-dessus, le post d'Anderson est récupéré.