Accéder au contenu principal Passer au contenu complémentaire

Propriétés du tMongoDBOutput Standard

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

Le composant tMongoDBOutput Standard appartient aux familles Big Data et Bases de données NoSQL.

Le composant de ce framework est disponible dans tous les produits Talend avec Big Data et dans Talend Data Fabric.

Basic settings

Use existing connection

Cochez cette case et sélectionnez le composant de connexion adéquat dans 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 déroulante la version de la base de données à utiliser.

Ce champ est disponible lorsque la case Use existing connection n'est pas cochée.

Use connection string

Sélectionnez cette option pour établir une connexion utilisant une URI MongoDB Atlas. Saisissez l'URI dans le champ à droite. Consultez Connection String URI Format (en anglais) pour plus d'informations.

Cette option est disponible lorsque vous sélectionnez MongoDB 4.4.X and later dans la liste déroulante DB Version.

Note InformationsRemarque : Cette option est disponible uniquement si vous avez installé la mise à jour mensuelle R2021-12 du Studio Talend ou une mise à jour plus récente fournie par Talend. Pour plus d'informations, contactez votre administrateur ou administratrice.

Use replica set address

Cochez cette case pour afficher la table Replica address.

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

Saisissez l'adresse IP et le numéro du 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.

Base de données

Saisissez le nom de la base de données.

Use SSL connection (Configure the SSL authentication in tSetKeystore or in Studio preferences)

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

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

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

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

Bulk write

Cochez cette case pour insérer, mettre à jour ou supprimer des données en masse. Notez que cette fonctionnalité est disponible uniquement lorsque la version de MongoDB que vous utilisez est 2.6 ou supérieure.

Vous devez sélectionner Ordered ou Unordered afin de définir comment la base de données MongoDB traite les données envoyées par le Studio Talend.
  • Si vous sélectionnez Ordered, MongoDB traite les données en séquence.

  • Si vous sélectionnez Unordered, MongoDB optimise les opérations d'écriture en masse sans conserver l'ordre dans lequel les opérations individuelles ont été insérées dans l'écriture en masse.

Dans le champ Bulk write size, saisissez la taille de chaque groupe de requêtes à traiter par MongoDB. Dans la documentation de MongoDB, certaines restrictions et certains comportements attendus, notamment la taille mentionnée ici, sont expliqués. Pour plus d'informations, consultez http://docs.mongodb.org/manual/core/bulk-write-operations/ (en anglais).

Authentification requise

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

Parmi les mécanismes listés dans la liste déroulante Authentication mechanism, 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.

Comme le mécanisme d'authentification SCRAM-SHA-256 est supporté uniquement par MongoDB 4.x et supérieures, l'option SCRAM-SHA-256 SASL est disponible uniquement lorsque MongoDB 4.4.X and later est sélectionné dans la liste déroulante DB Version.

Note InformationsRemarque : L'option X509 est disponible uniquement lorsque vous avez installé la mise à jour mensuelle R2021-12 du Studio Talend ou une plus récente fournie par Talend. Pour plus d'informations, contactez votre administrateur ou administratrice.

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

Set Authentication database

Si le nom d'utilisateur ou d'utilisatrice à 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 concernant la base de données d'authentification MongoDB, consultez User Authentication database (en anglais).

Username et Password

Saisissez les informations d'authentification de l'utilisateur ou de l'utilisatrice de 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.

Ce champ est disponible 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

Saisissez le nom de la collection dans la base de données MongoDB.

Drop collection if exist

Cochez cette case afin de supprimer la collection si elle existe déjà.

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.

  • Update : remplace les documents existants par les données d'entrée mais conserve l'ID technique de ces documents.

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

  • 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 dans le collection à utiliser, cochez la case Update all document affichée. Sinon, seul le premier document est mis à jour.

  • Delete : supprime les documents.

    Si vous devez appliquer cette action sur tous les documents de la collection à utiliser, cochez la case Delete all documents qui s'affiche, sinon, un seul document est supprimé.

Schéma

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.

Edit Schema

Créez le schéma en cliquant sur le bouton 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.

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

