Saltar la navegación

Slowly Changing Dimensions

Las Dimensiones lentamente cambiantes o SCD (Slowly Changing Dimensions) son Dimensiones en las cuales sus datos tienden a modificarse a través del tiempo, ya sea de forma ocasional o constante. 

Cuando ocurren estos cambios, se puede optar por seguir una de estas dos opciones:

  • Registrar el historial de cambios.
  • Reemplazar los valores que sean necesarios.

Inicialmente Ralph Kimball planteó tres estrategias a seguir cuando se tratan las SCD: tipo 1, tipo 2 y tipo 3; pero a través de los años la comunidad de personas que se encargaba de modelar bases de datos profundizó las definiciones iniciales e incluyó varios tipos SCD más, por ejemplo: tipo 4 y tipo 6.

A continuación se detallará cada tipo de estrategia SCD:

  • SCD Tipo 1: Sobreescribir.
  • SCD Tipo 2: Añadir fila.
  • SCD Tipo 3: Añadir columna.
  • SCD Tipo 4: Historial separado.
  • SCD Tipo 6: Híbrido.

Cabe destacar que existe un SCD Tipo 0, que representa el NO tener en cuenta los cambios que pudieran llegar a suceder en los datos de las Dimensiones y por consiguiente NO tomar medidas.

De acuerdo a la naturaleza del cambio se debe seleccionar qué técnica SCD se utilizará;  en algunos casos resultará conveniente combinar varias técnicas.

Es importante señalar que si bien hay diferentes maneras de implementar cada técnica, es indispensable contar con claves subrogadas en las tablas de Dimensiones para  poder aplicar dichas técnicas.

Al aplicar las diferentes técnicas SCD, en muchos casos se deberá modificar la estructura de la tabla de Dimensión con la que se esté trabajando, por lo cual estas modificaciones son recomendables hacerlas al momento de modelar la tabla; aunque también pueden hacerse una vez que ya se ha modelado y contiene datos;  así por ejemplo al añadir una nueva columna se deberán especificar los valores por defecto que adoptarán los registros de la tabla.

Nota:

En todos los ejemplos que se presentarán a continuación se debe tener en cuenta que:

  • idProducto es una clave subrogada que es clave principal de la tabla utilizada.