tVerticaOutput - 6.3

Composants Talend Open Studio Guide de référence

EnrichVersion
6.3
EnrichProdName
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
task
Création et développement
Gouvernance de données
Qualité et préparation de données
EnrichPlatform
Studio Talend

Fonction

Le composant tVerticaOutput écrit, met à jour, modifie ou supprime les données d'une base de données.

Objectif

Le tVerticaOutput exécute l'action définie sur la table et/ou sur les données d'une table, en fonction du flux entrant provenant du composant précédent.

Conseils et techniques

Utilisés ensemble, le Studio Talend et la base de données Vertica permettent de créer des applications d'entrepôt de données et de datamart très rapides et abordables. Pour plus d'informations sur la manière de configurer le Studio Talend pour se connecter à Vertica, consultez Talend and HP Vertica Tips and Techniques (en anglais).

Propriétés du tVerticaOutput

Famille du composant

Databases/Vertica

 

Basic settings

Property type

Peut être Built-in ou Repository

Depuis la version 5.6, les modes Built-In et Repository sont disponibles dans toutes les solutions de Talend.

 

 

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

 

 

Repository : Sélectionnez le fichier de propriétés du composant. Les champs suivants sont alors pré-remplis à l'aide des données collectées.

 

Cliquez sur cette icône pour ouvrir l'assistant de configuration de connexion à la base de données et enregistrer les paramètres de connexion que vous avez définis dans la vue Basic settings du composant.

Pour plus d'informations sur comment définir et stocker des paramètres de connexion de base de données, consultez le Guide utilisateur du Studio Talend.

 

DB Version

Sélectionnez dans la liste la version de Vertica que vous utilisez.

 

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.

Note

Lorsqu'un Job contient un Job parent et un Job enfant, si vous souhaitez utiliser une connexion existant entre les deux niveaux, par exemple pour partager la connexion créée par le Job parent avec le Job enfant, vous devez :

  1. Au niveau parent, enregistrer la connexion à la base de données à partager, dans la vue Basic settings du composant de connexion créant cette connexion.

  2. Au niveau enfant, utiliser un composant dédié à la création de connexion, afin de lire la connexion enregistrée.

Pour plus d'informations concernant le partage d'une connexion à travers différents niveaux de Jobs, consultez le Guide utilisateur du Studio Talend.

 

Host

Adresse IP du serveur de base de données.

 

Port

Numéro du port d'écoute du serveur de base de données.

 

Database

Nom de la base de données.

 

Username et Password

Informations d'authentification de l'utilisateur de base de données

Pour saisir le mot de passe, cliquez sur le bouton [...] à côté du champ Password, puis, dans la boîte de dialogue qui s'ouvre, saisissez le mot de passe entre guillemets doubles et cliquez sur OK afin de sauvegarder les paramètres.

 

Table

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

 

Action on table

Vous pouvez effectuer l'une des opérations suivantes sur les données de la table sélectionnée :

Default : n'effectuer aucune opération de table.

Drop and create table : supprimer la table puis en créer une nouvelle.

Create table : créer une table qui n'existe pas encore.

Create table if doesn't exist : créer la table si nécessaire.

Drop table if exists and create : supprimer la table si elle existe déjà, puis en créer une nouvelle.

Clear table : supprimer le contenu de la table.

 

Use "drop cascade"

Note

Cette case est disponible lorsque vous sélectionnez l'option relative à la suppression de table dans la liste Action on table.

Cochez cette case pour supprimer tous les objets liés à la table qui va être supprimée.

 

Action on data

Vous pouvez effectuer les opérations suivantes sur les données de la table sélectionnée :

Insert : Ajouter de nouvelles entrées à la table. Le Job s'arrête lorsqu'il détecte des doublons.

Update : Mettre à 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, un nouvel enregistrement est inséré.

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

Copy : Lire des données d'un fichier texte et insérer des tuples dans le système de stockage optimisé en écriture (Write Optimized Store) ou directement dans le système de stockage optimisé en lecture (Read Optimized Store). Cette option est idéale pour le chargement de masse. Pour plus d'informations, consultez votre manuel Vertica SQL.

Avertissement

