Vous êtes sur la page 1sur 66

Modelamiento

Dimensional
Agenda
Qu es Datawarehouse?
Qu es Datamart?
Datawarehouse & Datamart
Fases en el Modelamiento Dimensional
Dimensiones y Medidas
Star Schema
Llaves Artificiales
Modelo Analtico Dimensional OLAP
Metodologa Datawarehousing
Qu es Datawarehouse ?
Las Bases de Datos son creadas especficamente para
dar soporte a las decisiones.
La informacin es extrada desde los sistemas bases y/o
externo, transformada e integrada.
Un DWH contiene informacin basada en el tiempo.
Qu es Datawarehouse ?
La estructura del DWH es simplificada en trminos
comunes del negocio, hacindola ms fcil de usar y
entender.
Los datos son analizados bsicamente para detectar
patrones y tendencias.
Qu es Datamart?
Un Datamart es una base de datos que consolida
informacin relevante de un departamento de la
empresa o una determinada lnea de negocio para la
toma de decisiones.
El mbito de la informacin de un Datamart est
orientado a satisfacer las necesidades de unidades
de negocio especficas de la organizacin.
Data Warehouses & DataMart
Propiedades
Areas
Alcance
Fuente de Datos
Tamao (tpico)
Implementacin
Data
Warehouse
Empresarial
Mltiples
Muchos
100 GB to > 1 TB
Meses a Aos
Data Mart
Departamental
nicas
Pocos
< 100 GB
Meses
DataWareHouse Data Mart
Modelando un
Datawarehouse
I. Definir el Modelo de Negocios (Modelo Conceptual)
II. Crear el Modelo Dimensional (Modelo Lgico)
III. Crear el Modelo Fsico
Caso: Tarjetas de Crdito
El rea de tarjetas de crdito de un banco desea
implementar un datamart. Se desea visualizar la
informacin de crditos concedidos y pagos hasta llegar a
cada tarjeta.
Las tarjetas pueden ser de dos tipos: VISA y
MASTERCARD. Tambin se desea visualizar los crditos
y pagos por cada vendedor y cada cliente.
Cada cliente pertenece a un distrito, cada distrito a una
provincia y cada provincia a un departamento.
Cada vendedor pertenece a una agencia, y cada agencia
pertenece a un distrito, cada distrito a una provincia y cada
provincia a un departamento.
Las mtricas deben visualizarse como totalizados anuales,
semestrales, trimestrales y mensuales.
Tablas de Dimensiones
Contienen entidades del negocio.
Utiliza terminologa del negocio.
Poseen datos descriptivos.
Pueden contener subniveles.
Ejemplo de Dimensiones
Cliente.
Almacn.
Producto.
Servicio.
Empleado.
Partes.
Contrato.
Vendedor.
Cuenta.
Estatus.
Ubicacin.
Tiempo.
Tabla de Hechos
Contiene informacion a medir relacionadas a los
procesos o eventos que son analizados por las
dimensiones contenidas en las tablas de dimensiones.
Cada Hecho es un Evento
La informacin que contiene es un evento ocurrido.
Permite definir la relacin entre 2 o ms dimensiones.
Son usualmente ms grandes que las tablas de
Dimensiones.
Ejemplo de Tabla de Hechos
Ventas.
Ordenes.
Envos.
Cuentas.
Reservaciones
Rentas.
Nivel de Inventario.
Balance Contable.
Chequeo de Txs.
Txs ATM.
Suscripciones
Atenciones.
Caso: Tarjetas de Crdito
El rea de tarjetas de crdito de un banco desea implementar
un datamart. Se desea visualizar la informacin de crditos
concedidos y pagos hasta llegar a cada tarjeta.
Las tarjetas pueden ser de dos tipos: VISA y
MASTERCARD. Tambin se desea visualizar los crditos y
pagos por cada vendedor y cada cliente.
Cada cliente pertenece a un distrito, cada distrito a una
provincia y cada provincia a un departamento.
Cada vendedor pertenece a una agencia, y cada agencia
pertenece a un distrito, cada distrito a una provincia y cada
provincia a un departamento.
Las mtricas deben visualizarse como totalizados anuales,
semestrales, trimestrales y mensuales.
El rea de tarjetas de crdito de un banco desea implementar
un datamart. Se desea visualizar la informacin de crditos
concedidos y pagos hasta llegar a cada tarjeta.
Las tarjetas pueden ser de dos tipos: VISA y
MASTERCARD. Tambin se desea visualizar los crditos y
pagos por cada vendedor y cada cliente.
Cada cliente pertenece a un distrito, cada distrito a una
provincia y cada provincia a un departamento.
Cada vendedor pertenece a una agencia, y cada agencia
pertenece a un distrito, cada distrito a una provincia y cada
provincia a un departamento.
Las mtricas deben visualizarse como totalizados anuales,
semestrales, trimestrales y mensuales.
Caso: Tarjetas de Crdito
El rea de tarjetas de crdito de un banco desea implementar
un datamart. Se desea visualizar la informacin de crditos
concedidos y pagos hasta llegar a cada tarjeta.
Las tarjetas pueden ser de dos tipos: VISA y
MASTERCARD. Tambin se desea visualizar los crditos y
pagos por cada vendedor y cada cliente.
Cada cliente pertenece a un distrito, cada distrito a una
provincia y cada provincia a un departamento.
Cada vendedor pertenece a una agencia, y cada agencia
pertenece a un distrito, cada distrito a una provincia y cada
provincia a un departamento.
Las mtricas deben visualizarse como totalizados anuales,
semestrales, trimestrales y mensuales.
Caso: Tarjetas de Crdito
El rea de tarjetas de crdito de un banco desea implementar
un datamart. Se desea visualizar la informacin de crditos
concedidos y pagos hasta llegar a cada tarjeta.
Las tarjetas pueden ser de dos tipos: VISA y
MASTERCARD. Tambin se desea visualizar los crditos y
pagos por cada vendedor y cada cliente.
Cada cliente pertenece a un distrito, cada distrito a una
provincia y cada provincia a un departamento.
Cada vendedor pertenece a una agencia, y cada agencia
pertenece a un distrito, cada distrito a una provincia y cada
provincia a un departamento.
Las mtricas deben visualizarse como totalizados anuales,
semestrales, trimestrales y mensuales.
Caso: Tarjetas de Crdito
El rea de tarjetas de crdito de un banco desea implementar
un datamart. Se desea visualizar la informacin de crditos
concedidos y pagos hasta llegar a cada tarjeta.
Las tarjetas pueden ser de dos tipos: VISA y
MASTERCARD. Tambin se desea visualizar los crditos y
pagos por cada vendedor y cada cliente.
Cada cliente pertenece a un distrito, cada distrito a una
provincia y cada provincia a un departamento.
Cada vendedor pertenece a una agencia, y cada agencia
pertenece a un distrito, cada distrito a una provincia y cada
provincia a un departamento.
Las mtricas deben visualizarse como totalizados anuales,
semestrales, trimestrales y mensuales.
Caso: Tarjetas de Crdito
El rea de tarjetas de crdito de un banco desea implementar
un datamart. Se desea visualizar la informacin de crditos
concedidos y pagos hasta llegar a cada tarjeta.
Las tarjetas pueden ser de dos tipos: VISA y
MASTERCARD. Tambin se desea visualizar los crditos y
pagos por cada vendedor y cada cliente.
Cada cliente pertenece a un distrito, cada distrito a una
provincia y cada provincia a un departamento.
Cada vendedor pertenece a una agencia, y cada agencia
pertenece a un distrito, cada distrito a una provincia y cada
provincia a un departamento.
Las mtricas deben visualizarse como totalizados anuales,
semestrales, trimestrales y mensuales.
Caso: Tarjetas de Crdito
El rea de tarjetas de crdito de un banco desea implementar
un datamart. Se desea visualizar la informacin de crditos
concedidos y pagos hasta llegar a cada tarjeta.
Las tarjetas pueden ser de dos tipos: VISA y
MASTERCARD. Tambin se desea visualizar los crditos y
pagos por cada vendedor y cada cliente.
Cada cliente pertenece a un distrito, cada distrito a una
provincia y cada provincia a un departamento.
Cada vendedor pertenece a una agencia, y cada agencia
pertenece a un distrito, cada distrito a una provincia y cada
provincia a un departamento.
Las mtricas deben visualizarse como totalizados anuales,
semestrales, trimestrales y mensuales.
Caso: Tarjetas de Crdito
El rea de tarjetas de crdito de un banco desea implementar
un datamart. Se desea visualizar la informacin de crditos
concedidos y pagos hasta llegar a cada tarjeta.
Las tarjetas pueden ser de dos tipos: VISA y
MASTERCARD. Tambin se desea visualizar los crditos y
pagos por cada vendedor y cada cliente.
Cada cliente pertenece a un distrito, cada distrito a una
provincia y cada provincia a un departamento.
Cada vendedor pertenece a una agencia, y cada agencia
pertenece a un distrito, cada distrito a una provincia y cada
provincia a un departamento.
Las mtricas deben visualizarse como totalizados anuales,
semestrales, trimestrales y mensuales.
Caso: Tarjetas de Crdito
Dimensiones y Medidas
Dimensiones
Cliente
Vendedor
Tipo Tarjeta
Tiempo
Medidas
Crditos concedidos
Pagos
Fase II: Crear el Modelo Dimensional (Modelo
Lgico)
Analizar los sistemas fuentes
Identificar las Tablas de hechos
Trasladar las medidas del negocio en las tablas de
Hechos
Identificar las medidas base y las derivadas
Identificar las tablas de dimensin
Relacionar las Tablas de Hechos y las tablas
dimensionales
Diseo Dimensional
Centrado en el anlisis de procesos de negocios y
eventos.
Implementa 2 modelos legibles para el usuario de
negocio e identificable por los manejadores de base de
datos.
Estos modelos son desnormalizados:
Modelo Star
Modelo Snowflake
Opciones de Diseo de la Bodega de Datos.
Normalizado
Combination
Star (Estrella)
Snowflake (Copo de
Nieve)
Alto desempeo.
Desnormalizacin.
Mayor almacenamiento.
Reduce redundancia
Normalizacin de dimensiones
Mayor complejidad de
navegacin
Apropiado para ambientes
complejos
Bajo desempeo
Esquemas sencillos.
Qu es un Modelo Estrella?
Es un Modelo desnormalizado de base de datos
relacional para representar datos de forma
multidimensional.
Es la forma ms simple de un esquema de Data
Warehouse, la misma que contiene una o ms
dimensiones y tablas de hechos.
El Centro de la estrella consiste en una tabla de hechos
grande que est conectada a las tablas dimensionales
en base a las relaciones.
Las ventajas del Modelo Estrella son:
Fcil entendimiento de los datos
Alto rendimiento (Performance)
Modelo Estrella
CLIENTE_DIM
Cliente_Key
IdCliente
Departamento
Provincia
Distrito
NombreCliente
TIEMPO_DIM
Tiempo_Key
Ao
Semestre
Trimestre
Mes
TIPOTARJETA_DIM
TipoTarjeta_Key
IdTipoTarjeta
TipoTarjeta
NumeroTarjeta
VENDEDOR_DIM
Vendedor_Key
IdVendedor
Departamento
Provincia
Distrito
Agencia
NombreVendedor
TARJETAS_FACT
Tiempo_Key
Cliente_Key
Vendedor_Key
TipoTarjeta_Key
CreditosConcedidos
Pagos
RESUMENTARJETAS_FACT
Tiempo_Key
Cliente_Key
TipoTarjeta_Key
CreditosConcedidos
Pagos
Consideraciones del Modelo Estrella
Organizacin del modelo de datos
Debe lucir como el negocio
Reconocido por los tipos del negocio
Aprobado por la gente del negocio
Tres reglas de diseo para el modelamiento de
Star Schema:
Simple
Simple
Simple
Tipos de Llaves en la BD Dimensional
Desde el punto de vista Relacional
Llave primaria (PKs)
Llave fornea (FKs)
Llave compuesta
Desde el Punto de Vista MultiDimensional
Llave artificial (Ak, Sk)
Uso de Llaves artificiales
Ventaja de incluir llaves artificiales:
Control sobre la data
Reduce el tamao de la tabla de hecho
Evitar usar las siguientes llaves como llave
del Warehouse:
Llaves naturales de produccin (OLTP)
Llaves inteligentes, con significado
embebido (smart key)
Product Key: 38972
Ejemplo de Llaves Artificiales
Prod_AK Producto_ID Producto_Nombre Marca_Cod
1 126-7878 Cereal NES
2 125-9889 Cafe NES
3 125-9889 Cafe ALP
4 766-1288 Bebida Gaseosa KR
Granularidad
Todas las medidas deben estar al mismo nivel de detalle.
Detalle de Ordenes
Id de Fecha
Id de Cliente
Id de Producto
Unidades
Monto
Contenido de las tablas de Hechos
Adicionalmente puede tener atributos.
Product Key
Order Date Key
Due Date Key
Ship Date Key
Customer Key
Territory Key
Sales Amount
Tax Amount
Sales Order
Number
Freight
Product Sales Fact
Llaves Dimensionales Llave mltiples
Medidas
Ejemplo
Tabla de Hechos
Product
Key
Order
Date Key
Due Date
Key
Ship
Date Key
Custome
r Key
Territory
Key
Sales
Amount
Tax
Amount
Sales
Order
Number
Freight
1 2 3 4 12 1 100 21.57 SO43701 79.20
1 2 2 2 11 2 150 30.20 SO43702 75.30
2 2 2 3 11 2 200 14.56 SO43700 70.20
Ejemplo
Dimensin Tiempo
TimeKey FullDate DayName Month Quarter Semester Year
1 2001-07-01 Sunday July 3 2 2001
2 2001-07-02 Monday July 3 2 2001
3 2001-07-03 Tuesday July 3 2 2001
4 2001-07-04 Wednesday July 3 2 2001
Ejemplo
Product Key Product Code Product Name Product Subcategory Color Status
218 HL-U509 Sport-100
Helmet, Black
31 Black Current
219 SO-B909-M Mountain Bike
Socks, M
23 White NULL
220 SO-B909-L Mountain Bike
Socks, L
23 White NULL
221 HL-U509-B Sport-100
Helmet, Blue
31 Blue NULL
Dimensin Producto
Dimensin Empleado
Employee
Key
Parent
Employee Key
Sales
Territory Key
First Name Last Name Marital Status Email
Address
3 14 11 Roberto Brown 2 rbrown@adw.
com
4 3 11 Rob Ford 2 rford@adw.co
m
5 3 11 Kevin Walters 2 kwalters@adw
.com
6 267 11 Mary Higa 2 mhiga@adw.c
om
Territory Key Territory Code Sales Territory
Region
Sales Territory
Country
Sales Territory
Group
1 1 NorthWest United States North America
2 2 NorthEast United States North America
3 3 Central United States North America
Dimensin Territorio
Dimensin Cliente
. Departamento
.. Provincia
Distrito
. Nombre cliente
Dimensin Vendedor
. Departamento
.. Provincia
Distrito
. Agencia
.. Nombre Vendedor
Dimensin Tipo Tarjeta
. Tipo Tarjeta
.. Nro. Tarjeta
Dimensin Tiempo
. Ao
.. Semestre
Trimestre
. Mes
Modelo de Jerarquia
De modelamiento relacional
Hacia modelamiento
multidimensional
ORDER
order_num (PK)
customer_ID(FK)
store_ID (FK)
clerk_ID (FK)
date
STORE
store_ID (PK)
store_name
address
district
floor_type
CLERK
clerk_id (PK)
clerk_name
clerk_grade
CUSTOMER
customer_ID (PK)
customer_name
purchase_profile
credit_profile
address
STORE
store_key (PK)
store_ID
store_name
Address
CLERK
clerk_key (PK)
clerk_id
clerk_name
clerk_grade
CUSTOMER
customer_key (PK)
Customer_ID
customer_name
purchase_profile
credit_profile
address
ORDER
order_num (PK)
customer_ID(FK)
store_ID (FK)
clerk_ID (FK)
date
PRODUCT
SKU (PK)
description
brand
category
PROMOTION
promotion_NUM (PK)
promotion_name
price_type
ad_type
ORDER-LINE
order_num (PK) (FK)
SKU (PK) (FK)
promotion_key (FK)
dollars_sold
units_sold
dollars_cost
PRODUCT
product_key (PK)
SKU
description
brand
category
PROMOTION
promotion_key (PK)
promotion_name
price_type
ad_type
TIME
time_key (PK)
SQL_date
day_of_week
month
TIME
time_key (PK)
SQL_date
day_of_week
month
STORE
store_key (PK)
store_ID
store_name
address
district
floor_type
CLERK
clerk_key (PK)
clerk_id
clerk_name
clerk_grade
PRODUCT
product_key (PK)
SKU
description
brand
category
CUSTOMER
customer_key (PK)
customer_name
purchase_profile
credit_profile
address
PROMOTION
promotion_key (PK)
promotion_name
price_type
ad_type
FACT
time_key (FK)
store_key (FK)
clerk_key (FK)
product_key (FK)
customer_key (FK)
promotion_key (FK)
dollars_sold
units_sold
dollars_cost
ORDER
STORE
CLERK
PRODUCT
CUSTOMER
PROMOTION
ORDER-LINE
TIME_DIM
STORE_DIM
CLERK_DIM
PRODUCT_DIM
CUSTOMER_DIM
PROMOTION_DIM
FACT
Drill Up / Down
Dimensin Tiempo
Cambiar el Nivel de
Detalle de la Consulta
Ao
Trimestre
Mes
Da
Consideraciones para el diseo de la
tabla dimensional de Tiempo
Se debe usar una tabla dimensional o un
server time dimension?
Que calendarios y jerarquias se requiere?
Que granularidad debo usar?
May
12
Dimensin
Tiempo
Day
Day of Week
Type of Day
Fiscal Quarter
Fiscal Year
Fiscal
Month
FiscalWeek
CalendarYear
Calendar
Quarter
Calendar
Month
Calendar
Week
Holiday
Qu son dimensiones Changing Dimension?
Type 1 slowly changing dimension
Type 2 slowly changing dimension
Type 3 slowly changing dimension
*
Tipo 1:
Esta Metodologa sobrescribe los datos antiguos con los nuevos datos y, por
tanto, no realiza un seguimiento de los datos histricos en absoluto.
Ejemplo sera el de una tabla de base de datos que mantiene la informacin
del proveedor.
Supplier_key Supplier_Name Supplier_State
001 Phlogistical Supply
Company
CA
Supplier_key Supplier_Name Supplier_State
001 Phlogistical Supply
Company
IL
El dato antiguo
es reemplazado
por el actual.
Tipo 2:
Un nuevo registro se inserta cada vez que se introduzca una modificacin.
Supplier_key Supplier_Code Supplier_Name Supplier_State version
001 ABC Phlogistical
Supply
Company
CA 0
002 ABC Phlogistical
Supply
Company
IL 1
Supplier_key Supplier_Code Supplier_Name Supplier_State version
001 ABC Phlogistical
Supply
Company
CA 0
Se inserta el
nuevo registro
en versiones
Tipo 2:
Un nuevo registro se inserta cada vez que se introduzca una modificacin.
Supplier_key Supplier_Code Supplier_Name Supplier_State Start_Date End_Date
001 ABC Phlogistical
Supply
Company
CA 01-Jan-
2000
NULL
Supplier_key Supplier_Code Supplier_Name Supplier_State Start_Date End_Date
001 ABC Phlogistical
Supply
Company
CA 01-Jan-
2000
21-Dec-2004
002 ABC Phlogistical
Supply
Company
IL 22-Dec-
2004
NULL
Se inserta el
nuevo registro
en Fecha de
inicio y fecha
Final
Tipo 3:
No requiere registros adicionales
No requiere modificaciones de llaves.
No recomendado cuando los cambios son frecuentes
Supplier_key Supplier_Name Original_Supplier_State
001 Phlogistical Supply
Company
CA
Supplier_key Supplier_Name Original_Supplier_St
ate
Effective_Date Current_Supplier_Stat
e
001 Phlogistical Supply
Company
CA 22-Dec-2004 IL
Se inserta los
datos
modificados en
columnas
adicionales
Modelo Analtico
Multidimensional
Elementos de un modelo
multidimensional - OLAP
Mtricas
Dimensiones
Jerarquas
Atributos
Anlisis Multidimensional
Dimensin, Miembro, Mtricas
Ene Feb Mar Abr
Alimentos
Bazar
Bebidas
Directa
Mayoristas
Minoristas
Otro
Canal de
ventas
Mtricas
Cantidad de clientes 200
Ventas 3,000,000
Utilidad 500,000
Crecimiento 15%
Jerarquas Caminos de agregacin
Producto Canal Venta Tiempo
Categora CanalVenta Ao
SubCategora SubCanalVenta Trimestre
Producto Mes Semana
Da
Mtricas
Lo que queremos analizar
Indicadores de gestin
Valores numricos del anlisis
Ejemplos:
Ventas en Monto
Ventas en unidades
Cantidad de Clientes
Utilidad
Margen de Contribucin
Costo
Stock
Dimensiones
Son las perspectivas de anlisis
Analizamos las ventas
Por Tienda
Por Vendedor
Por Producto
Por Semana
Por Departamento
Por Marca
Por Mes
Por Territorio de Ventas
Por Pas
Tipos de Dimensiones
Regular
Role-playing
Fact
Many-many
Referenced
CLIENTE_DIM
Cliente_Key
IdCliente
Departamento
Provincia
Distrito
NombreCliente
TIEMPO_DIM
Tiempo_Key
Ao
Semestre
Trimestre
Mes
TARJETAS_FACT
Tiempo_Key
Cliente_Key
Vendedor_Key
TipoTarjeta_Key
CreditosConcedidos
Pagos
Regular Dimension
Un foreign key existe entre la tabla de Hecho y la tabla
dimensional
TIEMPO_DIM
Tiempo_Key
Ao
Semestre
Trimestre
Mes
TARJETAS_FACT
Tiempo_Key
Tiempo_Fiscal_Key
Cliente_Key
Vendedor_Key
TipoTarjeta_Key
CreditosConcedidos
Pagos
Role-playing Dimension
Una dimension puede ser usada multiples veces sobre el
mismo cubo/measure group.
Se ve dos dimensiones distintas :
Tiempo
TiempoFiscal
TARJETAS_FACT
Tiempo_Key
Tiempo_Fiscal_Key
Cliente_Key
Vendedor_Key
TipoTarjeta_Key
DetalleTarjeta
CreditosConcedidos
Pagos
Fact Dimension
Una dimension basada sobre un atributo de una tabla de
hechos.
Tambien es conocida como dimensin degenerada
Many to many
Utiliza un grupo de medidas intermedia
INTERNETSALESREASON_FACT
SalesOrdenNumber_Key
SalesOrdenLineNumber_Key
SalesReason_Key
SALESREASON_DIM
SalesReason_Key
SalesReasonAlternate_Key
INTERNETSALES_FACT
SalesOrdenNumber_Key
SalesOrdenLineNumber_Key
Product_Key
Dimensin Referenciada
Es una dimensin que no esta directamente relacionada
con la tabla de hechos
GEOGRAPHY_DIM
Geography_Key
Departamento
Provincia
Distrito
RESELLER_DIM
Reseller_Key
Geography_Key
Telefono
TipoNegocio
NumeroEmpleados

RESELLERSALES_FACT
SalesOrdenNumber_Key
SalesOrdenLineNumber_Key
Product_Key
Reseller_Key
Employee_Key
..
Jerarquas
Son los niveles de agrupacin dentro de una
dimensin.
Tambin se conocen como los caminos de drill-
down o roll-up
Una dimensin puede tener ms de una
jerarqua.
Ejemplo: Dimensin Tiempo
Jerarquas:
Ao-Trimestre-Mes-Da
Ao-Semana-Da
Atributos
Son caractersticas de los miembros de las dimensiones
Pueden ser usados para clasificar, filtrar, o buscar
informacin dentro de modelo
Ejemplo:
Dimensin = Producto, Miembro = Producto
Atributos: Unidad de medida, Empaque, Color, Categora, Sub
Categora, Marca
Algunos atributos se pueden convertir en miembros de
una dimensin en una de sus jerarquas.
Todos los miembros de una dimensin son atributos de
la misma, no todos los atributos de una dimensin
pertenecen a una jerarqua.

Vous aimerez peut-être aussi