|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Chef de projet MOA Inscription : mai 2011 Messages : 1 ![]() |
Bonjour à tous,
Je suis ultra nouveau sur talend et comme tout nouveau qui se respecte je suis bloqué. Ma problématique : J'ai x entrées (tFileInput et/ou MySQL) dans toutes mes entées j'ai des emails et parfois il peut arriver que j'ai des doublons entre deux fichiers, entre un fichier et une table, voir même des doublons dans le même fichier. Le but du jeu est d'arriver à la fin à avoir une seule liste sans doublon. Pour corser le tout j'ai aussi une date associée à mes mails dans tous ses fichiers et je dois déterminer dans mon fichier en sortie, en fonction de la date, quel est la source originel d'un email. Typiquement j'ai un email dans mon fichier abonné en date du 15/05/2011 mais j'ai le même email dans une liste d'inscrit à ma newsletter le 01/01/2011. Donc son origine serait "Newsletter". J'ai vu qu'avec des conditions dans le tMap je peux arriver à ça mais est ce le mieux ? Mais c'est surtout sur le dédoublonnage que je me pose des questions si vous pouvez m'aider ou me donner des pistes. D'avance merci |
|
|
00
|
|
|
#2 |
|
Membre émérite
![]() Nicolas SaumandeArchitecte Décisionnel Inscription : février 2008 Messages : 693 ![]() |
Bonjour,
Il existe un composant de dédoublonnage (tUniqRow), mais je ne sais pas trop comment il détermine les lignes qu'il garde... Peut-être que ça vaudrait le coup de se pencher sur son fonctionnement ? Sinon il est possible de gérer ça avec un tri suivi d'un tAggregateRow. Je ne sais pas trop comment tu identifies que 2 email sont les mêmes ? Via le sujet ? Il faut en tous cas trier sur cet identifiant et la date, la plus récente en premier par exemple, puis dans le tAggregateRow, tu définis le group by sur l'identifiant que tu as défini, et pour les autres champs en sortie tu utilises la fonction first. Ainsi tu auras pour chaque mail les données de son occurrence la plus ancienne. Nicolas |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com