Propriétés du tMongoDBLookupInput pour Apache Spark Streaming
Ces propriétés sont utilisées pour configurer le tMongoDBLookupInput s'exécutant dans le framework de Jobs Spark Streaming.
Le composant tMongoDBLookupInput Spark Streaming appartient à la famille Bases de données.
Le composant de ce framework 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 :
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. |
Configurer les préférences de lecture |
Cochez cette case et, dans la liste Read preference qui s'affiche, sélectionnez le membre auquel vous souhaitez adresser les opérations de lecture. Si vous laissez décochée cette case, le Job utilise les préférences de lecture par défaut. Autrement dit, il utilise le membre primaire d'un Replica set. Pour plus d'informations, consultez la documentation de MongoDB relative à la réplication et à ses préférences de lecture (Read preferences). |
Query |
Spécifiez l'instruction de requête pour sélectionner des documents de la collection spécifiée dans le champ Collection. Par exemple
Dans ce code, row1 n'est pas le libellé du lien vers le tMongoDBLookupInput, mais représente le flux principal entrant dans le tMap. Le résultat de la requête doit contenir uniquement les enregistrements correspondant à la clé de jointure à utiliser dans le tMap. En d'autres termes, vous devez utiliser le schéma du flux principal vers le tMap pour construire l'instruction SQL ici, afin de charger uniquement les enregistrements correspondants dans le flux Lookup. Cette approche assure qu'aucun enregistrement redondant n'est chargé en mémoire et écrit en sortie dans le composant qui suit. |
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" |
Limit |
Saisissez le nombre maximal d'enregistrements à récupérer. |
Advanced settings
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/ (uniquement en anglais) (en anglais). |
Utilisation
Règle d'utilisation |
Ce composant est utilisé en tant que composant de début et nécessite un lien de sortie. 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 :
Cette connexion fonctionne uniquement pour le Job dans lequel vous l'avez définie. |