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

Propriétés du tMongoDBOutput pour Apache Spark Streaming

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

Le composant tMongoDBOutput Spark Streaming appartient à la famille Bases de données.

Ce composant est disponible dans Talend Real Time Big Data Platform et dans Talend Data Fabric.

Basic settings

Property type

Peut être Built-In ou Repository.

Built-In : aucune propriété n'est stockée de manière centrale.

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 dans 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) à traiter et à passer au composant suivant. Lorsque vous créez un Job Spark, évitez le mot réservé line lors du nommage des champs.

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.

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

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/ (uniquement en anglais) (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 parent 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 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 parent 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 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"

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 (uniquement en anglais) (en anglais).

Utilisation

Règle d'utilisation

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

Ce composant doit utiliser un tMongoDBConfiguration dans le même Job pour 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 Standard, c'est-à-dire des Jobs Talend traditionnels d'intégration de données.

Connexion à Spark

Dans l'onglet Spark Configuration de la vue Run, définissez 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, vous devez spécifier le répertoire du système de fichiers dans lequel ces fichiers .jar sont transférés afin que Spark puisse accéder à ces fichiers :
  • Yarn mode (Yarn Client ou Yarn Cluster) :
    • Lorsque vous utilisez Google Dataproc, spécifiez un bucket dans le champ Google Storage staging bucket de l'onglet Spark configuration.

    • Lorsque vous utilisez HDInsight, spécifiez le blob à utiliser pour le déploiement du Job, dans la zone Windows Azure Storage configuration de l'onglet Spark configuration.

    • Lorsque vous utilisez Altus, spécifiez le bucket S3 ou le stockage Azure Data Lake Storage (aperçu technique) pour le déploiement du Job, dans l'onglet Spark configuration.
    • Lorsque vous utilisez Qubole, ajoutez tS3Configuration à votre Job pour écrire vos données métier dans le système S3 avec Qubole. Sans tS3Configuration, ces données métier sont écrites dans le système Qubole HDFS et détruites une fois que vous arrêtez votre cluster.
    • Lorsque vous utilisez des distributions sur site (on-premises), utilisez le composant de configuration correspondant au système de fichiers utilisé par votre cluster. Généralement, ce système est HDFS et vous devez utiliser le tHDFSConfiguration (en anglais).

  • Standalone mode : utilisez le composant de configuration correspondant au système de fichiers que votre cluster utilise, comme le tHDFSConfiguration Apache Spark Batch ou le tS3Configuration Apache Spark Batch (en anglais).

    Si vous utilisez Databricks sans composant de configuration dans votre Job, vos données métier sont écrites directement dans DBFS (Databricks Filesystem).

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

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.