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

Fonction

Le composant tFileInputMSDelimited permet de lire des fichiers délimités multi-structure complexes.

Objectif

Le tFileInputMSDelimited ouvre le fichier multi structure complexe, en lit la structure (schémas) puis utilise des liens de type Row pour envoyer les champs, tels qu'ils ont été définis dans les différents schémas, vers les composants suivants dans le Job.

Propriétés du tFileInputMSDelimited

Famille du composant

File/Input

 

Basic settings

Multi Schema Editor

L'éditeur de schémas [Multi Schema Editor] permet de construire et de configurer le flux de données dans un fichier délimité multi-structure pour pouvoir associer un schéma pour chaque sortie.

Pour plus d'informations, consultez L'éditeur de schémas Multi Schema Editor.

 

Output

Les schémas définis dans l'éditeur de schémas [Multi Schema Editor], ainsi que les types d'enregistrements correspondants, s'affichent automatiquement dans le tableau Output.

 

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 erreurs, et ignorer les lignes en erreur.

Advanced settings

Trim all columns

Cochez cette case pour supprimer les espaces en début et en fin de champ dans toutes les colonnes.

 

Validate date

Cochez cette case pour vérifier strictement le format de la date par rapport au schéma d'entrée.

 

Advanced separator (for numbers)

Cochez cette option pour modifier les séparateurs utilisés pour les nombres :

Thousands separator : définissez le séparateur utilisé pour les milliers.

Decimal separator : définissez le séparateur utilisé pour les décimaux.

 

tStatCatcher Statistics

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

Global Variables

NB_LINE : nombre de lignes traitées. Cette variable est une variable After et retourne un 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

Utilisez ce composant pour lire des fichiers délimités multi structure et définissez un séparateur de champs pour différencier les champs contenus dans ces fichiers.

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

L'éditeur de schémas Multi Schema Editor

L'éditeur [Multi Schema Editor] vous permet de définir :

  • le chemin d'accès au fichier source,

  • les propriétés du fichier source,

  • la structure des données pour chacun des schémas de sortie.

Note

Lorsque vous définissez la structure de chaque schéma de sortie dans le [Multi Schema Editor], le nom des colonnes des différentes structures s'affichent automatiquement dans la liste du schéma d'entrée des composants qui suivent le tFileInputMSDelimited. Vous pouvez cependant définir la structure des données directement dans la vue Basic settings de chacun de ces composants.

Le [Multi Schema Editor] permet également de sélectionner un schéma qui servira de source (clé primaire) aux données entrantes, afin d'en assurer l'unicité. L'éditeur utilise ce procédé de mapping pour associer tous les schémas traités dans le fichier délimité au schéma source de ce même fichier.

Note

L'éditeur s'ouvre en affichant par défaut la première colonne. Cette colonne contient généralement l'indicateur de type des enregistrements. Une fois ouvert, vous pouvez cependant définir comme clé primaire n'importe quelle colonne du schéma en cochant la case associée.

L'image ci-dessous donne un aperçu de l'éditeur de schémas [Multi Schema Editor].

Pour des informations plus détaillées sur le Multi Schema Editor, consultez Scénario : Lecture d'un fichier délimité multi-structure.

Scénario : Lecture d'un fichier délimité multi-structure

Le présent scénario sert à créer un Job en Java permettant de lire trois schémas dans un même fichier délimité et d'en afficher la structure sur la console de la vue Run.

Le fichier délimité traité dans ce scénario se présente comme suit :

Déposer et relier les composants

  1. A partir de la Palette, déposez les composants suivants dans l'espace de modélisation graphique : un composant tFileInputMSDelimited et trois tLogRow.

  2. Dans l'espace de modélisation graphique, faites un clic-droit sur le composant tFileInputMSDelimited et connectez-le aux trois composants tLogRow (nommés ici tLogRow1, tLogRow2 et tLogRow3 à l'aide de liens row nommés respectivement row_A_1, row_B_1 et row_C_1.

