Scénario : Créer un diagramme en barres à partir de données d'entrée - 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 simple qui lit les données d'un fichier CSV et les transforme en diagramme en barres. Le fichier d'entrée est présenté ci-dessous :

City;Population(x1000);LandArea(km2);PopulationDensity(people/km2)
Beijing;10233;1418;7620
Moscow;10452;1081;9644
Seoul;10422;605;17215
Tokyo;8731;617;14151
Jakarta;8490;664;12738
New York;8310;789;10452

Le fichier d'entrée ayant une structure différente de celle requise pour l'utilisation d'un tBarChart, un tMap sera utilisé dans ce scénario, afin de mettre en correspondance les données avec un fichier CSV à trois colonnes, avant d'utiliser le tBarChart pour générer un fichier représentant le diagramme en barres.

Note

Le tMap est généralement utilisé afin d'adapter le schéma d'entrée conformément à la structure du schéma du composant tBarChart. Pour plus d'informations concernant le composant tMap, consultez le Guide utilisateur du Studio Talend ainsi que tMap.

Déposer et relier les composants

  1. A partir de la Palette, déposez les composants suivants dans l'espace de modélisation graphique : deux composants tFileInputDelimited, un tMap, trois composants tFileOutputDelimited et un tBarChart. Renommez les composants comme vous le souhaitez pour faciliter le travail de conception.

  2. Connectez le composant tPrejob à un tFileDelete à l'aide d'une connexion Trigger > On Component Ok et connectez le composant tPostjob au second tFileDelete via le même type de connexion.

  3. Connectez le premier composant tFileInputDelimited au tMap à l'aide d'une connexion Row > Main.

  4. Connectez le composant tMap au premier tFileOutputDelimited à l'aide d'une connexion Row > Main et appelez-la Population.

  5. Répétez les étapes ci-dessus pour connecter le composant tMap aux deux autres tFileOutputDelimited à l'aide d'une connexion Row > Main et appelez-les Area et Density.

  6. Connectez le tFileInputDelimited au composant tBarChart à l'aide d'un lien Row > Main.

  7. Connectez le premier composant tFileInputDelimited au second tFileInputDelimited en utilisant une connexion Trigger > OnSubjobOk.

  8. Renommez les composants de façon à décrire leur fonction.

Lire les données source

  1. Double-cliquez sur le premier composant tFileInputDelimited afin d'afficher l'onglet Basic settings de sa vue Component.

  2. Renseignez le chemin d'accès au fichier à traiter dans le champ File name.

  3. Spécifiez dans le champ Header le nombre de lignes d'en-tête. Dans ce scénario, il n'y a qu'une seule ligne.

  4. Cliquez sur Edit schema pour décrire la structure des données du fichier d'entrée. Dans ce scénario, le schéma d'entrée est composé de quatre colonnes : City, Population, Area, et Density. Une fois les noms de colonnes et les types de données définis, cliquez sur OK pour fermer la boîte de dialogue du schéma.

Adapter les données source au schéma tBarChart

  1. Double-cliquez sur le tMap pour ouvrir l'éditeur Map Editor.

    Vous pouvez voir une table d'entrée dans le panneau d'entrée, row1 dans cet exemple et dans le panneau de sortie, trois tables de sortie vides appelées Population, Area et Density.

  2. Utilisez l'éditeur Schema editor pour ajouter trois colonnes à chacune des tables de sortie : series (type String), category (type String) et value (type Integer).

  3. Dans le champ Expression de chaque table de sortie, saisissez le texte à afficher dans la légende du graphique, dans cet exemple "Population (x1000 people)", "Land area (km2)", et "Population density (people/km2)".

  4. Déposez la colonne City de la table d'entrée dans la colonne category de chaque table de sortie.

  5. Déposez la colonne Population de la table d'entrée dans la colonne value de la table Population.

  6. Déposez la colonne Area de la table d'entrée dans la colonne value de la table Area.

  7. Déposez la colonne Density de la table d'entrée dans la colonne value de la table Density.

  8. Cliquez sur OK pour sauvegarder les mappings, fermer l'éditeur et propager les schémas de sortie aux composants de sortie.

Générer le fichier d'entrée temporaire

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

  2. Dans le champ File Name, définissez un fichier CSV dans lequel envoyer les flux de données mappés. Dans cet exemple, nommez le fichier de sortie à créer Temp.csv. Ce fichier sera utilisé comme fichier d'entrée pour le composant tBarChart.

  3. Cochez la case Append.

  4. Définissez les paramètres des deux autres composants tFileOutputDelimited exactement de la même manière que le premier tFileOutputDelimited.

    Note

    Notez que l'ordre des flux de données sortant du composant tMap n'est pas nécessairement l'ordre dans lequel les données seront écrites dans le composant cible. Pour vous assurer que le fichier est correctement généré, supprimez, s'il existe, le fichier portant le même nom avant d'exécuter le Job. Vérifiez que la case Append est cochée dans tous les composants tFileOutputDelimited afin que tous les flux de données mappés aillent dans le même fichier, sans écraser les données existantes.

Configurer les données d'entrée pour le tBarChart

  1. Double-cliquez sur le second composant tFileInputDelimited afin d'afficher l'onglet Basic settings de sa vue Component.

  2. Renseignez le champ File name avec le chemin d'accès au fichier, ainsi que son nom, comme défini dans chaque composant tFileOutputDelimited. Dans cet exemple, le fichier d'entrée est LargeCities_mapped.csv.

  3. Double-cliquez sur le composant tBarChart pour afficher l'onglet Basic settings.

  4. Dans le champ Generated image path, renseignez le chemin d'accès du fichier image à générer.

  5. Dans le champ Chart title, saisissez un titre pour le diagramme en barres.

  6. Saisissez un nom pour les axes category et series.

  7. Si nécessaire, définissez la taille (la largeur dans le champ Image Width, la hauteur dans le champ Image height) et le degré de transparence de l'image (dans le champ Foreground alpha). Dans ce scénario, laissez les paramètres par défaut.

  8. Cliquez sur Edit schema afin d'ouvrir la boîte de dialogue du schéma.

  9. Copiez toutes les colonnes du schéma de sortie dans le schéma d'entrée en cliquant sur la double-flèche pointant vers la gauche.

    Cliquez sur OK pour fermer la boîte de dialogue du schéma.

Supprimer le fichier temporaire

La fonction des composants tPrejob et tPostjob est de déclencher les sous-jobs connectés et n'ont pas besoin d'être configurés. Vous devez simplement définir les propriétés des deux composants tFileDelete.

  1. Double-cliquez sur le premier composant tFileDelete pour afficher sa vue Basic settings.

  2. Dans le champ File name, renseignez le chemin d'accès du fichier temporaire.

    Note

    Si la case Fail on error est cochée et que le sous-job de pré-traitement échoue à cause d'erreurs (par exemple le fichier à supprimer n'existe pas), l'échec empêche le lancement du sous-job principal. Dans cette situation, décochez la case Fail on error pour éviter cette interruption.

Exécuter votre Job

  1. Sauvegardez votre Job.

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

    Un diagramme en barres est généré selon les critères définis.