Accéder au contenu principal

Effectuer le suivi de modifications de données dans une table PostgreSQL à l'aide du composant tPostgreSQLSCDELT

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.

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 nouvel 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 sur les types de SCD, consultez Méthodologie de gestion du SCD.

Cette page vous a-t-elle aidé ?

Si vous rencontrez des problèmes sur cette page ou dans son contenu – une faute de frappe, une étape manquante ou une erreur technique – faites-le-nous savoir.