Le tJDBCOutput dans des Jobs Spark Streaming - 6.3

Composants Talend Guide de référence

EnrichVersion
6.3
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

Databases/DB JDBC

 

Basic settings

Property type

Peut être Built-In ou Repository.

 

 

- Built-In : Propriétés utilisées ponctuellement.

 

 

- Repository : Sélectionnez le fichier dans lequel sont stockées les propriétés du composant.

 

Cliquez sur cette icône pour ouvrir l'assistant de connexion à la base de données et stocker les paramètres de connexion configurés dans la vue Basic settings.

Pour plus d'informations concernant la configuration et le stockage des paramètres de connexion à la base de données, consultez le Guide utilisateur du Studio Talend.

 

Use an existing connection

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.

 

JDBC URL

Saisissez le chemin d'accès à la base de données. Par exemple, si la base de données MySQL s'appelle Talend et est hébergée sur une machine dont l'adresse IP est XX.XX.XX.XX et le port est 3306, l'URL doit être jdbc:mysql://XX.XX.XX.XX:3306/Talend.

 

Driver JAR

Cliquez sur le bouton [+] situé sous le tableau afin d'ajouter autant de lignes que nécessaire pour charger différents JAR. Dans chaque ligne, cliquez ensuite sur le bouton [...] pour ouvrir l'assistant [Select Module] dans lequel vous pouvez sélectionner le pilote JAR de votre choix pour chaque ligne.

 

Class Name

Dans le champ Class name, renseignez le nom de la classe pour qu'elle soit indiquée dans le driver. Par exemple, pour le pilote mysql-connector-java-5.1.2.jar, le nom à saisir est org.gjt.mm.mysql.Driver.

 

Table

Nom de la table à écrire. Vous ne pouvez écrire qu'une seule table à la fois.

 

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.

 

Action on data

Vous pouvez effectuer l'une des opérations suivantes sur les données de la table définie :

  • Insert: Add new entries to the table.

  • Update : met à jour les entrées existantes.

  • Insert or update : insère un nouvel enregistrement. Si l'enregistrement avec la référence donnée existe déjà, une mise à jour est effectuée.

  • Update or insert : met à jour l'enregistrement avec la référence donnée. Si l'enregistrement n'existe pas dans le pool d'index, un nouvel enregistrement est inséré.

  • Delete : supprime les entrées correspondantes au flux d'entrée.

 

Die on error

Cochez cette case pour arrêter l'exécution du Job lorsqu'une erreur survient.

Advanced settings

Additional JDBC parameters

Définissez des propriétés de connexion supplémentaires pour la connexion à la base de données que vous créez. Les propriétés sont séparées par un point-virgule et chaque propriété est une paire clé-valeur, par exemple, encryption=1;clientname=Talend.

Ce champ n'est pas disponible si la case Use an existing connection est cochée.

 

Left protected char et Right protected char

Saisissez le symbole réservé à la base de données que vous utilisez, la partie gauche dans Left protected char et la partie droite dans Right protected char, afin que le tJDBCOutput génère des requêtes SQL qui placent correctement ce symbole réservé.

Par exemple, si vous utilisez Oracle, les guillemets doubles (") sont réservés aux noms d'objets. Vous devez donc saisir les symboles de gauche et de droite dans leurs champs respectifs. Pendant l'exécution, le tJDBCOutput place ensuite des guillemets doubles autour des noms d'objets tels qu'un nom de table.

 

Additional Columns

Cette option vous permet d'effectuer des actions sur les colonnes, à l'exclusion des actions d'insertion, de mise à jour, de suppression ou qui nécessitent un prétraitement particulier. Cette option n'est pas disponible si vous venez de créer la table de données (que vous l'ayez préalablement supprimée ou non). Cliquez sur le bouton [+] sous la table pour ajouter une ou plusieurs colonne(s), puis configurez les paramètres suivants pour chaque colonne.

 

 

Name : Saisissez le nom de la colonne du schéma à modifier ou à insérer.

 

 

SQL expression : Saisissez la déclaration SQL à exécuter pour modifier ou insérer les données dans les colonnes correspondantes.

 

 

Position : Sélectionnez Before, Replace ou After, en fonction de l'action à effectuer sur la colonne de référence.

 

 

Reference column : Saisissez une colonne de référence que le composant peut utiliser pour situer ou remplacer la nouvelle colonne ou celle à modifier.

 

Use field options

Cochez la case de la colonne correspondante pour personnaliser une requête, surtout s'il y a plusieurs actions à effectuer sur les données.

  • Key in update : Cochez la case de la colonne correspondante sur laquelle est basée la mise à jour des données.

  • Key in delete : Cochez la case de la colonne correspondante sur laquelle est basée la suppression des données.

  • Updatable : Cochez cette case si les données de la colonne correspondante peuvent être mises à jour.

  • Insertable : Cochez cette case si les données de la colonne correspondante peuvent être insérées.

 

Use Batch

Cochez cette case pour activer le mode de traitement par lots pour le traitement des données.

Cette case est seulement disponible lorsque l'option Insert, Update ou Delete est sélectionnée dans la liste Action on data de la vue Basic settings.

 

Batch Size

Spécifiez le nombre d'enregistrements à traiter dans chaque lot.

Ce champ est disponible uniquement lorsque la case Use batch mode est cochée.

 

Connection pool

Dans cette zone, configurez, pour chaque exécuteur Spark, 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) maintenues dans le pool de connexions.

  • Max number of idle connections : saisissez le nombre maximal de connexions inactives (connexions non utilisées) maintenues 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 Jobs

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

Ce composant nécessite un composant tJDBCConfiguration présent dans le même Job pour se connecter à une base de données. Vous devez déposer un composant tJDBCConfiguration à côté de ce composant et configurer ses propriétés dans l'onglet Basic settings de ce composant pour utiliser le tJDBCConfiguration.

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.