Data Universe
Newsletter
GlossaireSSurrogate Key
Data Engineering

Surrogate Key

Définition

Identifiant artificiel (généralement un entier auto-incrémenté ou un hash) généré par le data warehouse pour identifier de façon unique une ligne dans une table de dimension, indépendamment de la clé métier (business key ou natural key) du système source. L'usage des surrogate keys présente plusieurs avantages : immunité aux changements de clés dans les systèmes sources, support des SCD Type 2 (plusieurs lignes pour la même entité avec des clés différentes), performance des JOINs sur entier vs. chaîne de caractères, et décorrélation du modèle analytique des systèmes opérationnels. La clé métier est conservée comme attribut descriptif. En pratique, dbt génère souvent les surrogate keys via la macro dbt_utils.generate_surrogate_key().

Exemples concrets

dbt_utils.generate_surrogate_key()Séquence INTEGER auto-incrémentéeHash MD5 de la business keyDimension client avec SK + natural key
← Retour au glossaireTermes en “S

Fiche rapide

CatégorieData Engineering
Exemples4 outils / technologies