|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : avril 2004 Messages : 13 ![]() |
Bonjour
Me plongeant dans les composants SCD de Talend (3.4) j'en découvre les limites. Je souhaite traiter une dimension(Client par ex) qui contient un identifiant (d'une equipe, d'une personne) et le libellé attaché. Si l'identifiant est modifié, c'est une évolution significative et donc j'aimerai crée une nouvelle entrée. C'est donc un champ de type 2 Si le libellé est modifié, je veux enregistrer cette nouvelle valeur dans la dernière ligne active. C'est donc un champ de type 1. Le problème de Talend c'est qu'il commence par mettre a jour les champs de type 1 avant les champs de type 2. Du coup si mon client change d'affectation (passage de l'équipe & a l'equipe 2, l'entrée créée est correcte (ie id equipe 2, nom equipe 2), par contre l'entrée précédente est aussi mise a jour et on se retrouve avec (id equipe 1, nom equipe2) La solution que j'ai trouve c'est de tout passer en type 2 mais ca alourdit beaucoup. Il y a bien une case Only Update Active record mais ca n'a pas l'air de changer grand chose (j'ai pas trouvé de doc a ce sujet) Y a t'il un moyen d'avoir ce comportement sans tout réécrire? Jean-Philippe |
|
|
00
|
|
|
#2 |
|
Membre Expert
![]() Benoit DurandConsultant en Business Intelligence Freelance Inscription : mars 2005 Messages : 812 ![]() |
Passer par un pré-chargement des lignes actives de la dim dans une table temporaire et de faire le scd sur cette table temp. Ensuite faire un isert/update dans la dim finale.
Ca fait 3 étapes au lieu d'une mais ça marche bien et en terme de perf c'est pas mal du tout sur de grosses volumétries.
__________________
Pensez à la fonction Recherche |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com