Procédure
-
Cliquez et déposez les composants suivants : tFileInputDelimited, tDenormalize, tLogRow de la Palette vers l'espace de modélisation graphique.
-
Connectez tous les composants à l'aide d'une connexion Row > main.
-
Dans l'onglet Basic settings du composant tFileInputDelimited, renseignez le chemin d'accès au fichier à dénormaliser.
-
Renseignez les autres champs, dont les champs Row Separator, Field separators et Header contenant respectivement les séparateurs de lignes et de champs et le nombre de lignes d'en-tête.
-
Le schéma du fichier est composé de quatre colonnes : Name, FirstName, HomeCity, WorkCity.
Name;FirstName;HomeCity;WorkCity
Pitt;Brad;Berverly Hills;Los Angeles
Pitt;Brad;Paris;London
Joli;Angelina;Berlin;Berlin
Joli;Angelina;Berlin;Los Angeles
Joli;Angelina;Los Angeles;Los Angeles
Willis;Bruce;Paris;Los Angeles
Willis;Bruce;Paris;Madrid
Willis;Bruce;Madrid;Paris
Willis;Bruce;Roma;Dublin
Moore;Demi;New York;Paris
Moore;Demi;Rio de Janeiro;Los Angeles
-
Dans l'onglet Basic settings du composant tDenormalize, sélectionnez les colonnes contenant les répétitions.
Elles correspondent aux colonnes apparaissant plusieurs fois dans le document. Dans cet exemple, FirstName, HomeCity et WorkCity sont les colonnes à partir desquelles la dénormalisation est effectuée.
-
Cliquez sur
pour ajouter des lignes et définir les colonnes à dénormaliser.
-
Dans la colonne Delimiter, paramétrez les séparateurs en les saisissant entre guillemets doubles, afin de séparer les valeurs concaténées.
-
Sauvegardez votre Job et appuyez sur F6 pour l'exécuter.
Les valeurs dénormalisées sont concaténées à l'aide d'un point-virgule.
|=-----+--------------------------+-------------------------+------------------------------=|
|Name |FirstName |HomeCity |WorkCity |
|=-----+--------------------------+-------------------------+------------------------------=|
|Joli |Angelina;Angelina;Angelina|Berlin;Berlin;Los Angeles|Berlin;Los Angeles;Los Angeles |
|Moore |Demi;Demi |New York;Rio de Janeiro |Paris;Los Angeles |
|Willis|Bruce;Bruce;Bruce;Bruce |Paris;Paris;Madrid;Roma |Los Angeles;Madrid;Paris;Dublin|
|Pitt |Brad;Brad |Berverly Hills;Paris |Los Angeles;London |
'------+--------------------------+-------------------------+-------------------------------'
-
Pour supprimer les occurrences en doublon, ouvrez la vue Basic settings du tDenormalize.
-
Cochez la case Merge same value.
-
Sauvegardez votre Job et appuyez sur F6 pour l'exécuter.
Résultats
Les occurrences en doublon sont fusionnées.
|=-----+---------+-----------------------+------------------------------=|
|Name |FirstName|HomeCity |WorkCity |
|=-----+---------+-----------------------+------------------------------=|
|Joli |Angelina |Berlin;Los Angeles |Berlin;Los Angeles |
|Moore |Demi |New York;Rio de Janeiro|Paris;Los Angeles |
|Willis|Bruce |Paris;Madrid;Roma |Los Angeles;Madrid;Paris;Dublin|
|Pitt |Brad |Berverly Hills;Paris |Los Angeles;London |
'------+---------+-----------------------+-------------------------------'