Méthodologie de gestion du SCD - 6.5

SCD

author
Talend Documentation Team
EnrichVersion
6.5
EnrichProdName
Talend Big Data
Talend Big Data Platform
Talend Data Fabric
Talend Data Integration
Talend Data Management Platform
Talend Data Services Platform
Talend ESB
Talend MDM Platform
Talend Open Studio for Big Data
Talend Open Studio for Data Integration
Talend Open Studio for ESB
Talend Open Studio for MDM
Talend Real-Time Big Data Platform
task
Création et développement > Systèmes tiers > Composants Business Intelligence > Composants SCD
Gouvernance de données > Systèmes tiers > Composants Business Intelligence > Composants SCD
Qualité et préparation de données > Systèmes tiers > Composants Business Intelligence > Composants SCD
EnrichPlatform
Studio Talend
Lors de dimensions à évolution lente ou Slowly Changing Dimensions (SCD), les données changent lentement.

L'éditeur SCD permet de construire de manière simple le flux de sortie des données SCD. Dans l'éditeur SCD, vous pouvez relier les colonnes, sélectionner la clé de substitution (Surrogate key) et paramétrer les attributs des colonnes modifiées en combinant les différents types de modifications SCD. La figure ci-dessous représente l'éditeur SCD.

Clés SCD

Vous devez sélectionner une ou plusieurs colonnes qui serviront de clés permettant d'assurer l'unicité des données entrantes.

Vous devez aussi sélectionner une colonne sur laquelle positionner une clé de substitution (surrogate key) dans la table SCD et la relier à une des colonnes d'entrée de la table source. La valeur de la clé de substitution permet de relier les enregistrements de la table source aux enregistrements de la table SCD. L'éditeur utilise ce mapping pour localiser l'enregistrement dans la table SCD et pour déterminer si un enregistrement est nouveau ou s'il a été modifié. La clé de substitution est généralement la clé primaire de la table source, mais elle peut aussi correspondre à une autre clé à partir du moment où elle permet d'identifier de façon unique un enregistrement et où ses valeurs ne changent pas.

Source keys : Glissez une ou plusieurs colonnes du panneau Unused vers le panneau Source keys. Ces colonnes seront utilisées en tant que clé(s) assurant l'unicité des données entrantes.

Surrogate keys : Paramétrez la colonne dans laquelle la clé de substitution générée sera stockée. Une clé de substitution peut être générée en fonction de la méthode sélectionnée dans la liste Creation.

Creation : Sélectionnez une des méthodes suivantes permettant de générer la clé.

  • Auto increment : la clé est auto-incrémentée.

  • Input field : la clé est fournie par un champ d'entrée.

    Lorsque cette méthode est sélectionnée, vous pouvez glisser le champ correspondant du panneau Unused vers le champ complement.

  • Routine : à partir du champ complement, vous pouvez appuyer sur Ctrl+ Espace afin d'afficher la liste d'auto-complétion et de sélectionner la routine appropriée.

  • Table max +1 : la valeur maximum de la table SCD est incrémentée pour créer une clé de substitution.

  • DB Sequence : à partir du champ complement, vous pouvez saisir le nom de la séquence de la base de données (DB Sequence) existante qui va incrémenter automatiquement la colonne indiquée dans le champ name.

    L'option DB Sequence est disponible uniquement depuis l'éditeur SCD du composant tOracleSCD.

Types de SCD

Il existe quatre types de dimensions à évolution lente (Slowly Changing Dimensions) : du Type 0 au Type 3. Vous pouvez, d'un simple glisser-déposer, appliquer n'importe quel type de SCD à n'importe quelle colonne de la table source.

  • Type 0 : ce type de SCD n'est pas beaucoup utilisé. Certaines données dimensionnelles peuvent être écrasées et d'autres peuvent rester inchangées au cours du temps. Ce type de SCD convient lorsque aucun effort n'a été mis en place pour gérer les dimensions à caractère évolutif.

  • Type 1: no history is kept in the database. New data overwrites old data. Use this type if tracking changes is not necessary. this is most appropriate when correcting certain typos, for example the spelling of a name.

  • Type2 : l'intégralité de l'historique est stockée dans la base de données. Ce type de SCD traque les données d'historique en enregistrant un nouvel enregistrement dans la table de dimension avec une nouvelle clé à chaque fois qu'un changement est effectué. Ce type de SCD convient lorsque l'on traque les mises à jour, par exemple.

  • Type 3 : seules les informations sur l'ancienne valeur d'une dimension est écrite dans la base de données. Ce type de SCD traque les changements en utilisant des colonnes séparées. Ce type de SCD convient lorsque l'on traque les valeurs précédentes d'une colonne qui change.

Le principe du SCD Type 2 réside dans le fait qu'un nouvel enregistrement est ajouté à la table SCD lorsqu'un changement est détecté dans les colonnes sélectionnées. Notez que bien que plusieurs changements peuvent être effectués au même enregistrement sur plusieurs colonnes paramétrées en Type 2, une seule ligne traquant ces changements est ajoutée à la table SCD.

Le schéma du SCD Type 2 devrait inclure des colonnes spécifiques au SCD contenant les informations de log standard, notamment:

  • start : ajoute une colonne au schéma de la table SCD contenant la date de début d'un enregistrement. Vous pouvez sélectionner une des colonnes du schéma d'entrée comme date de départ pour la table SCD.

  • end : ajoute une colonne au schéma de la table SCD contenant la date de fin d'un enregistrement. Lorsque l'enregistrement est en cours, la date de fin est de valeur NULL , sinon vous pouvez utiliser une année fixe en sélectionnant Fixed Year Value dans la liste et renseignez l'année fictive dans la cellule d'à côté pour éviter d'avoir une valeur nulle dans le champ end.

  • version : ajoute une colonne au schéma de la table SCD contenant le numéro de version de l'enregistrement.

  • active : ajoute une colonne au schéma de la table SCD contenant les statuts true ou false. Cette colonne permet de repérer facilement les enregistrements actifs.