Il est nécessaire de spécifier au minimum une colonne comme clé primaire sur laquelle baser les opérations Update et Delete. Pour cela, cliquez sur le bouton [...] à côté du champ Edit Schema et cochez la ou les case(s) correspondant à la ou aux colonne(s) que vous souhaitez définir comme clé(s) primaire(s). Pour une utilisation avancée, cliquez sur l'onglet Advanced settings pour définir simultanément les clés primaires sur lesquelles baser les opérations de mise à jour (Update) et de suppression (Delete). Pour cela, cochez la case Use field options et sélectionnez la case Key in update correspondant à la colonne sur laquelle baser votre opération de mise à jour (Update). Procédez de la même manière avec les cases Key in delete pour les opérations de suppression (Delete).

 

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.

Depuis la version 5.6, les modes Built-In et Repository sont disponibles dans toutes les solutions de Talend.

 

 

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.

Lorsque le schéma à réutiliser contient des valeurs par défaut, qui sont des entiers (integer) ou des fonctions (function), assurez-vous que les valeurs par défaut ne sont pas entourées de guillemets. Si c'est le cas, vous devez supprimer manuellement les guillemets.

Pour plus d'informations, consultez l'article Vérification des valeurs par défaut dans un schéma récupéré sur Talend Help Center (https://help.talend.com).

  

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

 

Die on error

Cette case est cochée par défaut et stoppe le Job en cas d'erreur. Décochez cette case pour terminer le traitement avec les lignes sans erreur, et ignorer les lignes en erreur. Vous pouvez récupérer les lignes en erreur, si vous le souhaitez. Pour cela, utilisez un lien Row > Rejects.

Advanced settings

Additional JDBC Parameters

Ajoutez des paramètres JDBC supplémentaires nécessaires à la connexion à la base de données.

Cette option n'est pas disponible lorsque vous cochez la case Use an existing connection dans la vue Basic settings.

 

Commit every

Nombre de lignes à inclure dans le lot avant de commencer l'écriture dans la base. Cette option garantit la qualité de la transaction (cependant pas de rollback) et surtout une meilleure performance d'exécution.

Paramètres Copy

Note

Cette zone est uniquement disponible si vous avez choisi Copy dans la liste Action on data. Pour des informations plus détaillées concernant les paramètres Copy, consultez votre Manuel de Référence Vertica SQL.

Abort on error

Cochez cette case afin d'arrêter l'opération de copie (Copy) sur les données si une ligne est rejetée et annule cette opération. Ainsi, aucune donnée n'est traitée.

 

Maximum rejects

Saisissez un nombre afin de configurer la commande REJECTMAX utilisée par Vertica, qui indique la limite maximale du nombre d'enregistrements logiques à rejeter avant qu'un chargement n'échoue. Si ce nombre n'est pas spécifié ou si sa valeur est 0, le nombre de rejets autorisés est illimité.

 

No commit

Cochez cette case pour empêcher l'opération actuelle de commiter automatiquement.

 

Exception file

Saisissez le chemin d'accès, ou parcourez et sélectionnez le fichier dans lequel sont écrits les messages indiquant le nombre de lignes d'entrée et la raison de chaque rejet d'enregistrement de données.

 

Exception file node

Indiquez quel est le nœud du fichier d'exception. Si ce champ n'est pas renseigné, le nœud de l'initiateur de la requête est choisi par défaut.

 

Rejected data file

Saisissez le chemin d'accès, ou parcourez et sélectionnez le fichier dans lequel seront écrites les lignes rejetées. Ce fichier pourra ensuite être modifié afin de résoudre des problèmes, et pourra être regénéré.

 

Rejected data file node

Indiquez quel est le nœud du fichier des données rejetées. Si ce champ n'est pas renseigné, le nœud de l'initiateur de la requête est choisi par défaut.

 

Use Batch

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

Note

Cette case est disponible lorsque vous sélectionnez Insert, Update, Delete ou Copy dans la liste Action on data.

 

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.

 

Additional Columns

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

 

 

Name : Saisissez le nom de la colonne à 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 tVerticaOutput peut utiliser pour situer ou remplacer la nouvelle colonne ou celle à modifier.

 

Use field options

Cochez cette case pour personnaliser une requête, surtout lorsqu'il y a plusieurs actions sur les données.

 

Enable debug mode

Cochez cette case pour afficher chaque étape du processus d'écriture dans la base de données.

  Support null in "SQL WHERE" statement Cochez cette case afin d'autoriser les valeurs nulles dans l'instruction "SQL WHERE".
  Create projection when create table

Cochez cette case afin de créer une projection pour la table à créer.

Note

Cette case est disponible uniquement lorsque vous avez sélectionné l'option de création de table dans la liste Action on table de la vue Basic settings.

 

tStatCatcher Statistics

Cochez cette case pour collecter les données de log au niveau du composant.

Dynamic settings

Cliquez sur le bouton [+] pour ajouter une ligne à la table. Dans le champ Code, saisissez une variable de contexte afin de sélectionner dynamiquement votre connexion à la base de données parmi celles prévues dans votre Job. Cette fonctionnalité est utile si vous devez accéder à plusieurs tables de bases de données ayant la même structure mais se trouvant dans différentes bases de données, en particulier lorsque vous travaillez dans un environnement dans lequel vous ne pouvez pas changer les paramètres de votre Job, par exemple lorsque votre Job doit être déployé et exécuté dans un Studio Talend indépendant.

La table Dynamic settings n'est disponible que si la case Use an existing connection est cochée dans la vue Basic settings. Lorsqu'un paramètre dynamique est configuré, la liste Component List devient inaccessible dans la vue Basic settings.

Pour des exemples sur l'usage des paramètres dynamiques, consultez Scénario 3 : Lire des données dans des bases de données MySQL à l'aide de connexions dynamiques basées sur les variables de contexte et Scénario : Lire des données à partir de différentes bases de données MySQL à l'aide de paramètres de connexion chargés dynamiquement. Pour plus d'informations concernant les Dynamic settings et les variables de contexte, consultez le Guide utilisateur du Studio Talend.

Global Variables

NB_LINE : nombre de lignes traitées. Cette variable est une variable After et retourne un entier.

NB_LINE_UPDATED : nombre de lignes mises à jour. Cette variable est une variable After et retourne un entier.

NB_LINE_INSERTED : nombre de lignes insérées. Cette variable est une variable After et retourne un entier.

NB_LINE_DELETED : nombre de lignes supprimées. Cette variable est une variable After et retourne un entier.

NB_LINE_REJECTED : nombre de lignes rejetées. Cette variable est une variable After et retourne un entier.

NB_LINE_COPIED : nombre de lignes copiées. Cette variable est une variable After et retourne un nombre entier.

ERROR_MESSAGE : message d'erreur généré par le composant lorsqu'une erreur survient. Cette variable est une variable After et retourne une chaîne de caractères. Cette variable fonctionne uniquement si la case Die on error est décochée, si le composant a cette option.

Une variable Flow fonctionne durant l'exécution d'un composant. Une variable After fonctionne après l'exécution d'un composant.

Pour renseigner un champ ou une expression à l'aide d'une variable, appuyez sur les touches Ctrl+Espace pour accéder à la liste des variables. A partir de cette liste, vous pouvez choisir la variable que vous souhaitez utiliser.

Pour plus d'informations concernant les variables, consultez le Guide utilisateur du Studio Talend.

Utilisation

Ce composant offre la flexibilité des requêtes sur les bases de données et couvre toutes les possibilités des requêtes SQL. Il permet de faire des actions sur une table ou les données d'une table d'une base de données Vertica. Il permet aussi de créer un flux de rejet avec un lien Row > Reject filtrant les données en erreur. Pour un exemple d'utilisation, consultez Scénario 3 : Récupérer les données erronées à l'aide d'un lien Reject du composant tMysqlOutput.

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

Limitation

Du fait d'une incompatibilité de licence, un ou plusieurs Jar requis pour utiliser ce composant ne sont pas fournis. Vous pouvez installer les Jar manquants pour ce composant en cliquant sur le bouton Install dans l'onglet Component. Vous pouvez également trouver les Jar manquants et les ajouter dans l'onglet Modules de la perspective Integration de votre studio. Pour plus d'informations, consultez l'article Installation de modules externes sur Talend Help Center (https://help.talend.com) ou la section décrivant comment configurer le studio, dans le Guide d'installation et de migration Talend.

Scénarios associés

Pour un scénario associé au composant tVerticaOutput, consultez :