Configurer les composants

  1. Double-cliquez sur le tFileInputMSDelimited pour ouvrir l'éditeur Multi Schema Editor.

  2. Cliquez sur le bouton Browse... à côté du champ File name pour indiquer où se trouve le fichier délimité multi-schéma que vous voulez traiter.

  3. Dans la zone File Settings, renseignez :

    -le type d'encodage de votre fichier source, à partir de la liste déroulante. Cette option permet de garantir une certaine cohérence entre tous les fichiers d'entrée et de sortie.

    -les séparateurs de champ et de ligne utilisés dans le fichier source.

    Note

    Cochez la case Use Multiple Separator et configurez les champs qui suivent si différents séparateurs de champs sont utilisés pour séparer les schémas du fichier source.

    Un aperçu des données du fichier source apparaît automatiquement dans le panneau d'affichage Preview.

    Note

    La colonne Column 0, qui contient généralement l'indicateur de type des enregistrements est sélectionnée par défaut. Vous pouvez cependant définir n'importe quelle autre colonne comme clé primaire en cochant sa case associée.

  4. Cliquez sur le bouton Fetch Codes à droite du panneau Preview pour cataloguer les types de schémas et les enregistrements du fichier source. Dans ce scénario, le fichier source comporte trois types de schémas (A, B, C).

    A partir du panneau d'affichage Fetch Codes, cliquez sur chacun des trois types pour que la structure de leurs données s'affiche dans le panneau Preview.

  5. Cliquez dans les cellules de la ligne Name et choisissez le nom des colonnes de chacun des schémas sélectionnés.

    Dans ce scénario, les colonnes se lisent comme suit :

    -Schéma A : Type, DiscName, Author, Date,

    -Schéma B : Type, SongName,

    -Schéma : Type, LibraryName.

    Vous devez à présent définir, à partir des données d'entrée, la clé primaire qui permettra de conserver leur unicité (dans ce scénario, il s'agit de DiscName). Il vous faut pour cela :

  6. Sélectionner, à partir du panneau d'affichage Fetch Codes, le schéma contenant la colonne que vous voulez définir comme clé primaire (dans ce scénario, il s'agit du schéma A) pour en afficher la structure.

  7. Cliquer dans la cellule Key correspondant à la colonne DiscName et cocher la case qui s'affiche alors.

  8. Cliquer n'importe où dans l'éditeur pour que la mention false, dans la case Key, devienne true.

    Vous devez maintenant indiquer le schéma "père" auquel vous voulez rattacher les autres schémas "fils" (dans ce scénario, il s'agit de DiscName). Il vous faut pour cela :

  9. Sélectionner le schéma B, à partir du panneau d'affichage Fetch Codes, puis cliquer sur le bouton flèche droite pour le déplacer vers la droite.

    Faire de même pour le schéma C.

    Note

    Le champ Cardinality n'est pas obligatoire. Il vous permet de déterminer le nombre (ou l'intervalle) de champs des schémas "fils" rattachés au schéma "père". Cependant, si vous entrez un nombre ou un intervalle inexact et essayez d'exécuter le Job, un message d'erreur apparaîtra.

  10. Dans le [Multi Schema Editor], cliquez sur le bouton OK pour valider tous les changements que vous venez d'effectuer et fermer l'éditeur de schémas.

    Les trois schémas définis, ainsi que les types d'enregistrements correspondants, s'affichent automatiquement dans la vue Basic settings du composant tFileInputMSDelimited.

    Les trois schémas que vous avez définis dans l'éditeur [Multi Schema Editor] sont automatiquement communiqués aux trois composants tLogRow.

  11. Si nécessaire, cliquez sur le bouton Edit schema dans la vue Basic settings de chacun des composants tLogRow pour avoir un aperçu des structures de données en entrée et en sortie, telles que vous les avez définies dans le Multi Schema Editor, ou pour les modifier.

Sauvegarder et exécuter le Job

  1. Appuyez sur Ctrl+S pour sauvegarder votre Job.

  2. Appuyez sur F6 ou cliquez sur le bouton Run de l'onglet Run pour l'exécuter.

    Le fichier délimité multi-schéma est lu ligne par ligne et les champs extraits sont affichés dans la console Run Job comme défini dans le [Multi Schema Editor].