Propriétés du tCosmosDBOutput Standard - 6.4

CosmosDB

author
Talend Documentation Team
EnrichVersion
6.4
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Open Studio for Big Data
Talend Real-Time Big Data Platform
task
Création et développement > Systèmes tiers > Composants Database > Composants CosmosDB
Gouvernance de données > Systèmes tiers > Composants Database > Composants CosmosDB
Qualité et préparation de données > Systèmes tiers > Composants Database > Composants CosmosDB
EnrichPlatform
Studio Talend

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

Le composant tCosmosDBOutput Standard appartient aux familles Cloud et Databases.

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

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.

API

Sélectionnez l'API de la base de données à utiliser. Les paramètres à définir sont affichés dans la vue Component.

Dans la dernière version de ce composant, seule l'API de MongoDB est supportée. C'est pour cette raison que la base de données MongoDB est souvent mentionnée dans la documentation des composants CosmosDB.

Use replica set address or multiple query routers

Cochez cette case pour afficher la table Server addresses.

Dans la table Server addresses, définissez les bases de données MongoDB shardées ou les ensembles de répliques MongoDB auxquel(le)s vous souhaitez vous connecter.

Server et Port

Saisissez l'adresse IP et le numéro du port d'écoute du serveur de la base de données.

Disponible lorsque la case Use replica set address or multiple query routers n'est pas cochée.

Database

Saisissez le nom de la base de données MongoDB à laquelle vous connecter.

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

Authentication mechanism

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.

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

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 de la collection à utiliser, cochez la case Update all document qui s'affiche. Sinon, seul le premier document est mis à jour.

  • Delete : supprime les documents.

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 Sync columns pour récupérer le schéma du composant précédent dans le Job.

 

Built-In : Le schéma est créé et conservé ponctuellement pour ce composant seulement. Voir également le Guide utilisateur du Studio Talend.

 

Repository : Le schéma existe déjà et il est stocké dans le Repository. Ainsi, il peut être réutilisé. Voir également le Guide utilisateur du Studio Talend.

Lorsque le schéma à réutiliser contient des valeurs par défaut, qui sont des entiers (integer) ou des fonctions (function), assurez-vous que les valeurs par défaut ne sont pas entourées de guillemets. Si c'est le cas, vous devez supprimer manuellement les guillemets.

Pour plus d'informations, consultez Vérification des valeurs par défaut dans un schéma récupéré.

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"

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

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

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.

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êtes configurés dans l'arborescence JSON.

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.

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 pour collecter les données de log au niveau du composant.

Usage

Règle d'utilisation

Le tCosmosDBOutput 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

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