Scénario 2: Agréger des valeurs basées sur un schéma dynamique - 6.1

Composants Talend Guide de référence

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

Ce scénario Java décrit un Job à quatre composants. On utilise un composant tAggregateRow pour lire les données d'un fichier CSV, les rassembler puis envoyer le résultat de l'opération dans la console Run et dans un fichier de sortie. Pour plus d'informations concernant le schéma dynamique, consultez le Guide utilisateur du Studio Talend.

  • A partir de la Palette, cliquez et déposez dans l'éditeur graphique les composants requis pour ce scénario : tFileInputDelimited, tAggregateRow, tLogRow et tFileOutputDelimited.

  • Connectez-les à l'aide de liens de type Row > Main.

  • Double-cliquez sur le composant tFileInputDelimited pour afficher l'onglet Basic settings de sa vue Component.

Avertissement

La fonction de schéma dynamique est disponible uniquement en mode Built-In et nécessite que le fichier d'entrée contienne une ligne d'en-tête.

  • Sélectionnez Built-In dans la liste déroulante Property Type.

  • Cliquez sur le bouton [...] à droite du champ File Name afin de parcourir votre répertoire et de sélectionner votre fichier d'entrée. Dans ce scénario, un fichier CSV contenant seulement trois colonnes est utilisé, comme affiché ci-dessous :

  • Spécifiez dans le champ Header quelle est la ligne d'en-tête. Dans ce scénario, il s'agit de la première ligne.

  • Sélectionnez Built-In dans la liste déroulante Schema, puis cliquez sur Edit schema pour paramétrer le schéma d'entrée.

Avertissement

La colonne dynamique doit être définie sur la dernière ligne du schéma.

  • Dans l'éditeur de schéma, ajoutez deux colonnes à l'aide du bouton [+] et nommez les respectivement Task et Other. Paramétrez le type de données de la colonne Other en Dynamic afin de récupérer toutes les colonnes non définies dans le schéma.

  • Cliquez sur OK pour fermer l'éditeur de schéma.

  • Double-cliquez sur le composant tAggregateRow pour afficher l'onglet Basic settings de sa vue Component.

  • Cliquez sur Sync columns pour réutiliser le schéma d'entrée dans les lignes de sortie. Si nécessaire, cliquez sur Edit schema et renommez les colonnes du schéma de sortie. Dans ce scénario, le schéma reste tel qu'il est.

  • Ajoutez une ligne dans le tableau Group by à l'aide du bouton [+], et sélectionnez Other à la fois dans le champ Output column et dans le champ Input column position pour agréger les données en fonction de la colonne dynamique.

Avertissement

L'agrégation de la colonne dynamique n'est possible que dans le cadre de l'opération de groupement des données.

  • Ajoutez une ligne dans le tableau Operations à l'aide du bouton [+],sélectionnez Task à la fois dans le champ Output column et dans le champ Input column position, puis sélectionnez list dans le champ Function pour que toutes les entrées de la colonne Task soient listées dans le résultat de l'opération de groupement.

  • Pour visionner les données de sortie sous forme de tableau dans la console Run, double-cliquez sur le composant tLogRow et sélectionnez l'option Table dans l'onglet Basic settings.

  • Double-cliquez sur le composant tFileOutputDelimited pour afficher l'onglet Basic settings de sa vue Component.

  • Cliquez sur le bouton [...] à droite du champ File Name afin de parcourir et sélectionner le répertoire dans lequel vous souhaitez enregistrer le fichier de sortie, puis donnez-lui un nom.

  • Cochez la case Include Header pour récupérer les noms des colonnes ainsi que les données agrégées.

  • Enregistrez votre Job puis appuyez sur F6 pour l'exécuter.

    Comme le montre le résultat de l'exécution du Job, les données sont agrégées conformément à Team et Status.