Para estas fiestas señaladas, volvemos a nuestro tema recurrente: diseño de un data warehouse. Llegados a este punto es necesario hablar de Slowly Changing Dimensions (SCD). Este concepto aplica a como una dimensión debe tener en cuenta los cambios históricos. Respecto este punto de vista las dimensiones se pueden clasificar como:
- Tipo 0 (SCD): No se tiene en cuenta la gestión de los cambios históricos y no se realiza esfuerzo alguno. De manera que alguna información será sobreescrita, pero otra no. Sin planificación alguna.
- Tipo 1 (SCD): No se guardan históricos. La nueva información sobreescribe la antigua siempre. Principalmente la sobreescritura se realiza por errores de calidad de datos. Este tipo de dimensiones es fácil mantener y son usadas cuando la información histórica no es importante.
- Tipo 2 (SCD): Toda la información histórica se guarda en el data warehouse. Cuando hay un cambio se crea una nueva entrada con su fecha y surrogate key apropiadas. A partir de ese momento será el valor usado para las futuras entradas. Las antiguas usaran el valor anterior.
- Tipo 3 (SCD): Toda la información histórica se guarda en el data warehouse. En este caso se crean nuevas columnas con los valores antiguos y los actuales son remplazados con los nuevos.
Es conveniente comentar que algunas dimensiones pueden crecer desmesuradamente. Una buena práctica es romper la dimensión en dos tablas: una que contenga los valores estáticos o otra que contenga los valores volátiles.
Resulta tremendamente interesante esto que dices de los cambios históricos no tenia ni idea. saludos
La verdad es que resulta básico dado que resuelve muchas de las problemáticas estándar que uno se puede encontrar al diseñar un data warehouse.
Un saludo
Hola Josep,
Soy estudiante de ingeniería informatica en la UPC, y actualmente estoy realizando mi proyecto final de carrera! Éste consiste en el Diseño e implementación de un módulo de reporting y cuadro de mando para una herramienta informática de medición, gestión y control de Riesgo Operacional por metodologías cualitativas. El motor OLAP escogido para realizar las consultas es MONDRIAN.
Precisamente, llevo unos días estancada con mis slowly changing dimensions!!!
He creado una dimensión EstructuraOrganizativa que contiene un conjunto de objetos organizados en una estructura de árbol, y quiero usar una Closure para manipularlos. No obstante, la topología del árbol varia con el tiempo y, evidentemente, los nodos cambian de padres… En principio implementé el tipo2 pero por lo que he investigado, creo que mondrian no lo acepta ¿estoy en lo cierto? Por ello, estoy intentando trabajar con tipo3 sin éxito!
¿Cómo puedo mantener esta estructura dinámica? ¿Cómo debo realizar las consultas MDX para filtrar las estructuras organizativas en un periodo concreto? ¿y si quiero extraer toda la evolución de una medida a lo largo del tiempo?
Espero que me puedas ayudar porque no avanzo en mi proyecto y estoy muy preocupada.
Qualquier cosa te dejo mi mail: eli.rovi@gmail.com
Muchas gracias por tu ayuda
Elisenda Rovirosa.
Pingback: 13.3. ETL Talend Dimension Cliente.Tipos de Mapeo para lookup. Gestión de SCD (Dimensiones lentamente cambiantes). « El Rincon del BI
Pingback: 5. Fases en la implantación de un sistema DW. Metodologia para la construcción de un DW. « El Rincon del BI