Propriétés du tElasticSearchLookupInput dans des Jobs Spark Streaming - 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

Famille du composant

ElasticSearch

 

Basic settings

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.

 

Use an existing configuration

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.

 

Transport addresses

Saisissez les adresses des nœuds ElasticSearch auquel le composant doit se connecter.

À la différence du tElasticSearchOutput qui utilise le client ElasticSearch Node, le tElasticSearchLookupInput utilise le client ElasticSearch Transport pour se connecter au cluster ElasticCluster. Cela permet au tElasticSearchLookupInput de créer rapidement de multiples connexions au cluster.

Pour plus d'informations concernant les clients ElasticSearch Node et ElasticSearch Transport, consultez https://www.elastic.co/guide/en/elasticsearch/guide/current/_transport_client_versus_node_client.html (en anglais).

 

Cluster name

Saisissez le nom du cluster ElasticSearch à utiliser.

Le paramètre Cluster name est obligatoire et pris en compte uniquement lorsque le composant lorsque le composant ElasticSearch à connecter à ElasticSearch est le tElasticSearchLookupInput.

Pour plus d'informations concernant les clients ElasticSearch Node et ElasticSearch Transport, consultez https://www.elastic.co/guide/en/elasticsearch/guide/current/_transport_client_versus_node_client.html (en anglais).

 

Index

Saisissez le nom de l'index duquel lire les documents.

L'index est la plus grande unité de stockage dans le système Elastisearch.

 

Type

Saisissez le nom du type auxquels les documents à lire appartiennent.

Par exemple, blogpost_en et blogpost_fr peuvent être deux types représentant des articles de blogs en anglais et en français, respectivement.

Vous pouvez dynamiquement utiliser les valeurs d'une colonne donnée pour qu'elles soient des types de documents. Si vous devez les utiliser ainsi, saisissez le nom de la colonne entre accolades ({}), par exemple, {blog_author}.

 

Query

Saisissez la requête ElasticSearch à exécuter par ce composant.

Lorsque vous modifiez des requêtes, vous devez utiliser la syntaxe requise par ElasticSearch ainsi que les caractères d'échappement requis par Java et saisir la requête entre guillemets doubles.

Par exemple, dans la documentation d'ElasticSearch, une requête se présente comme suit :

es.query = { "query" : { "term" : { "user" : "costinl" } } }

Dans le champ Query, vous devez écrire la même requête de la manière suivante :

"{ \"query\" : { \"term\" : {\"user\" : \"costinl\" } } }"

Vous pouvez utiliser le schéma du flux principal vers le tMap pour construire l'instruction SQL dans le composant.

L'ensemble de résultats provenant de ce composant Lookup doit être filtré afin de retourner uniquement les lignes correspondant à la clé de jointure attendue dans le tMap.

Advanced settings

Scroll time

Saisissez la durée (en millisecondes) durant laquelle un lot d'entrée est progressivement chargé depuis ElasticSearch.

Cette durée est utile uniquement si votre requête is bringing in huge batches. Puisque le tMap en mode Streaming XXXin the streaming mode recharge les données à chaque ligne, une requête correctement écrite ne doit pas produire de grands lots de données.

 

Use SSL/TLS

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

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.

 

Configuration

Ajoutez les paramètres acceptés par ElasticSearch pour effectuer plus d'actions personnalisées.

Par exemple, saisissez es.mapping.id dans la colonne Key et true dans la colonne Value pour que l'ID du document soit contenu dans le nom de la propriété ou du champ. Notez que vous devez saisir des guillemets doubles autour des informations saisies.

Pour la liste des paramètres que vous pouvez utiliser, consultez https://www.elastic.co/guide/en/elasticsearch/hadoop/master/configuration.html (en anglais).

 

Connection pool

Dans cette zone, configurez le pool de connexions utilisé pour contrôler le nombre de connexions qui restent ouvertes simultanément. Généralement, les valeurs par défaut données aux paramètres suivants du pool de connexion conviennent à la plupart des cas d'utilisation.

  • Max total number of connections : saisissez le nombre maximal de connexions (actives ou inactives) autorisées à rester ouvertes simultanément.

    Le nombre par défaut est 8. Si vous saisissez -1, vous autorisez un nombre illimité de connexions ouvertes simultanément.

  • Max waiting time (ms) : saisissez le temps maximum d'attente à la fin duquel la réponse à une demande d'utilisation de connexion doit être retournée par le pool de connexion. Par défaut, la valeur est -1, c'est-à-dire un temps illimité.

  • Min number of idle connections : saisissez le nombre minimal de connexions inactives (connexions non utilisées) autorisées dans le pool de connexions.

  • Max number of idle connections : saisissez le nombre maximal de connexions inactives (connexions non utilisées) dans le pool de connexions.

 

Evict connections

Cochez cette case pour définir les critères de destruction de connexions dans le pool de connexions. Les champs suivants sont affichés une fois la case cochée.

  • Time between two eviction runs : saisissez l'intervalle de temps (en millisecondes) à la fin duquel le composant vérifie le statut des connexions et détruit les connexions inactives.

  • Min idle time for a connection to be eligible to eviction : saisissez l'intervalle de temps (en millisecondes) à la fin duquel les connexions inactives sont détruites.

  • Soft min idle time for a connection to be eligible to eviction : ce paramètre fonctionne de la même manière que l'option Min idle time for a connection to be eligible to eviction mais garde le nombre minimal de connexions inactives, nombre défini dans le champ Min number of idle connections.

Utilisation dans des Jobs Spark Streaming

Dans un Job Talend Spark Streaming, il est utilisé en tant que composant d'entrée et nécessite un lien de sortie. Les autres composants utilisés avec celui-ci doivent également être des composants Spark Streaming. Ils génèrent nativement du code Spark pouvant être exécuté directement dans un cluster Spark.

Ce composant doit utiliser un tElasticSearchConfiguration au sein du même Job pour se connecter à ElasticSearch. Vous devez cocher la case Use an existing configuration et sélectionner le composant tElasticSearchConfiguration à utiliser.

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 de type Standard, c'est-à-dire des Jobs Talend traditionnels d'intégration de données.

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

Spark Connection

Vous devez utiliser l'onglet Spark Configuration de la vue Run afin de définir 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, un (et un seul) composant relatif à un système de fichiers de la famille Storage est requis au sein du même Job, afin que Spark puisse utiliser ce composant pour se connecter au système de fichiers auquel les fichiers .jar dépendants du Job sont transférés :

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