Ce scénario décrit un Job capturant les modifications relatives aux données des employés, dans une table PostgreSQL à l'aide des méthodes de SCD (Slowly Changing Dimensions) Type 1 et Type 2 implémentées par le composant tPostgreSQLSCDELT, puis écrit les données actuelles et historiques dans une table de dimension SCD.
Pour plus de technologies supportées par Talend, consultez Composants Talend.
Les données d'entrée contiennent différents détails relatifs aux employés, comme leur nom (name), leur poste (role) ou leur salaire (salary). Une colonne id est ajoutée pour assurer l'unicité des données d'entrée.
Tout d'abord, les données suivantes des employés sont insérées dans une nouvelle table Snowflake.
#id;name;role;salary
1;Mark Smith;tester;11000.00
2;Thomas Johnson;developer;12000.00
3;Teddy Brown;tester;13000.00
La table est ensuite mise à jour avec les données renouvelées des employés.
#id;name;role;salary
1;Mark Smith;tester;15000.00
2;Thomas Johnson;tester;18000.00
3;Teddy Brown;writer;17000.00
4;John Clinton;developer;19000.00
Vous pouvez constater que le rôle de Thomas Johnson
passe de developer
à tester
, le rôle de Teddy Brown
passe de tester
à writer
et son salaire passe de 13000.00
à 17000.00
. De plus, un nouvel enregistrement d'ID 4
est inséré. Dans ce scénario,
-
les données relatives au nouveau nom et au nouveau poste doivent écraser les données existantes, vous allez donc effectuer une méthode SCD de Type 1 sur ces données,
-
vous souhaitez conserver l'historique complet des données relatives aux salaires, toujours créer un enregistrement avec les données modifiées et fermer l'enregistrement précédent, vous allez donc effectuer une méthode SCD de Type 2 sur ces données.
Pour plus d'informations concernant les types SCD, consultez Méthodologie de gestion du SCD.