tElasticSearchOutput - 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

Avertissement

Ce composant est disponible dans la Palette du Studio Talend si vous avez souscrit à l'une des solutions Big Data de Talend.

Fonction

Le tElasticSearchOutput reçoit des RDD (Resilient Distributed Datasets) du composant précédent et les écrit (mise à jour ou insertion) dans Elasticsearch, un moteur d'analytique et de recherche distribué en temps réel, traduisant le contenu d'ensembles de données en documents Elasticsearch.

Objectif

Le tElasticSearchOutput est utilisé pour écrire des ensembles de données dans un système Elasticsearch donné.

Si vous avez souscrit à Talend Real-time Big Data Platform ou Talend Data Fabric, ce composant est disponible dans les types de Jobs suivants :

Propriétés du tElasticSearchOutput dans des Jobs Spark Batch

Famille du composant

ElasticSearch

 

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

 

 

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.

  

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, sélectionnez No et sélectionnez à nouveau la métadonnée du schéma dans la fenêtre [Repository Content].

 

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.

 

Nodes

Saisissez l'emplacement du cluster hébergeant le système Elasticsearch à utiliser.

 

Index

Saisissez le nom de l'index dans lequel écrire les documents.

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

 

Type

Saisissez le nom du type auquel appartiennent les documents à écrire.

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

 

Output document

Choisissez comment écrire le document dans Elasticsearch.

  • JAVABEAN : si vous sélectionnez cette option, le tElasticsearchOutput utilise directement le schéma d'entrée pour construire les chaînes de caractères JSON à écrire.

    Par exemple, si le schéma d'un enregistrement se présente comme suit :

    id name age
    1  user 18

    le document écrit en sortie par l'option JAVABEAN est {"id":1,"name":"user","age":18}.

  • JSON : avec cette option, une colonne json_document en lecture seule est automatiquement ajoutée au schéma de sortie afin de recevoir des chaînes de caractères JSON (documents en termes Elasticsearch) des composants précédents. Cela signifie que vous devez utiliser le tWriteJSONField au sein du même Job afin de construire les chaînes de caractères JSON avant de les écrire en sortie dans le tElasticsearchOutput. Les autres colonnes du schéma peuvent être utilisées comme métadonnées pour ces documents JSON.

    Comme le tWriteJSONField vous permet de construire des arborescences JSON de différentes complexités, vous pouvez gérer comment s'affichent les chaînes de caractères à écrire.

Advanced settings

Document metadata

Renseignez cette table afin de sélectionner les colonnes d'entrée à utiliser pour fournir les métadonnées pour chaque document. Cette table est généralement utilisée avec l'option json_document de la liste Output document dans la vue Basic settings.

La colonne Column est automatiquement alimentée avec les colonnes du schéma d'entrée. Dans la colonne As metadata, vous devez cocher la case correspondant aux colonnes à utiliser.

Dans la colonne Metadata type, sélectionnez le type de métadonnées de document que chaque colonne fournit.

Pour plus d'informations concernant les types de métadonnées d'un document Elasticsearch, consultez https://www.elastic.co/guide/en/elasticsearch/guide/current/_document_metadata.html.

 

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

Utilisation dans des Jobs Spark Batch

Dans un Job Talend Spark Batch, ce composant est utilisé en tant que composant de fin et requiert un lien d'entrée. Les autres composants utilisés avec lui doivent également être des composants Spark Batch. Ils génèrent nativement du code Spark pouvant être directement exécuté 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 la Palette Spark Batch à laquelle il appartient, ne s'affiche que lorsque vous créez un Job Spark Batch.

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.

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.

Scénario associé

Aucun scénario n'est disponible pour la version Spark Batch de ce composant.

Propriétés du tElasticSearchOutput dans des Jobs Spark Streaming

Avertissement

La version Streaming de ce composant est disponible dans la Palette du studio si vous avez souscrit à Talend Real-time Big Data Platform ou Talend Data Fabric.

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.

 

 

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.

  

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, sélectionnez No et sélectionnez à nouveau la métadonnée du schéma dans la fenêtre [Repository Content].

 

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.

 

Nodes

Saisissez l'emplacement du cluster hébergeant le système Elasticsearch à utiliser.

 

Index

Saisissez le nom de l'index dans lequel écrire les documents.

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

 

Type

Saisissez le nom du type auquel appartiennent les documents à écrire.

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

 

Output document

Choisissez comment écrire le document dans Elasticsearch.

  • JAVABEAN : si vous sélectionnez cette option, le tElasticsearchOutput utilise directement le schéma d'entrée pour construire les chaînes de caractères JSON à écrire.

    Par exemple, si le schéma d'un enregistrement se présente comme suit :

    id name age
    1  user 18

    le document écrit en sortie par l'option JAVABEAN est {"id":1,"name":"user","age":18}.

  • JSON : avec cette option, une colonne json_document en lecture seule est automatiquement ajoutée au schéma de sortie afin de recevoir des chaînes de caractères JSON (documents en termes Elasticsearch) des composants précédents. Cela signifie que vous devez utiliser le tWriteJSONField au sein du même Job afin de construire les chaînes de caractères JSON avant de les écrire en sortie dans le tElasticsearchOutput. Les autres colonnes du schéma peuvent être utilisées comme métadonnées pour ces documents JSON.

    Comme le tWriteJSONField vous permet de construire des arborescences JSON de différentes complexités, vous pouvez gérer comment s'affichent les chaînes de caractères à écrire.

Advanced settings

Document metadata

Renseignez cette table afin de sélectionner les colonnes d'entrée à utiliser pour fournir les métadonnées pour chaque document. Cette table est généralement utilisée avec l'option json_document de la liste Output document dans la vue Basic settings.

La colonne Column est automatiquement alimentée avec les colonnes du schéma d'entrée. Dans la colonne As metadata, vous devez cocher la case correspondant aux colonnes à utiliser.

Dans la colonne Metadata type, sélectionnez le type de métadonnées de document que chaque colonne fournit.

Pour plus d'informations concernant les types de métadonnées d'un document Elasticsearch, consultez https://www.elastic.co/guide/en/elasticsearch/guide/current/_document_metadata.html.

 

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

Utilisation dans des Jobs Spark Streaming

Dans un Job Talend Spark Streaming, il est utilisé en tant que composant de fin et nécessite un lien d'entrée. Les 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.

Limitation

n/a

Scénario associé

Aucun scénario n'est disponible pour la version Spark Streaming de ce composant.