Ce composant supporte les schémas dynamiques lors de l'insertion de documents dans une collection. Pour utiliser la fonctionnalité de schéma dynamique, assurez-vous que le schéma contienne une seule colonne, avec DB column configuré à * et Type à String (si le type d'entrée est String) ou Object (si le type d'entrée est Object).

Note InformationsRemarque :
  • La fonctionnalité de schéma dynamique est disponible uniquement lorsque l'option Insert est sélectionnée dans la liste déroulante Action on data.
  • La fonctionnalité de schéma dynamique est disponible uniquement si vous avez installé la mise à jour mensuelle 8.0.1-R2022-07 du Studio Talend ou une mise à jour plus récente fournie par Talend. Pour plus d'informations, contactez votre administrateur ou administratrice.

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 parent person mais le champ _id ne contient aucun nœud parent. Cela fait, la table Mapping doit ressembler à ceci :
Column     Parent node path
_id
first       "person"
last        "person"

Updatable et Insertable : spécifiez si un champ peut être mis à jour ou inséré. Ces deux colonnes s'affichent lorsque l'option Upsert with set est sélectionnée dans la liste déroulante Action on data.

Ce tableau est indisponible lorsque la case Generate JSON Document est cochée dans l'onglet Advanced settings.

Cochez la case Remove Null Field pour ne pas avoir de colonne dans la sortie lorsque la valeur est nulle. Par exemple, avec la table suivante :
id    name
a   null
b   Jane
  • Si vous cochez la case, la sortie se présente comme suit :
    {"id":"a"}
    {"id":"b","name":"Jane"}
  • Si vous décochez la case, la sortie se présente comme suit :
    {"id":"a","name":null}
    {"id":"b","name":"Jane"}

Arrêter en cas d''erreur

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

Advanced settings

Generate JSON Document

Cochez cette case pour la configuration JSON.

Configure JSON Tree : cliquez sur le bouton [...] pour ouvrir l'interface de configuration de l'arborescence JSON. Pour plus d'informations, consultez Configurer une arborescence JSON.
Note InformationsRemarque : Vous pouvez adapter les objets JSON en objets BSON en ajoutant __DOLLAR__ avant l'objet (par exemple, $oid et $date deviennent respectivement __DOLLAR__oid et __DOLLAR__date). Les objets spécifiques à MongoDB peuvent être lus et ne sont pas considérés comme une chaîne de caractères.

Create empty element if needed : si le contenu de la colonne Related Column de l'éditeur d'arborescence XML est null, ou si aucune colonne n'est associée au nœud XML, cette option créera une balise ouvrante et une balise fermante aux endroits prévus. Cette case est cochée par défaut.

Ignore service attributes for empty elements : sélectionnez cette option pour empêcher le composant de générer un nœud si le nœud d'entrée est null mais contient des attributs de service (comme @type, @class et @array). Cette option est disponible lorsque la case Create empty element if needed n'est pas cochée.

Group by : cliquez sur le bouton [+] afin d'ajouter des lignes et sélectionner les colonnes d'entrée pour grouper les enregistrements.

Remove root node : cochez cette case pour supprimer le nœud racine.

Data node et Query node (disponibles pour les actions Update et Upsert) : saisissez le nom du nœud de données et du nœud de requête configurés dans l'arbre JSON.

Note InformationsAvertissement :

Ces nœuds sont obligatoires pour les actions Update et Upsert. Ils permettent d'activer les actions Update et Upsert mais ne seront pas stockés dans la base de données.

Node (disponible pour les actions Set et Upsert with set) : spécifiez les opérations de mise à jour pour les nœuds JSON spécifiques. Pour ajouter une opération de mise à jour, cliquez sur le bouton [+] au bas de cette zone, saisissez l'opérateur de mise à jour ou sélectionnez l'opérateur de mise à jour depuis la liste déroulante de la colonne Node type, puis saisissez le nom du nœud entre guillemets doubles, dans la colonne Node reference. Consultez Update Operators (en anglais) pour plus d'informations concernant les opérateurs de mise à jour.
Note InformationsRemarque : Ce champ est disponible uniquement si vous avez installé la mise à jour mensuelle R2022-01 du Studio Talend ou une mise à jour plus récente fournie par Talend. Pour plus d'informations, contactez votre administrateur ou administratrice.

No query timeout

Cochez cette case pour empêcher les serveurs MongoDB de fermer les curseurs inactifs après 10 minutes d'inactivité de ces curseurs. Dans cette situation, un curseur inactif reste ouvert jusqu'à ce que les résultats de ce curseur soient épuisés ou que vous fermiez manuellement le curseur à l'aide de la méthode cursor.close().

Un curseur, dans MongoDB, est un pointeur vers l'ensemble de résultats de la requête. Par défaut, c'est-à-dire lorsque la case est décochée, un serveur MongoDB ferme automatiquement les curseurs inactifs après une période d'inactivité donnée, pour éviter les utilisations excessives de mémoire. Pour plus d'informations concernant les curseurs MongoDB, consultez https://docs.mongodb.org/manual/core/cursors/ (en anglais).

tStatCatcher Statistics

Cochez cette case afin de collecter les données de log au niveau des composants.

Global Variables

Variables globales

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, 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 Utiliser les contextes et les variables.

Utilisation

Règle d'utilisation

Le tMongoDBOutput exécute l'action définie sur la collection dans la base de données MongoDB, à partir du flux entrant depuis le composant précédent dans le Job.

Limitation

Note InformationsRemarque :
  • Le paramètre "multi" qui vous permet de mettre à jour plusieurs documents en même temps, n'est pas supporté. Par conséquent, si deux documents ont la même clé, le premier est toujours mis à jour, mais le second ne l'est jamais.

  • Pour l'opération de mise à jour, la clé ne peut être un tableau (array) JSON.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.