Scénario : Charger des données dans une base de données Teradata - 6.1

Composants Talend Open Studio Guide de référence

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

Ce scénario décrit un Job créant une table dans une base de données Teradata, écrivant des données dans un fichier délimité, chargeant ces données du fichier dans la table, récupérant les données de la table et les affichant dans la console.

Construire le Job

  1. Créez un Job et ajoutez les composants suivants en saisissant leur nom dans l'espace de modélisation graphique ou bien en les glissant-déposant de la Palette dans l'espace de modélisation graphique : un tTeradataRow, un tFixedFlowInput, un tFileOutputDelimited, un TeradataTPTExec, un tTeradataInput et un tLogRow.

  2. Reliez le tFixedFlowInput au tFileOutputDelimited à l'aide d'un lien Row > Main.

  3. Connectez le tTeradataInput au tLogRow avec le même type de lien.

  4. Reliez le tTeradataRow au tFixedFlowInput à l'aide d'un lien Trigger > OnSubjobOk.

  5. Connectez le tFixedFlowInput au TeradataTPTExec et le TeradataTPTExec au tTeradataInput à l'aide du même type de lien.

Configurer les composants

Créer une nouvelle table d'une base de données Teradata

  1. Double-cliquez sur le tTeradataRow pour ouvrir sa vue Basic settings.

  2. Renseignez les champs Host, Database, Username et Password en saisissant respectivement le nom de l'hôte, le nom de la base de données, l'identifiant et le mot de passe de l'utilisateur, pour la connexion.

  3. Dans le champ Query, saisissez l'instruction SQL suivante afin de créer une table nommée person contenant ces trois colonnes :id, name, sex.

    CREATE SET TABLE samples.person,
    FALLBACK,
    NO BEFORE JOURNAL,
    NO AFTER JOURNAL
    (
      id INTEGER NOT NULL,
      name VARCHAR(50),
      sex VARCHAR(20)
    )
    UNIQUE PRIMARY INDEX (id)

Préparer les données source

  1. Double-cliquez sur le composant tFixedFlowInput pour ouvrir sa vue Basic settings.

  2. Cliquez sur le bouton [...] à côté du champ Edit schema pour ouvrir l'éditeur du schéma.

  3. Cliquez trois fois sur le bouton [+] pour ajouter trois colonnes : id de Type Integer, name et sex, de Type String.

  4. Cliquez sur OK pour fermer l'éditeur et acceptez la propagation lorsqu'une fenêtre vous propose de propager le schéma.

  5. Dans la zone Mode, sélectionnez Use Inline Content (delimited file) et saisissez les données d'entrée dans le champ Content.

    1;Ford;Male
    2;Rose;Female
    3;Sabrina;Female
    4;Teddy;Male
    5;Kate;Male
  6. Double-cliquez sur le tFileOutputDelimited pour ouvrir sa vue Basic settings.

  7. Dans le champ File Name, spécifiez le fichier dans lequel écrire les données d'entrée. Dans cet exemple, saisissez E:/person.csv.

Charger les données sources dans une table vide

  1. Double-cliquez sur le TeradataTPTExec pour ouvrir sa vue Basic settings.

  2. Dans les champs TDPID, Database name, Username et Password, saisissez vos informations de connexion à la base de données Teradata.

  3. Dans le champ Table, saisissez le nom de la table dans laquelle les données source seront chargées. Dans cet exemple, saisissez person.

  4. Dans le champ Script generated folder, parcourez votre système jusqu'au répertoire sous lequel créer le fichier du script Teradata Parallel Transporter durant l'exécution du Job. Dans cet exemple, le chemin est E:/.

  5. Dans le champ Load file, parcourez votre système jusqu'au fichier contenant les données source. Dans cet exemple, le chemin est E:/person.csv.

  6. Dans le champ Error file, spécifiez le fichier dans lequel enregistrer les messages de log. Dans cet exemple, le chemin est E:/error.log.

  7. Cliquez sur le bouton [...] à côté du champ Edit schema to open the schema editor.

    Cliquez trois fois sur le bouton [+] pour ajouter trois colonnes : id de Type Integer, name et sex, de Type String. Le nom des colonnes id et name dans la colonne Db Column sont entourés par \", car ce sont des mots-clés de la base de données Teradata.

    Cliquez sur OK pour valider ces modifications et fermer l'éditeur du schéma.

  8. Cliquez sur l'onglet Advanced settings pour ouvrir sa vue. Cochez la case Apply TPT consumer operator optional attributes et cliquez quatre fois sur le bouton [+] sous la table Optional attributes pour ajouter les attributs nécessaires suivants : ErrorLimit, ErrorTable1, QueryBandSessInfo et TraceLevel.

    Note

    Pour les attributs de type VARCHAR, saisissez les valeurs entre guillemets doubles.

Récupérez les données de la table de base de données Teradata

  1. Double-cliquez sur le tTeradataInput pour ouvrir sa vue Basic settings.

  2. Dans le champ Table Name, saisissez le nom de la table de laquelle lire les données. Dans cet exemple, saisissez person.

  3. Dans le champ Query, saisissez l'instruction SQL suivante pour récupérer les données de la table person.

    SELECT * FROM samples.person ORDER BY id
  4. Cliquez sur le [...] à côté du champ Edit schema pour ouvrir l'éditeur du schéma.

  5. Cliquez trois fois sur le bouton [+] pour ajouter trois colonnes : id de Type Integer, name et sex, de Type String. Le nom des colonnes id et name dans la colonne Db Column sont entourés par \", car ce sont des mots-clés de la base de données Teradata.

  6. Cliquez sur OK pour fermer l'éditeur de schéma et acceptez la propagation proposée par la fenêtre qui s'ouvre.

  7. Double-cliquez sur le tLogRow pour ouvrir sa vue Basic settings.

  8. Dans la zone Mode, sélectionnez l'option Table (print values in cells of a table) pour un affichage optimal des résultats.

Sauvegarder et exécuter le Job

  1. Appuyez sur les touches Ctrl + S pou sauvegarder le Job.

  2. Appuyez sur F6 pour l'exécuter.

    Les données écrites dans la table de la bases de données Teradata spécifiée sont affichées dans la console.