Modelado Dimensional
Modelado Dimensional
Agenda
Alquiler
Devoluciones
Agotamiento
Resultados de oficinas
Revisión de los procesos de negocio:
Medidas y Dimensiones de Negocio
Dimensiones
de Negocio Medidas
Cantidad de Alquileres
Tienda
Importe de Alquiler
Producto
Costo de Alquiler
Fecha
Ganancias
Cliente
Matriz de Procesos de Negocio
Inca Video Rent: Matriz del Proceso de Negocio
Alquiler Date X
Retorno Date X
Alquiler Time X
Retorno Time X
Tienda X X X
Producto X
X X X
Cliente X X
Seleccionar el Proceso de Negocio
Cual me retornará el mejor ROI?
Cual me dará el mayor valor estratégico?
Que tipo de decisiones de negocio podré hacer
con la información?
Cual es el más simple de implementar?
Cuanto tiempo puede tomar implementar el
proceso evaluado?
Creando el Modelo de Negocio
Producto
Tipo categoría Estado
Tienda Pelicula Drama Nueva
Regla: Una tienda es en solo Juego Comedia Reciente
un distrito Acción Vieja
Familiar
Regla: Un registro pertenece a .
una única región. .
.
Regla: Un video solo puede pertenecer
a una categoría de producto.
Regla: Una categoría de producto
pertenece a solo un tipo de producto
Modelo Lógico de datos
Un modelo de datos que representa la
estructura inherente de los datos. Es
independiente de las aplicaciones
individuales de los datos y también del
software o hardware empleado para
representar y usar la data.
El modelo lógico de datos es enllavado y
atribuido.
Crear el Modelo Dimensional
Atomic Fact
Ventajas de Usar un Modelo
Dimensional
• Soporta análisis multidimensional.
• Crea un diseño de Base de Datos que mejora la
performance
• Modelos de datos sencillos y claros para el usuario.
• Paralelo entre los modelos y la manera como el usuario
piensa y como usa la data.
• Provee un modelo extendido que soporta cambios en los
requerimientos del negocio. Da flexibilidad a las
consultas.
• Soportado por un gran número de herramientas de
acceso a Base de Datos, que requieren de un modelo
Estrella.
Pasos para crear un modelo
dimensional
1. Identificar medidas
Que medidas son necesarias para el análisis
2. Identificar dimensiones y jerarquías
Dimensiones, jerarquías, elemento,
asociaciones
3. Determinar granularidad de la fact table
4. Verificar el modelo con el usuario refinarlo
El usuario puede entender el modelo y lo
aprueba
Hechos - Facts
• Una Fact Table puede ser definida como:
La tabla central en un esquema del tipo join
start. Esta contiene las medidas del negocio
que aparecen en los reportes o son
manipulables. Los hechos son diseñados
como atributos en la entidad lógica y como
columnas en la estructura física.
El Fact son definidos como eventos que son
descritos por medidas y una llave compuesta
Mas acerca de fact tables...
• Tienden a ser entidades flacas con pocos atributos
• Tienden a reflejar el número de transacciones
• Soportan los procesos del negocio
• A menudo son tablas muy grandes que tienden a
crecer rápidamente.
• Puede contener datos básicos, derivados o
sumarizados.
• Se relacionan con las dimensiones a través de sus
llaves foráneas
• Ejemplos:
– Embarques de paquetes, Llamadas de larga distancia,
Compras, Ventas, diarias, semanales, mensuales
Identificar medidas Base y
Derivadas
• Identificar los facts candidatos
• Remover los facts duplicados
• Describir y documentar las fórmulas de cálculo para las
medidas derivadas.
• Realizar un cruce referencial con las facts, para ver si
contienen las medidas requeridas para el cálculo.
• Obtener la aprobación final para los datos derivados.
Datos Básicos y Derivados
Tabla de planillas
Emp_Id Mes_Id Salario Com IngB
101 05 1,000 1,000
102 05 1,500 100 1,600
103 05 1,000 200 1,200
104 05 1,500 1,000 2,500
Datos Datos
Básicos Derivados
Tipos de Medidas en la Tabla
Fact
Aditivas: Semiaditivas: No-aditivas:
Agregadas a Agregadas sobre No pueden ser
través de todas las algunas dimensiones agregadas sobre
dimensiones ninguna dimensión
Las tablas de dimensión...
• Una tabla de dimensión puede ser
definida como:
– Son las tablas alrededor de la fact table en el
start schema, que contiene los atributos que
describen las dimensiones de la fact tables.
Esas tablas son similares a las referencias o
lookup tables.
Mas acerca de las
Dimensiones
• Se caracterizan por tener una llave simple, Los atributos
tienden a ser textuales y a menudo una fuente de constrains
• Dimensiones son muchas veces relacionados en jerarquías.
• Son definidas para ser entendidas por los usuarios
• Son anchas con muchos atributos descriptivos
• Tienen mucho menos registros que las fact table
• Ellas tipicamente representan mas del 90% de los datos
atribuidos en el sistema
• Atributos comunmente generan constrains o clausulas de
agregaciones
• Son altamente indexados
• Ejemplo :
– Geografía, Producto, tienda, cliente, tiempo, etc.
Tipos de Llaves en la Base de
Datos
• Llave primaria (PKs)
• Llave foránea (FKs)
• Llave compuesta
• Llave artificial
Uso de Llaves artificiales
10/10/2021 34
Agregando Artificial PKs a las
Tablas de Dimensión
Dia Key (PK)
Tienda ID Region
Tienda Desc
Localización
Tamaño
Distrito ID
Distrito Desc Distrito
Region ID
Region Desc
Tienda
10/10/2021 36
Múltiples Jerarquías
Dimensión Tienda
Tienda ID
Tienda Desc Jerarquía de la Jerarquía de la
Localización organización Geografía
Tamaño
Distrito ID Distrito Region Estado
Desc
Region ID
Region Desc
Ciudad ID Distrito País
Ciudad Desc
Pais ID
Pais Desc
Estado ID Tienda Ciudad
Estado Desc
10/10/2021 37
Múltiple Jerarquía del tiempo
10/10/2021 38
Drilling Up y Drilling Down
Jerarquía de Tienda
Tienda
Region 1 Region 2
10/10/2021 39
El grano del data
warehouse
• Determina el mas bajo nivel de detalle de la fact
table
• Determina la dimensionalidad del DW
Comenzar con grano fino…muy explotable
Granos grandes ocultan mucha información que
no puede ser servida al DW
Documentar la granularidad de
la Dimensión
• Es una importante consideración de diseño
• Determinar el nivel de detalle
• La granularidad es determinada por las reglas de
negocio
10/10/2021 41
Definir la granularidad del
tiempo
Jerarquía Tiempo Fiscal
Año Fiscal
Trimestre Fiscal
Mes Fiscal
Asistencia
FK Estudiante No.
FK Profesor No.
Profesor
Estudiante
10/10/2021 51
Dimensiones Agrupadas
Dimensión Agrupadas
Cliente_Key (FK)
AgruCli_Key (FK) Dimensión Cliente
Customer_Key (PK)
AgruCli_Key (FK)
10/10/2021 52
Tipos especiales de
dimensiones
• Mini-dimensions
• Dirty dimensions
• Degenerate dimensions
Mini-Dimension Ejemplos
Cliente
Fact Table
Cod de cliente
Nombre del
Cod de Cliente
cliente
Cod Demogr
Cod Demogr
...
Demografico
Cod Demogr
Nivel de Ingreso
Estado Civil
Slowly Changing Dimension
Customer
MOVED!
101
Joe Smith Av.Arequipa 110
Av. Javier Prado
1223
IL
¿Qué es una tabla Sumaria?
Ventas
Region
Sumaria
Estado Ventas
Ciudad
Tiempo Producto
10/10/2021 57
Tablas Sumarias o
Agregadas
Año
Mes
Día
Tiempos de respuesta
Scan
Tienda
Ventas 100 tiendas
Tiempo fact table
1095
dias 109,500,000 Producto
filas 10,000 productos
Total ventas por año
Con sumaria
Tienda
Ventas
100 tiendas
tabla
Año sumaria
3 años
3,000,000
Producto
filas
10,000 productos
10/10/2021 60
Jerarquías de los atributos
10/10/2021 61
Sumarias de N-vías
Una vía
Year T3 Cat. S3 Region Total sales
Month T2 P2 S2 District by year,
by item,
Day T1 P1 S1 Store by store
Item
Dos vías Total sales
T3 S3
by day,
T2 P2 S2 by category,
by region
T1 P1 S1
Tres vías
T3 S3 Total sales
by month,
T2 P2 S2 by category,
by region
T1 P1 S1
10/10/2021 62
Dos alternativas de diseño
Fundamentalmente dos aproximaciones para las
tablas sumarias:
• Multiple sumarias fact tables (constelacion)
• Una gran fact table con detalle de fact data y
data sumarizada almacenada en la misma tabla
10/10/2021 63
Constelacion
Tablas
Dimensionales
Sumarias
Sumarias
fact
Atomic fact
10/10/2021 64
Sumaria de una vía: Distrito
Distrito (Tienda)
sumaria
P C Tabla Dimensional
Td T
10/10/2021 65
Sumaria de dos vías: Categoria
y Distrito
Categoria (producto)
Sumaria fact table
sumaria
(por categoria y distrito)
dimension table
c d
Distrito (tienda)
P C
sumaria
dimension table
S T
De la ventana de carga
Escogiendo las sumarias
Seis dimensiones
Con diferentes jerarquías
10/10/2021 68
Navegación a través de las
sumarias
• Se requiere de un conocimiento para un uso efectivo de
las tablas sumarias.
• Métodos para la navegación:
– Engine del Data Base
– A través del engine de las herramientas de explotación
– 4GL desarrollados con lógica compleja
select total_sales...
Which
summaries?
Guía para la agregación