Analítica Web & Datos Sigla: Surrogate Keys

Surrogate Keys (Claves Subrogadas en DW)

Equivalente en inglés: Surrogate Keys in Dimensional Modeling
Definición Concisa

Identificadores únicos artificiales generados internamente por el almacén de datos para desacoplar los modelos analíticos de las claves operativas de origen.

Explicación y Contexto Conceptual

Una Clave Subrogada (Surrogate Key) es una clave primaria sintética y sin significado intrínseco de negocio (típicamente un entero secuencial o un hash MD5/SHA-256) asignada por el Data Warehouse a cada registro de una tabla de dimensiones.

Depender de las claves naturales u operativas de los sistemas de origen (como el `user_id` de Shopify o el `id` de Salesforce) presenta serios riesgos: las claves pueden colisionar al fusionar dos empresas, pueden cambiar con el tiempo o pueden contener caracteres no compatibles con el motor de base de datos. Además, para implementar dimensiones de cambio lento (SCD Tipo 2), es imprescindible tener múltiples filas para un mismo cliente, cada una con su propia clave subrogada única.

En proyectos dbt modernos, las claves subrogadas se generan de forma determinística utilizando la función macro `dbt_utils.generate_surrogate_key(['columna_a', 'columna_b'])`.

Cálculo / Regla Clave Subrogada Hash = MD5(COALESCE(ad_id, "") || "-" || COALESCE(date_day, "") || "-" || COALESCE(channel, "")).

Ejemplo en la Práctica

Para rastrear un cliente en múltiples fuentes, el Data Warehouse genera una clave subrogada `dim_customer_sk` mediante el hash de su correo electrónico normalizado.

Formato de Cita
"Surrogate Keys (Claves Subrogadas en DW)": Identificadores únicos artificiales generados internamente por el almacén de datos para desacoplar los modelos analíticos de las claves operativas de origen. Fuente: Glosario del Marketing y la Publicidad, Blue Design Worldwide (https://bluecolombia.co/glosario-marketing/termino/surrogate-keys-claves-subrogadas-en-dw)

Conceptos Relacionados