Está en la página 1de 103

Data warehouse y OLAP

Marta Zorrilla
Universidad de Cantabria

2007/08

Tabla de contenido

Ciclo de vida de un sistema BI/DW


Diseo multidimensional
Modelo dimensional bsico
Data warehouse vs data marts
Modelo dimensional extendido

Procesos ETL
Cubos OLAP

Marta Zorrilla - Universidad de Cantabria

2007/08

Ciclo de vida BI/DW

2007/08

Componentes de un sistema BI/DW

Herramientas de anlisis
y consulta

Fuentes de datos
internas

Datos detalle

Contabilidad

..
.

Solucin
Web

BD Relacional (OLTP)

Compras

ETL
ETL

Solucin
aplicativa

Staging
Area

RR/HH

ROLAP / HOLAP
agregados
Data mining

Web log,..
Hipercubos
dedatos
Hipercubos
dedatos

MOLAP

Hipercubos
dedatos

EIS

Fuentes de datos
externas
INE, INEM,

Marta Zorrilla - Universidad de Cantabria

Hipercubos
de datos
Hipercubos
de datos

2007/08

Qu es una solucin BI/DW?

Recoger los datos de la organizacin y


transformarlos en informacin til.

Estudiar la naturaleza del negocio

Indicadores, medidas, dimensiones (perspectivas de anlisis)

Disear la estructura de datos dimensional


Recuperar los datos de los sistemas operacionales,
transformarlos y cargarlos en la estructura de datos
diseada
Usar herramientas para el anlisis de los datos y la
toma de decisiones

Marta Zorrilla - Universidad de Cantabria

2007/08

Ciclo de vida de un BI/DW (Kimball)

Planificacin
Planificacin
proyecto
proyecto

Definicin
Definicin
de
de
Requisitos
Requisitos
del
del
negocio
negocio

Diseo
Diseo
Arquitectura
Arquitectura

Seleccin
Seleccin
Productos
Productos ee
Instalacin
Instalacin

Modelo
Modelo
dimensional
dimensional

Diseo
Diseo
fsico
fsico

Diseo
Diseo
procesos
procesos ETL
ETL

Integracin
Mantenimiento
Integracin yy Mantenimiento
yy crecimiento
despliegue
crecimiento
despliegue

Desarrollo
Desarrollo
Aplicacin
Aplicacin
Usuario
Usuario

Especificacin
Especificacin
Aplicacin
Aplicacin
Usuario
Usuario

Gestin
Gestin del
del proyecto
proyecto
Marta Zorrilla - Universidad de Cantabria

2007/08

Planificacin del proyecto

Planificacin
Planificacin
proyecto
proyecto

Definicin
Definicin
de
de
Requisitos
Requisitos
del
del
negocio
negocio

Diseo
Diseo
Arquitectura
Arquitectura

Seleccin
Seleccin
Productos
Productos ee
Instalacin
Instalacin

Modelo
Modelo
dimensional
dimensional

Diseo
Diseo
fsico
fsico

Especificacin
Especificacin
Aplicacin
Aplicacin
Usuario
Usuario

Diseo
Diseo
procesos
procesos ETL
ETL

Desarrollo
Desarrollo

Mantenimiento
Mantenimiento
yy crecimiento
crecimiento

Desarrollo
Desarrollo
Aplicacin
Aplicacin
Usuario
Usuario

Gestin
Gestin del
del proyecto
proyecto

Acometer la realizacin de un proyecto global ha conducido al


fracaso. Mejor ir por reas de negocio.

A tener en cuenta:
Hacer partcipes a usuarios operacionales, tcnicos IT y analistas.

Seleccionar una aplicacin piloto con una alta probabilidad de xito

Es importante hacer labor de mentalizacin antes de comenzar,


creando expectativas realistas
Expertos y analistas de negocio aseguran la calidad del producto final
Usuarios aseguran la calidad de los datos
Tcnicos dan soporte al sistema
Estudiar la viabilidad
Estudiar el origen de los datos
Estudiar el hardware y software disponible
Planificar el entrenamiento de los usuarios

Construir prototipos rpida y frecuentemente


Reportar activamente y publicar los casos exitosos
Herramientas para visualizar los datos fciles de usar

Marta Zorrilla - Universidad de Cantabria

2007/08

Definicin de requisitos

Planificacin
Planificacin
proyecto
proyecto

Definicin
Definicin
de
de
Requisitos
Requisitos
del
del
negocio
negocio

Diseo
Diseo
Arquitectura
Arquitectura

Seleccin
Seleccin
Productos
Productos ee
Instalacin
Instalacin

Modelo
Modelo
dimensional
dimensional

Diseo
Diseo
fsico
fsico

Especificacin
Especificacin
Aplicacin
Aplicacin
Usuario
Usuario

Diseo
Diseo
procesos
procesos ETL
ETL

Desarrollo
Desarrollo

Mantenimiento
Mantenimiento
yy crecimiento
crecimiento

Desarrollo
Desarrollo
Aplicacin
Aplicacin
Usuario
Usuario

Gestin
Gestin del
del proyecto
proyecto

Determinar indicadores

Deben reflejar lo que se quiere medir y, por tanto, hay que


tener una definicin clara y concisa para su clculo.

Definir reglas de navegacin

Ventas por regin > pas > continente


Ventas por mes > trimestre > ao

Contemplar vistas particularizadas por usuarios/grupos

Fijar poltica de seguridad

Ley Proteccin de Datos


Roles/usuarios
Datos y procesos

Marta Zorrilla - Universidad de Cantabria

2007/08

Herramientas del mercado

Planificacin
Planificacin
proyecto
proyecto

Definicin
Definicin
de
de
Requisitos
Requisitos
del
del
negocio
negocio

Diseo
Diseo
Arquitectura
Arquitectura

Seleccin
Seleccin
Productos
Productos ee
Instalacin
Instalacin

Modelo
Modelo
dimensional
dimensional

Diseo
Diseo
fsico
fsico

Especificacin
Especificacin
Aplicacin
Aplicacin
Usuario
Usuario

Diseo
Diseo
procesos
procesos ETL
ETL

Desarrollo
Desarrollo

Mantenimiento
Mantenimiento
yy crecimiento
crecimiento

Desarrollo
Desarrollo
Aplicacin
Aplicacin
Usuario
Usuario

Gestin
Gestin del
del proyecto
proyecto

Fuentes de datos: sistemas operacionales


corporativos y departamentales, fuentes
externas, ficheros, etc.

Source: Gartner
(December 2005)

Magic Quadrant for BI Platforms 1H06

ETL: Ascential DataStage, Microsoft Data


Transformation Services, DB2 Warehouse,

SGBD Relacional:
SQL Server, Oracle, Informix, DB2,

OLAP: Analysis Services, Cognos, Business


Objects, Microstrategy, Excel, SAS, etc.

Data mining: SAS, SPSS/Clementine,


Analysis Services, Weka, etc.

Marta Zorrilla - Universidad de Cantabria

2007/08

Herramientas
Data Mining

USUARIO
Fuente de datos

Extraccin

Gestores de
consultas

Gestor de
bases de datos

Estrellas

Relacional

Directas
Directas
Consultas

Transformacin
Carga

Repositorio
Herramienta
ETL

Mu

Agregados
(hipercubos)

Agregados
(hipercubos)
Marta Zorrilla - Universidad de Cantabria

l
na
o
i
ens
m
i
ltid

ROLA
P

HOLAP

2007/08

OLAP
OLAP
AP
MOL

HOLAP

Agregados
(hipercubos)

Agregados
(hipercubos)
10

Evaluacin de herramientas

Existen varias herramientas que permiten implementar un Data Warehouse.


Todas con parecidas prestaciones, su diferencia est en el precio por nmero de
licencias y la plataforma de trabajo.

Su eleccin depender, sobre todo, del software/hardware ya disponible.

La suite comercial ms econmica: BI SQL Server 2005 de Microsoft.

Herramientas EIS son bastantes caras. Excel Add-ins, la alternativa de cliente


ms sencilla.

PivotTable de Excel no suficiente

XLCubed, IntelligentApps, MIS AG: comerciales, muy potentes

PALO: open source, menos prestaciones

BI platform - Open source (www.sourceforge.net):

BEE project (ETL, OLAP, MySQL).

Pentaho project: reporting, analysis, dashboard, data mining and workflow (firebird
RDBMS, Weka DM, Mondrian OLAP, Enhydra ETL, JaWE workflow, BIRT reporting components)

Marta Zorrilla - Universidad de Cantabria

2007/08

11

Implantacin de un Data Warehouse

Ventajas:

Aumento de la competitividad en el mercado


Aumento de la productividad de los tcnicos de direccin
Rentabilidad de las inversiones realizadas para su creacin:

Mejor calidad de informacin


Mejor explotacin de la informacin
Datos disponibles para la organizacin. Mejora de la comunicacin

Problemas:

Infravaloracin del esfuerzo necesario para su diseo


Infravaloracin de los recursos necesarios para la captura,
carga y almacenamiento de los datos
Incremento continuo de los requerimientos de usuario

Marta Zorrilla - Universidad de Cantabria

2007/08

12

Modelo de datos dimensional

Marta Zorrilla
Universidad de Cantabria

2007/08

Tabla de contenido

Modelo dimensional bsico

Data warehouse vs data marts

Del modelo de datos relacional al dimensional. Tablas de hechos y de


dimensiones. Modelo en estrella. Fases en el diseo dimensional.
Criterios para la extensibilidad del esquema de datos. Tablas de
hechos sin hechos. Normalizacin de dimensiones (snowflake). Tablas
de hechos transaccionales versus snapshots. Ejemplos.

El proceso de construccin de un data warehouse: diseo top-down y


diseo con arquitectura de bus comn. Tablas de hechos y
dimensiones conformados. Data marts.

Modelo dimensional extendido

Roles de una dimensin. Dimensiones con soporte a versiones.


Relaciones n:m. Dimensiones Junk. Dimensiones degeneradas.
Ejemplos.

Marta Zorrilla - Universidad de Cantabria

2007/08

14

Modelo de datos relacional (I)


Clientes
Codigo_cliente

Nombre

Direccion

Codigo_empresa

A-234

Luis Aja

Alta, 5 Stder.

E-54

A-741

Ana Ros

Pez, 21 Madrid

E-33

A-562

Jos Maza

Ercilla, 3 Bilbao

E-54

Cada fila establece una


relacin entre un conjunto de
valores

SELECT Nombre, Direccion FROM Clientes


WHERE Codigo_empresa = E-54

Operadores generan nuevas


tablas

Nombre

Direccion

Luis Aja

Alta, 5 Stder.

Jos Maza

Marta Zorrilla - Universidad de Cantabria

Los datos se conciben


agrupados en forma de tablas

2007/08

Ercilla, 3 Bilbao

15

Criterio de diseo:
No repetir datos
innecesariamente
(Normalizacin)

Modelo de datos relacional (II)

Toda tabla tiene una columna o


conjunto
de
columnas
que
permiten identificar cada una de
sus filas; stas componen la
llamada clave principal de la
tabla.

Clientes
Codigo_cliente

Nombre

Direccion

Codigo_empresa

A-234

Luis Aja

Alta, 5 Stder.

E-54

A-741

Ana Ros

Pez, 21 Madrid

E-33

A-562

Jos Maza

Ercilla, 3 Bilbao

E-54

Los valores de la clave principal


no se pueden repetir.

Facturas
Unas tablas se refieren a otras
mediante vnculos de tipo
jerrquico.
Este vnculo de referencia
entre dos tablas se establece
mediante columnas con idntico
tipo de dato.
Marta Zorrilla - Universidad de Cantabria

Codigo_cliente

Fecha

Tipo_IVA

Numero_factura

A-741

22-6-2004

16

3421

A-562

22-6-2004

16

3422

A-741

24-6-2004

16

3423

La referencia de una fila de una tabla a otra de la otra


tabla se produce cuando ambas tienen el mismo valor.
2007/08

16

Modelo de datos relacional (Facturacin)


Clientes
Clientes
Codigo_cliente
Codigo_cliente
Nombre
Nombre
Direccion
Direccion
Codigo_empresa
Codigo_empresa

Facturas
Facturas
Numero_factura
Numero_factura
Codigo_cliente
Codigo_cliente
Fecha
Fecha
Tipo_IVA
Tipo_IVA

Lineas_factura
Lineas_factura
Numero_factura
Numero_factura
Numero_linea
Numero_linea
Codigo_articulo
Codigo_articulo
Unidades
Unidades
Precio_unitario
Precio_unitario
Coste_unitario
Coste_unitario

Articulos
Articulos
Codigo_articulo
Codigo_articulo
Cod_tipo_artic
Cod_tipo_artic
Descripcion
Descripcion
Ult_coste_unitario
Ult_coste_unitario

Empresas
Empresas
Codigo_empresa
Codigo_empresa
Nombre_empresa
Nombre_empresa
Pais
Pais
Direccion_central
Direccion_central

Paises
Paises
Pais
Pais

Tipos_articulos
Tipos_articulos
Cod_tipo_artic
Cod_tipo_artic
Descripcion_tipo
Descripcion_tipo

Beneficio de ventas en el ao 2004 a


empresas francesas segn tipos de artculos?
Marta Zorrilla - Universidad de Cantabria

2007/08

17

Consultas al modelo relacional de facturacin


Clientes
Clientes
Codigo_cliente
Codigo_cliente
Nombre
Nombre
Direccion
Direccion
Codigo_empresa
Codigo_empresa

Beneficio de ventas en el ao
2004 a empresas francesas
segn tipos de artculos?

Facturas
Facturas
Numero_factura
Numero_factura
Codigo_cliente
Codigo_cliente
Fecha
Fecha
Tipo_IVA
Tipo_IVA

Lineas_factura
Lineas_factura
Numero_factura
Numero_factura
Numero_linea
Numero_linea
Codigo_articulo
Codigo_articulo
Unidades
Unidades
Precio_unitario
Precio_unitario
Coste_unitario
Coste_unitario

Articulos
Articulos
Codigo_articulo
Codigo_articulo
Cod_tipo_artic
Cod_tipo_artic
Descripcion
Descripcion
Ult_coste_unitario
Ult_coste_unitario

Empresas
Empresas
Codigo_empresa
Codigo_empresa
Nombre_empresa
Nombre_empresa
Pais
Pais
Direccion_central
Direccion_central

Paises
Paises
Pais
Pais

Tipos_articulos
Tipos_articulos
Cod_tipo_artic
Cod_tipo_artic
Descripcion_tipo
Descripcion_tipo

SELECT SUM(Unidades*(Precio_unitario Coste_unitario)), Cod_tipo_artic


FROM Empresas INNER JOIN
(Clientes INNER JOIN
(Facturas INNER JOIN
(Lineas_factura INNER JOIN Articulos
ON Lineas_factura.Codigo_articulo=Articulos.Codigo_articulo)
ON Facturas.Numero_factura=Lineas_factura.Numero_factura)
ON Clientes.Codigo_cliente=Factura.Codigo_cliente)
ON Empresas.Codigo_empresa=Clientes.Cdigo_empresa
WHERE Fecha BETWEEN 1/1/2004 AND 31/12/2004 AND Pais=Francia
GROUP BY Cod_tipo_artic
Marta Zorrilla - Universidad de Cantabria

2007/08

18

Esquema de hechos y dimensiones


Fechas
Fechas
Fecha
Fecha

Clientes
Clientes
Codigo_cliente
Codigo_cliente
Empresa
Empresa
Nombre
Nombre
Pais
Pais
Direccin
Direccin

Transformacin de datos
Desnormalizacin

Ventas
Ventas
Fecha
Fecha
Codigo_articulo
Codigo_articulo
Codigo_cliente
Codigo_cliente
Unidades
Unidades
Importe
Importe
Coste
Coste
Beneficio
Beneficio

Articulos
Articulos
Codigo_articulo
Codigo_articulo
Descripcin
Descripcin
Tipo_articulo
Tipo_articulo

Medida
Hecho

Tabla de hechos:
Cada fila corresponde a una medida
Igual grado de detalle (grano) en todos los hechos
Los hechos ms tiles son los numricos y aditivos

Tablas de dimensin:
Contienen descriptores textuales
Son los puntos de entrada en la tabla de hechos

An no es el modelo dimensional
Marta Zorrilla - Universidad de Cantabria

2007/08

19

Cubos e hipercubos

Una estructura de datos como


la anterior admite una
representacin espacial en tres
dimensiones.
Articulos

Cada cubo elemental representa


una ocurrencia (fila) en la tabla
de hechos.

Fechas

Marta Zorrilla - Universidad de Cantabria

te
n
lie
C

2007/08

20

Acumulados segn una dimensin

Articulos

Las medidas (como el


beneficio) tiene la propiedad
de ser aditivas. Es decir, tiene
sentido la suma segn todas
las dimensiones (beneficios en
una fecha, o con un artculo o
con relacin a un cliente).

te
n
lie
C

Adems de almacenar los


valores elementales de las
medidas, se pueden tambin
guardar los acumulados segn
las dimensiones.

Fechas

Marta Zorrilla - Universidad de Cantabria

2007/08

21

Articulos

Acumulados segn dos y las tres dimensiones

te
n
lie
C

Fechas

Marta Zorrilla - Universidad de Cantabria

2007/08

22

Articulos

Acumulados segn todas las dimensiones

te
n
lie
C

Fechas

Marta Zorrilla - Universidad de Cantabria

2007/08

23

Unin del cubo y sus acumulados

Marta Zorrilla - Universidad de Cantabria

2007/08

24

El cubo de medidas con todos sus acumulados


Tamao mximo del cubo:
(n1+1) (n2+1) (nd+1)
Donde:
ni es el nmero de filas de
la dimensin i y

Articulos

d es el nmero de
dimensiones
Muchos de los cubos no
tiene medida (no ocupan
espacio)
Espaa
Francia
Ao 2003

te
n
lie
C

Ao 2004

Fechas
Marta Zorrilla - Universidad de Cantabria

2007/08

25

Modelo de datos dimensional


Fechas
Fechas
Fecha
Fecha

Clientes
Clientes

Ventas
Ventas
Fecha
Fecha
Codigo_articulo
Codigo_articulo
Codigo_cliente
Codigo_cliente
Unidades
Unidades
Importe
Importe
Coste
Coste
Beneficio
Beneficio

Codigo_cliente
Codigo_cliente
Empresa
Empresa
Nombre
Nombre
Pais
Pais
Direccin
Direccin

Tabla de hechos:
Atributos (hechos) [aditividad]
Claves de referencia
Clave simple (autonumrica)

Articulos
Articulos

Tablas de dimensin:

Codigo_articulo
Codigo_articulo
Descripcin
Descripcin
Tipo_articulo
Tipo_articulo

Claves de gestin
Atributos [criterios de agregacin]
Claves simples (autonumricas)

Fechas
Fechas
Id_fecha
Id_fecha
Fecha
Fecha
Ao
Ao
Mes
Mes
Dia
Dia

Clientes
Clientes

Claves propias sin


significado
Independencia ante
cambios de claves
de produccin
Marta Zorrilla - Universidad de Cantabria

Id_cliente
Id_cliente
Codigo_cliente
Codigo_cliente
Empresa
Empresa
Nombre
Nombre
Pais
Pais
Direccin
Direccin

Ventas
Ventas
Id_venta
Id_venta
Id_fecha
Id_fecha
Id_articulo
Id_articulo
Id_cliente
Id_cliente
Unidades
Unidades
Importe
Importe
Coste
Coste
Beneficio
Beneficio

Articulos
Articulos
Id_articulo
Id_articulo
Codigo_articulo
Codigo_articulo
Descripcin
Descripcin
Tipo_articulo
Tipo_articulo

Esquema dimensional
(en Estrella)
2007/08

26

Del modelo relacional al dimensional


Clientes
Clientes
Codigo_cliente
Codigo_cliente
Nombre
Nombre
Direccion
Direccion
Codigo_empresa
Codigo_empresa

Facturas
Facturas
Numero_factura
Numero_factura
Codigo_cliente
Codigo_cliente
Fecha
Fecha
Tipo_IVA
Tipo_IVA

Lineas_factura
Lineas_factura
Numero_factura
Numero_factura
Numero_linea
Numero_linea
Codigo_articulo
Codigo_articulo
Unidades
Unidades
Precio_unitario
Precio_unitario
Coste_unitario
Coste_unitario

Articulos
Articulos
Codigo_articulo
Codigo_articulo
Cod_tipo_artic
Cod_tipo_artic
Descripcion
Descripcion
Ult_coste_unitario
Ult_coste_unitario

Extraccin
Transformacin

Empresas
Empresas

Esquema
relacional

Codigo_empresa
Codigo_empresa
Nombre_empresa
Nombre_empresa
Pais
Pais
Direccion_central
Direccion_central

Paises
Paises
Pais
Pais

Tipos_articulos
Tipos_articulos
Cod_tipo_artic
Cod_tipo_artic
Descripcion_tipo
Descripcion_tipo

Fechas
Fechas
Id_fecha
Id_fecha
Fecha
Fecha
Ao
Ao
Mes
Mes
Dia
Dia

Clientes
Clientes
Id_cliente
Id_cliente
Codigo_cliente
Codigo_cliente
Empresa
Empresa
Nombre
Nombre
Pais
Pais
Direccin
Direccin

Marta Zorrilla - Universidad de Cantabria

2007/08

Carga
Ventas
Ventas
Id_venta
Id_venta
Id_fecha
Id_fecha
Id_articulo
Id_articulo
Id_cliente
Id_cliente
Unidades
Unidades
Importe
Importe
Coste
Coste
Beneficio
Beneficio

Articulos
Articulos
Id_articulo
Id_articulo
Codigo_articulo
Codigo_articulo
Descripcin
Descripcin
Tipo_articulo
Tipo_articulo

Esquema dimensional
(en Estrella)
27

Fases en el diseo dimensional


1.- Seleccionar los procesos a modelar:
En funcin de las preguntas estratgicas a responder

2.- Decidir el grano:


Preferible informacin del mximo nivel de detalle
Los datos guardados ya no pueden observarse a un nivel de grano ms fino
Normalmente las consultas no pretenden ver el nivel individual
El nivel del grano condiciona la flexibilidad de las consultas admisibles

3.- Escoger las dimensiones:


El grano determina la dimensionalidad
Es preciso ajustar las dimensiones al grano

4.- Determinar los hechos que deben considerarse:


Buscar la aditividad de los hechos a observar
Porcentajes y proporciones deben guardarse numerador y denominador
El precio unitario no es aditivo guardar importe = precio x unidades
Marta Zorrilla - Universidad de Cantabria

2007/08

28

Aditividad de las medidas


Aditividad = tiene sentido sumar segn cualquier dimensin
Siempre que se pueda, las medidas que se elijan deben ser aditivas
Los datos de actividad (como ventas) son generalmente aditivos
Los valores de intensidad no suelen ser aditivos
Ejemplos: existencias de inventario, partidas del presupuesto, .
Suelen ser aditivos por todas las dimensiones menos por las de tiempo

Hay otras medidas que no son aditivas segn ninguna dimensin


Ejemplos: temperaturas, precios unitarios, .

Las medidas no aditivas pueden agregarse calculando valores medios


Hay casos en que interesa valorar la ocurrencia o no de un suceso,
su aditividad puede conseguirse mediante los valores 1 0
Ejemplos: comunicacin (SI NO), supervisin (SI NO)
Marta Zorrilla - Universidad de Cantabria

2007/08

29

Las tablas de dimensiones y sus atributos


Siempre debe haber al menos una dimensin temporal
El grano ms adecuado suele ser la fecha (diario)
Cuando tambin se quiera registrar el instante del da, es mejor otra dimensin
Hay atributos de fecha que no pueden extraerse mediante funciones SQL
Ejemplos: da laborable, vacaciones,...
La dimensin de fecha podra tener ms de 20 atributos

Con los atributos de las dimensiones se definen las agregaciones


Ejemplo: Saber las unidades vendidas este ao de un artculo en fin de semana

Es normal que una dimensin tenga 50 o ms atributos descriptivos


Generalmente, una estrella no tiene ms de 15 tablas de dimensin
Un exceso de dimensiones (ms de 25) denota que varias no son independientes
En este caso, deben combinarse en dimensiones ms simples
Marta Zorrilla - Universidad de Cantabria

2007/08

30

Extensibilidad del esquema


Nuevos atributos de dimensin:
Dan lugar a nuevas columnas en la tabla de dimensin
Si los nuevos atributos slo estn disponibles a partir de una fecha, en las
anteriores deben figurar como no disponibles

Nuevas dimensiones:
Hay que aadir una nueva clave de referencia en la tabla de hechos
Y cargar los nuevos valores de la tabla de hechos

Nuevas medidas:
Nuevas columnas en la tabla de hechos
Hay que rellenar de valor las filas anteriores al cambio

Dimensiones existentes ms granulares:


Hay que eliminar la tabla de hechos y reconstruirla
La tabla de dimensin puede no necesitar su supresin
Marta Zorrilla - Universidad de Cantabria

2007/08

31

Nueva dimensin de promocin


Fechas
Fechas
Id_fecha
Id_fecha
Fecha
Fecha
Ao
Ao
Mes
Mes
Dia
Dia

Clientes
Clientes
Id_cliente
Id_cliente
Codigo_cliente
Codigo_cliente
Empresa
Empresa
Nombre
Nombre
Pais
Pais
Direccin
Direccin

Ventas
Ventas
Id_venta
Id_venta
Id_fecha
Id_fecha
Id_articulo
Id_articulo
Id_cliente
Id_cliente
Id_promocion
Id_promocion
Unidades
Unidades
Importe
Importe
Coste
Coste
Beneficio
Beneficio

Articulos
Articulos
Id_articulo
Id_articulo
Codigo_articulo
Codigo_articulo
Descripcin
Descripcin
Tipo_articulo
Tipo_articulo

Promocion
Promocion
Id_promocion
Id_promocion
Nombre_prom
Nombre_prom
Tipo_prom
Tipo_prom
Fecha_ini_prom
Fecha_ini_prom
Fecha_fin_prom
Fecha_fin_prom

Hay que evitar claves nulas en la tabla de hechos


Para ello, deber haber una fila en la dimensin que indique que no es aplicable
Ejemplo: ventas sin promocin
Marta Zorrilla - Universidad de Cantabria

2007/08

32

Tabla de hechos sin hechos

Tablas de hechos transaccionales no tienen filas para los eventos que


no han ocurrido (Ejemplo: productos no vendidos)
Por una parte.

Es bueno: toma ventaja de la escasez de datos

Es malo: no hay registro de lo que no ocurre

Menos datos a almacenar si los eventos son poco frecuentes


Ejemplo: qu productos en promocin no se vendieron?

Tabla de hechos Factless

No tiene columnas de hechos numricas


Se utilizan para capturar relaciones entre dimensiones
Incluyen una columna de hechos ficticia con valor 1 (siempre)

Ej.: Qu productos
estuvieron en promocin
en qu almacenes y en
qu das?

Cobertura
Cobertura
promocin
promocin
Fechas
Fechas
Almacenes
Almacenes

Marta Zorrilla - Universidad de Cantabria

Id_fecha
Id_fecha
Id_articulo
Id_articulo
Id_almacen
Id_almacen
Id_promocion
Id_promocion
Promotion
Promotion count(=1)
count(=1)
2007/08

Artculos
Artculos
Promocin
Promocin
33

Normalizacin de dimensiones (Snowflaking)


Fechas
Fechas
Id_fecha
Id_fecha
Fecha
Fecha
Ao
Ao
Mes
Mes
Dia
Dia

Clientes
Clientes
Empresas
Empresas
Id_empresa
Id_empresa
Empresa
Empresa
Pas
Pas

Ventas
Ventas
Id_venta
Id_venta
Id_fecha
Id_fecha
Id_articulo
Id_articulo
Id_cliente
Id_cliente
Id_promocion
Id_promocion
Unidades
Unidades
Importe
Importe
Coste
Coste
Beneficio
Beneficio

Articulos
Articulos
Id_articulo
Id_articulo
Codigo_articulo
Codigo_articulo
Descripcin
Descripcin
Tipo_articulo
Tipo_articulo

Promocion
Promocion
Id_promocion
Id_promocion
Nombre_prom
Nombre_prom
Tipo_prom
Tipo_prom
Fecha_ini_prom
Fecha_ini_prom
Fecha_fin_prom
Fecha_fin_prom

Id_cliente
Id_cliente
Codigo_cliente
Codigo_cliente
Id_empresa
Id_empresa
Nombre
Nombre
Direccin
Direccin

Algunas dimensiones se jerarquizan en varias tablas (normalizacin). Esquema en


copo de nieve (snowflake)
El nombre de los atributos y valores debera ser nico en las dimensiones jerarquizadas
Marta Zorrilla - Universidad de Cantabria

2007/08

34

Tablas de hechos compartiendo dimensiones

Clientes
Clientes
Fechas
Fechas

Empleados
Empleados

Proveedores
Proveedores

Marta Zorrilla - Universidad de Cantabria

Promocion
Promocion
Ventas
Ventas
[transacciones]
Inventario
Inventario
[fotos (snapshot)]

Articulos
Articulos
Almacenes
Almacenes

Compras
Compras
[transacciones]

2007/08

35

Transaccional vs. Snapshot

Transaccional

Cada fila representa un evento


La informacin se encuentra a nivel ms detallado

Snapshot

Cada fila representa un instante en el tiempo


Generalmente los snapshots se toman a intervalos predefinidos

Ejemplos: diarios, semanales

Suministran una visin acumulativa


Se utilizan para procesos continuos y medidas de intensidad

Ejemplos:

Balance bancario
Inventario
Temperaturas de una habitacin

Marta Zorrilla - Universidad de Cantabria

2007/08

36

Gestin de inventario (semiaditivo)


Producto
Producto
Almacn
Almacn

Inventario
Inventario (snapshot)
(snapshot)

Alm_ID
Alm_ID
Atributos
Atributos alm.
alm.

Margen de retorno
=
de inventario

Marta Zorrilla - Universidad de Cantabria

inventario_ID
inventario_ID
Alm_ID
Alm_ID
Producto_ID
Producto_ID
Fecha_ID
Fecha_ID
Uds_entradas
Uds_entradas
Uds_vendidas
Uds_vendidas
Precio_coste
Precio_coste
Precio_ult_venta
Precio_ult_venta

Producto_ID
Producto_ID
Atributos
Atributos producto
producto

Fecha
Fecha
Fecha_ID
Fecha_ID
Atributos
Atributos derivados
derivados

Uds_vendidas * (precio_ult_venta precio_coste)


Uds_entradas * precio_ult_venta

2007/08

37

Data warehouse vs data marts

2007/08

Arquitectura en Bus del Data Warehouse (Kimball)


Permite un diseo del DWH incremental
Hechos y dimensiones conformados
ttaass
n
e
n
V
Ve
aarriioo
t
t
n
en
IInnvve
rraass
p
p
m
C
Coom

Fechas
Artculos
Almacenes
Promocin
Empleados
Clientes
Proveedores
Marta Zorrilla - Universidad de Cantabria

2007/08

39

Matriz en Bus del BI/DW (Kimball)

Hechos

Dimensiones

Ventas

s
n
es
e
r
s
o
s
s
i
o
n
o
s
c
lo
e
a
d
te
o
u
c
ed
a
h
n
c
a
c
e
e
m
i
e
l
i
v
p
Fe Art Alm Pro
Cl Pro
m
E

Inventario
Compras
Movimientos

Marta Zorrilla - Universidad de Cantabria

2007/08

40

Dimensiones conformadas (I)

Cuando se disean las estrellas separadamente, sus


dimensiones estn concebidas (atributos, nivel de
detalle, ... ) para cada una de ellas
Al compartir dimensiones, puede suceder que stas
no tengan el mismo nivel de detalle en todas las
estrellas
Es preciso que toda dimensin signifique lo mismo
para cada tabla de hechos con la que se relacione.

Ejemplos: Fechas, Artculos, Almacenes, Clientes, ...

Sin dimensiones conformadas, el data warehouse no


podr funcionar como un todo

Marta Zorrilla - Universidad de Cantabria

2007/08

41

Dimensiones conformadas (II)

Las dimensiones conformadas hacen posible que:

Una nica tabla de dimensin se pueda utilizar frente a varias tablas de


hechos
El contenido de los datos sea coherente
Las interfaces de usuario sean consistentes
Haya una interpretacin uniforme de los atributos

El equipo diseador es responsable de establecer, publicar y


mantener las dimensiones conformadas
Su definicin puede llevar bastante tiempo
Deben disearse con la granularidad ms fina posible
Deben tener una clave sin significado que permita realizar cambios en
el futuro
Las tablas jerarquizadas de un snowflake pueden ser dimensiones de
otras estrellas

Marta Zorrilla - Universidad de Cantabria

2007/08

42

Hechos conformados

Los datos de la tabla de hechos generalmente no son


duplicados en diferentes data marts. Si existen, uno a
nivel de detalle y otros consolidados.
Se requiere que los nombres de los hechos sean nicos
y con una interpretacin clara e inequvoca

Ejemplos: beneficio, coste, precio, medidas de calidad, medidas


de satisfaccin del cliente

Deben utilizarse las mismas unidades de medida

Ejemplo: cantidad de fabricacin de un producto (en kilos) y


unidades (latas por ejemplo) del mismo en el almacn

Marta Zorrilla - Universidad de Cantabria

2007/08

43

Data marts

Data mart:

subconjunto de la informacin de un data warehouse,


generalmente de un solo proceso de negocio, que se dirige a
un determinado departamento/grupo de usuarios

Ejemplos: data mart sobre ventas para dpto comercial y dpto de


marketing

Normalmente contiene la informacin de un diagrama


en estrella por lo que se suelen utilizar como sinnimos,
aunque conceptualmente son diferentes
El grano de un data mart puede ser ms grueso que en
el data warehouse o del mismo detalle

Marta Zorrilla - Universidad de Cantabria

2007/08

44

Data marts (justificacin)

Frecuentemente hay grupos de usuarios que slo


acceden a un subconjunto concreto de los datos

Descomponer el data warehouse en diferentes data


marts suele mejorar el rendimiento de las consultas al
reducir el volumen de datos que se recorren para
responder

Los data marts se utilizan para:

Segmentar la informacin en diferentes plataformas hardware


(posible portabilidad)
Facilitar el acceso de las herramientas de consulta
Dividir los datos para controlar mejor los accesos
Mejorar los tiempos de respuesta

Los data marts son necesarios cuando las herramientas


de acceso de los usuarios tiene sus propias estructuras
internas

Marta Zorrilla - Universidad de Cantabria

2007/08

45

Data marts (otras consideraciones)

Para asegurar la consistencia, los data marts deben


ser cargados a partir del data warehouse y no desde
las fuentes de datos

El uso de data marts suele suponer costes adicionales


en hardware, software y accesos a la red

Los procesos de carga de los data marts pueden


requerir un tiempo adicional importante

Los data marts pueden ser necesarios en control de


accesos:

Los SGBD tradicionales slo permiten restringir acceso a


tablas, no a filas
Con un data mart se pueden separar fsicamente porciones
completas de datos

Marta Zorrilla - Universidad de Cantabria

2007/08

46

Modelo dimensional extendido

2007/08

Roles de una dimensin

Si en una tabla de hechos se hace referencia varias veces a una


misma dimensin con diferentes significados, sta desempea
diferentes roles

Ejemplos:

Ciudad de origen ciudad de destino


Fecha de venta fecha de entrega fecha de devolucin
Empleado que decide empleado que tramita

Para diferenciar cada uno de los roles puede resultar conveniente


crear vistas sobre las correspondientes tablas de dimensin
Fechas
Fechas

Id_venta
Id_venta
Id_fecha_pedido
Id_fecha_pedido
Id_fecha_entrega
Id_fecha_entrega
.
.
Unidades
Unidades
Total
Total
.
.

Id_fecha
Id_fecha
Fecha
Fecha
Ao
Ao
Mes
Mes
Dia
Dia
Marta Zorrilla - Universidad de Cantabria

Ventas
Ventas

2007/08

48

Relaciones n a m
En ocasiones puede darse el caso de que a una fila de la tabla de hechos le pueda
corresponder un nmero variable de filas de una dimensin (adems de lo normal,
una fila de dimensin que pueda tener asociadas varias filas en la tabla de hechos)
Ejemplo: movimientos de cuentas que puedan ser ms de un cliente
Cuent_client
Cuent_client
Fechas
Fechas

Movimientos_cuenta
Movimientos_cuenta

Id_fecha
Id_fecha
Fecha
Fecha
Ao
Ao
Mes
Mes
Dia
Dia

Id_movimiento
Id_movimiento
Id_fecha
Id_fecha
Id_cuenta
Id_cuenta
Id_tipo
Id_tipo
Debe
Debe
Haber
Haber

Cuentas
Cuentas
Id_cuenta
Id_cuenta
Numero_cuenta
Numero_cuenta
Descripcin
Descripcin
Fecha_apertura
Fecha_apertura

Id_cuenta
Id_cuenta
Id_cliente
Id_cliente
Factor_particip
Factor_particip

Clientes
Clientes
Id_cliente
Id_cliente
Codigo_cliente
Codigo_cliente
Empresa
Empresa
Nombre
Nombre
Pais
Pais
Direccin
Direccin

Tipo_movim
Tipo_movim
Id_tipo
Id_tipo
Codigo_tipo
Codigo_tipo
Descr_tipo
Descr_tipo

Marta Zorrilla - Universidad de Cantabria

En necesario utilizar una tabla puente

2007/08

49

Junk dimensin

En ocasiones puede ser necesario considerar en la tabla de hechos


atributos, generalmente flags, que no parecen organizarse de manera
coherente para conformar una dimensin (pocos datos)

Ej.: tipo de pago (crdito o dbito), tarjeta con comisin o sin ella, venta nacional
o internacional,

Soluciones posibles son:

Dejar los atributos en la tabla de hechos (prob. espacio usado)

Hacer dimensiones separadas para cada atributo (prob. n de dimensiones que


aparecen)

Quitar directamente estos atributos y crear junk dimension

Junk dimensin, dimensin que combina todos los valores posibles de este
tipo de atributos.

El proceso ETL es ms complejo

Marta Zorrilla - Universidad de Cantabria

2007/08

50

Dimensin degenerada

La mayora de los hechos de una tabla de


hechos estn alrededor de un documento de
control: n de factura, n de pedido,

Normalmente se trata de identificadores del


sistema operacional (til para ETL)

Estos datos dan lugar a dimensiones vacas y


por ello generalmente se aaden a la tabla de
hechos donde el nivel de detalle coincide con
el del documento de control

Marta Zorrilla - Universidad de Cantabria

2007/08

Ventas
Ventas
Id_venta
Id_venta
Id_fecha
Id_fecha
Id_articulo
Id_articulo
Id_cliente
Id_cliente
Id_promocion
Id_promocion
Numero_pedido
Numero_pedido
Unidades
Unidades
Total
Total
Coste
Coste
Beneficio
Beneficio

51

Kimball vs Inmon

Bill Inmon's paradigm: Data warehouse is one part


of the overall business intelligence system. An
enterprise has one data warehouse, and data marts
source their information from the data warehouse. In
the data warehouse, information is stored in 3rd
normal form.

Ralph Kimball's paradigm: Data warehouse is the


conglomerate of all data marts within the enterprise.
Information is always stored in the dimensional
model.

Marta Zorrilla - Universidad de Cantabria

2007/08

52

El modelo de datos relacional frente al dimensional

Modelo
Relacional

Dimensional

Objetivos

Actualizacin de los datos

Consultas estratgicas

Datos

Actualizados dinmicamente

Histricos estticos

Usuario

Slo consultas elementales

Consistencia
Redundancias

No puede actualizar datos

Se persigue

Se da por supuesta

Se impiden

Se permiten

Consultas estr. Costosas y presentacin difcil Sencillas y presentacin fcil


Diseo

Alejado del usuario final

Marta Zorrilla - Universidad de Cantabria

2007/08

Prximo al usuario final

53

Ejemplo delicatessen international

2007/08

Ejemplo de aplicacin: Ventas

Empresa multinacional con sede en Nueva York y en


Londres que se dedica a la venta y distribucin de
productos delicatessen de todo el mundo.

Esta empresa tiene en su sistema de gestin


corporativo los pedidos realizados por sus clientes
desde el ao 2002, cuando iniciaron su andadura,
hasta mayo del 2004.

Marta Zorrilla - Universidad de Cantabria

2007/08

55

Ejemplo de pedido

Marta Zorrilla - Universidad de Cantabria

2007/08

56

Modelo de datos

Marta Zorrilla - Universidad de Cantabria

2007/08

57

Anlisis

Producto ms vendido, ms rentable, nmero de unidades


vendidas por pas, por empleado, etc...
Evolucin de las ventas realizadas en cada pas en los ltimos
aos. Cul es la tendencia?
En qu pases nos hemos introducido y en cules hemos
perdido cuota de mercado?
Ingresos obtenidos por cada empleado y por jefe
Comparativa de ventas del mismo producto en diferentes meses
y pases.
Qu margen comercial tenemos por producto? cules nos
ofrecen mayor rentabilidad?
Volumen de negocio ofrecido a cada agencia de transporte
Cuntos clientes nuevos hemos conseguido este ao? cmo
evoluciona nuestra penetracin en el mercado internacional?
Cul es el gasto promedio por cliente? Quines son nuestros
mejores clientes?
Etc.

Marta Zorrilla - Universidad de Cantabria

2007/08

58

Parmetros de negocio
Nivel de grano: lnea de pedido

Mtricas

Importe lnea

Unidades vendidas

Descuento

Dimensiones:

Tiempo

Mtricas derivadas

Coste flete

Beneficio neto

Marta Zorrilla - Universidad de Cantabria

Mensual
Trimestral
Anual

Productos -> Categoras


Empleado -> Jefe -> Superior ...
Transportistas
Clientes -> Localidad -> Regin ->
Pas

2007/08

59

Data mart Ventas

Clave autonumrica
(_key)

Atributos
Niveles de
agregacin

Clave
compuesta
Medidas

Clave
operacional
(_ID)

Dimensin
degenerada

Marta Zorrilla - Universidad de Cantabria

2007/08

60

Dimensiones

Marta Zorrilla - Universidad de Cantabria

2007/08

61

Dimensiones

Marta Zorrilla - Universidad de Cantabria

2007/08

62

Dimensiones

Marta Zorrilla - Universidad de Cantabria

2007/08

63

Dimensiones

Marta Zorrilla - Universidad de Cantabria

2007/08

64

Dimensiones

Marta Zorrilla - Universidad de Cantabria

2007/08

65

Tabla de hechos

Marta Zorrilla - Universidad de Cantabria

2007/08

66

Procesos de extraccin, transformacin y carga

Marta Zorrilla
Universidad de Cantabria

2007/08

Objetivo
Fuentes de datos
internas
Compras

BD Relacional (OLTP)
Contabilidad

..
.

Herramienta
ETL
Extraccin
Transformacin
Carga

ETL

RR/HH

Datos detalle
ETL

Staging
Area

Web log,..

Fuentes de datos
externas
INE, INEM,

Extraccin: lectura de datos de las diferentes fuentes de datos


Transformacin:

Limpiar y transformar los datos aadindoles contexto y significado


Crear agregaciones y tablas resumen

Carga: insercin/actualizacin de las tablas de dimensiones y de


hechos.

Marta Zorrilla - Universidad de Cantabria

2007/08

81

Nota importante

El xito de un DW viene dado, en gran


medida, por un estudio amplio del
negocio a partir del conocimiento
extrado de las fuentes de datos
externas y de los responsables de su
mantenimiento. No se trata de una
mera copia de los datos.

Marta Zorrilla - Universidad de Cantabria

2007/08

82

Fuentes de datos de origen

Datos archivados

Plantean pocos problemas, generalmente no se cargan por no


considerarse rentable.

Datos del entorno operacional

Analizar los diferentes entornos (no es trivial) :

Identificar los atributos de inters


Unificar el significado de los datos
Identificar la mejor fuente de datos para cada registro
Validar que los datos estn correctos en origen

Definir tareas de preprocesado y transformacin de datos, para


posteriormente definir el proceso de carga inicial y de
sincronizacin.
A veces, requiere modificaciones en origen (campo
fechaultmodif, rowversion, tabla de histricos,) para ayudar a
la tarea de sincronizacin

Marta Zorrilla - Universidad de Cantabria

2007/08

83

Tareas principales de preprocesado

Limpieza

Integracin

Identificar la mejor fuente de datos para cada registro

Transformacin

Detectar y eliminar errores, rellenar atributos vacos, resolver


inconsistencias

Transformar los datos al contexto del DW: Estandarizar cdigos y


formatos de representacin, definir dominios, usar conversiones y
combinaciones para generar nuevos campos, corregir datos

Carga de datos

Definir procesos de carga y sincronizacin

Marta Zorrilla - Universidad de Cantabria

2007/08

84

Por qu se han de limpiar los datos?

Los datos en el mundo real (data dirty )

incompletos: atributos sin valor, falta de atributos


interesantes para el contexto o el valor del atributo se
tiene agregado

con ruido: contienen errores o outliers

ej., ocupacin= , sexo a partir del nombre


ej., salario=-10

inconsistentes: contienen discrepancias

ej., edad=42 fecha_nacimiento=03/07/1997


ej., era rango 1,2,3, y ahora A, B, C
ej., discrepancia entre registros duplicados (ej. Info de
personas)

Marta Zorrilla - Universidad de Cantabria

2007/08

85

Por qu nos encontramos Data Dirty?

Incompletos porque

Incorrectos debido a

No es necesario el dato cuando se registra


Consideraciones diferentes cuando el dato es registrado y cuando
es analizado
Problemas humanos/hardware/software

Error humano o del programa al introducir los datos. Modelos de


datos poco robustos.
Errores en la transmisin de datos

Inconsistentes porque

Provienen de diferentes fuentes de datos


Modelo de datos no normalizados (incumplen las FN)

Marta Zorrilla - Universidad de Cantabria

2007/08

86

La importancia de un buen preprocesado

Datos sin calidad resultados de anlisis no


fiables e inexactos

Registros duplicados o valores no asignados llevan a


obtener estadsticas incorrectas

Data warehouse
integracin consistente de datos con calidad

ETL supone el 70% de la carga de trabajo del


desarrollo de un data warehouse

Marta Zorrilla - Universidad de Cantabria

2007/08

87

Caractersticas de calidad

Un dato debe ser:

Preciso
Completo
Consistente
Creble
Con valor aadido
Interpretable
Accesible
Riguroso en el tiempo

Marta Zorrilla - Universidad de Cantabria

2007/08

88

Limpieza de datos (cleaning)

Importancia

Tareas

Data cleaning is one of the three biggest problems in data


warehousingRalph Kimball
Data cleaning is the number one problem in data
warehousingDCI survey

Identificar y corregir outliers y errores (tipogrficos, de


dominio,)
Corregir datos inconsistentes (fecha de nacimiento > hoy)
Rellenar valores perdidos (missing data)

Realizar la correccin, si es posible, en cada fuente de


datos de origen. Si no en la tarea de transformacin.

Marta Zorrilla - Universidad de Cantabria

2007/08

89

Missing Data (Datos perdidos)

Los datos puede que no estn siempre disponibles debido a:

No se registra la historia o los cambios de los datos


Mal funcionamiento del equipo
Los datos nunca fueron rellenados o no exista en aquel momento
O se eliminaron por ser inconsistentes con otra informacin registrada

qu soluciones?

Etiquetarle con una constante global desconocido


Asignarle la media del conjunto total o de los de su clase
A veces, stos deben ser inferidos por medio de una frmula
Bayesiana o un rbol de decisin

Marta Zorrilla - Universidad de Cantabria

2007/08

90

Integracin de datos

El problema de la redundancia:

Aparece cuando se integran mltiples bases de datos

Identificacin de objetos: el mismo atributo u objeto puede tener


diferentes nombres en cada base de datos, e incluso, el dominio
puede variar
Datos derivados: un atributo puede aparecer como dato derivado en
otra tabla ( ej. Renta anual)

Identificar la fuente de datos ms fiable para cada dato


Una integracin cuidadosa ayuda a evitar/reducir las
redundancias y las inconsistencias

Marta Zorrilla - Universidad de Cantabria

2007/08

91

Transformacin

Estandarizar cdigos y formatos de representacin

Pasar la informacin EBCDIC a ASCII o Unicode


Convertir nmeros cardinales a ordinales
Separar fecha y hora
Poner textos descriptivos
Unificar cdigos ( hombre-mujer, varn-hembra, 0-1).
Unificar estndares: unidades de medida, de tiempo, moneda, etc.

Corregir (si no se pudo hacer en el origen)

errores tipogrficos
datos que no tienen sentido (fecha de nacimiento > hoy)
resolver conflictos de dominio
aclarar datos ambiguos
asignar valor a datos nulos (missing data)

Marta Zorrilla - Universidad de Cantabria

2007/08

92

Transformacin (y 2)

Poltica de resolucin de claves (cuando proceden


datos de varias fuentes)

Eliminar datos/registros duplicados

Uso de metadata

Situaciones complejas anlisis de correlaciones o


apoyarse en funciones fuzzy (fuzzy lookup, fuzzy
grouping)

Usar conversiones y combinaciones para generar


nuevos campos

Calculados: importe neto, beneficio,


Agregados: cuentas, promedios, etc
Derivados: la nota numrica y textual

Marta Zorrilla - Universidad de Cantabria

2007/08

93

Carga

Inicial

No suele plantear problemas.


Puede requerir bastante tiempo.
Realizar en horas de baja carga de los sistemas.

Sincronizacin o actualizacin incremental

Es compleja de disear. Debe ser eficiente computacionalmente Staging


Area
cmo reconocer los cambios?

Utilizar la informacin de ltima modificacin (fecha o campo rowversion) si los


datos en el entorno operacional disponen de ella. No muy frecuente.
Mantener una imagen del antes y otra del despus de la extraccin de la
informacin, comparar ambas y detectar los cambios. Esta es una aproximacin
compleja y requiere muchos recursos.
Utilizar tablas de auditora: dimension table staging y fact table staging.

Se ha de prestar atencin a la variable temporal si los datos proceden de


distintas fuentes (p. ej. datos de bolsa Madrid y Nueva York).

Marta Zorrilla - Universidad de Cantabria

2007/08

94

Fuentes de datos
internas
Compras

BD Relacional (OLTP)

Staging area

Contabilidad

..
.

RR/HH

Herramienta
ETL
ETL

Extraccin
Transformacin
Carga

Datos detalle
ETL

Staging
Area

Web log,..

Fuentes de datos
externas
INE, INEM,

Contiene los datos para cargar el DW. Lnea divisoria


entre operacional y DW.
Permite realizar la integracin de los datos y su
transformacin.
Raramente contiene restricciones.
No se debe preasignar las claves del DW, stas se
deben asignar en la carga.

Marta Zorrilla - Universidad de Cantabria

2007/08

95

Cubos OLAP

2007/08

Definicin cubos OLAP

Estructura de almacenamiento que


permite realizar diferentes combinaciones
de datos para visualizar los resultados de
una organizacin (indicadores) hasta un
determinado grado de detalle, permitiendo
navegar por sus dimensiones y analizar
sus datos desde distintos puntos de vista.

Marta Zorrilla - Universidad de Cantabria

2007/08

108

Introduccin a los cubos

Un cubo es un subconjunto de datos de un DW que


es almacenado en una estructura multidimensional.
El cubo contiene los valores agregados de todos los
niveles de todas las dimensiones.
Presenta los datos de inters para el usuario.

Importe total y unidades vendidas


durante este ao de los productos del
departamento Bebidas, por trimestre y por
categora

VENTAS

Cmo vari la venta de los productos


crnicos durante el tercer trimestre del
2002 en relacin al segundo trimestre?

Beneficio neto por producto, rea


geogrfica y ao

Tiempo
Marta Zorrilla - Universidad de Cantabria

2007/08

Cl

te
n
e

P
r
o
d
u
c
t
o

109

Informe OLAP
rea
geogrfica
(cliente)

Producto

IN

Marta Zorrilla - Universidad de Cantabria

Ao

E
M
R
O
F

2007/08

110

Componentes de un cubo
Cliente
Miembro

Argentina
Blgica
Canad
Francia
Italia

VENTAS
()

Producto
Camembert
Gorgonzola
Chocolate
Pat Chinoise
Ravioli

Propiedades
Celdas
Niveles

1999 2000 2001 2002 2003

Da1 Da 2 ....
Enero Febr. ....
Trim.1 Trim. 2 ....

Tiempo

Producto
Camembert
Gorgonzola
Chocolate
Pat Chinoise
Ravioli

Stock min.
10
20
35
15
125

Obsoleto
N
N
N
N
N

1999 2000 ....


Marta Zorrilla - Universidad de Cantabria

2007/08

111

Definir dimensiones

Identificar las columnas de las tablas que participan


en la dimensin
Indicar si es privada o compartida con otros cubos
Indicar si la dimensin es estndar o temporal
Definir los niveles y las propiedades
Pueden ser:

balanceada (producto)
no balanceada (empleado)
desigual (el padre de un miembro no se encuentra en el
nivel que est por encima inmediatamente de ste, cliente)

Marta Zorrilla - Universidad de Cantabria

2007/08

112

Dimensin equilibrada

Marta Zorrilla - Universidad de Cantabria

2007/08

113

Dimensin no equilibrada

Marta Zorrilla - Universidad de Cantabria

2007/08

114

Dimensin desigual

Marta Zorrilla - Universidad de Cantabria

2007/08

115

Definir cubos

Identificar la tabla de hechos

Elegir las medidas

Aditivas y no aditivas
Mtricas calculadas

Nivel de detalle (filtro)

Mtricas calculadas:

La diferencia entre medida derivada y miembro calculado es


cundo se realiza el clculo.
Una medida derivada se calcula antes que las agregaciones
sean creadas y los valores son almacenados en el cubo.
Beneficio = venta coste

Los miembros calculados no son almacenados en el cubo y


se calculan las agregaciones antes que se efecte la
operacin.

Margen ud. Prod. = suma(beneficio_linea) / suma(unidades_linea


Marta Zorrilla - Universidad de Cantabria

2007/08

116

Almacenamiento de los cubos


Opciones de almacenamiento
Rendimiento

MOLAP
MOLAP
Base Datos Multidimensional

Capacidad

ROLAP
ROLAP

Los datos que subyacen en los hipercubos


son almacenados junto con las agregaciones
en una estructura multidimensional
Los datos que subyacen en los hipercubos
son almacenados junto con las agregaciones
en una estructura relacional

Base Datos Relacional

HOLAP
HOLAP
Sistema hbrido

DOLAP
DOLAP

Los datos que subyacen en los hipercubos


son almacenados en una estructura relacional
y las agregaciones en una estructura
multidimensional
Instalacin MOLAP en un equipo cliente

Desktop OLAP
Marta Zorrilla - Universidad de Cantabria

2007/08

117

MOLAP

Datos y agregaciones se almacenan en el cubo fuera


del DW o data mart (duplicacin).
Ofrecen mejor respuesta a las consultas pues:

Tienen los datos calculados y los join realizados


No hay bloqueos, son slo lectura
Las celdas vacas no se almacenan
Se utiliza procesador OLAP que trabaja con ndices bitmap y
cach de datos

Son portables
Buen comportamiento con no ms de 10 dimensiones
y volumen inferior a 5 Gb.

Marta Zorrilla - Universidad de Cantabria

2007/08

118

ROLAP

Los datos se mantienen en la base de datos


relacional y las agregaciones se almacenan en
tablas dentro de la base de datos donde se
encuentra el data mart.
Ventajas de su uso:

No se duplican los datos


Se puede usar el lenguaje SQL
No hay limitacin en uso de dimensiones

No son portables
Tiene sentido utilizarse para datos poco consultados

Marta Zorrilla - Universidad de Cantabria

2007/08

119

HOLAP

Los datos se mantienen en la base de datos


relacional y las agregaciones se almacenan en
cubos.
Ventajas de su uso:

Consumen menos espacio de disco


Consultas ms giles al utilizar motor OLAP

No son portables
Ofrecen solucin intermedia (coste almacenamiento
rendimiento consultas)

Marta Zorrilla - Universidad de Cantabria

2007/08

120

Almacenar particiones

Al crear un cubo se crea una particin


Se pueden crear ms particiones con objeto de:

Tener escalabilidad
Establecer diferente tipo de procesamiento a cada particin
Mejorar el rendimiento de las consultas
Optimizacin de cada particin

Las particiones no tienen efecto en el cubo

1999
2000
2001

Marta Zorrilla - Universidad de Cantabria

Particiones

2007/08

121

Cubos virtuales

Actan de modo similar a las vistas en el modelo


relacional.

Puede basarse en un nico cubo para mostrar


nicamente un subconjunto de medidas y
dimensiones (seguridad) o bien incluir dimensiones y
medidas de varios cubos.

Almacena solo las definiciones y no los datos por lo


que no requiere espacio de almacenamiento
adicional.

Marta Zorrilla - Universidad de Cantabria

2007/08

122

Seguridad

Cubos slo lectura.


Cubos

Independientes

Control por la aplicacin que permita descargar el cubo

Gestionados por el gestor:

Por autentificacin de usuario


Por roles

Marta Zorrilla - Universidad de Cantabria

2007/08

123

Herramientas OLAP
Lo interesante no es poder realizar consultas que, en
cierto modo, se pueden hacer con selecciones,
proyecciones, concatenaciones y agrupamientos
tradicionales.
Lo realmente interesante de las herramientas OLAP
son sus operadores de refinamiento o manipulacin
de consultas.
DRILL
ROLL
SLICE & DICE
PIVOT
Marta Zorrilla - Universidad de Cantabria

2007/08

124

Anlisis de datos: operaciones en cubos OLAP

Roll up (drill-up): resumir los datos

Drill down (roll down): el contrario del anterior

Seleccin y proyeccin

Pivot (rotar):

bajar en la jerarqua o introducir nuevas dimensiones

Slice and dice:

Subir en la jerarqua o reducir las dimensiones

Reorientar el cubo

Drill:

Se utilizan las coordenadas dimensionales especificadas por un


usuario para una celda en un cubo para moverse a otro cubo a ver
informacin relacionada

drill across: implica utilizar ms de una tabla de hechos


drill through: Ir desde el nivel de mximo detalle del cubo a sus tablas
relacionales (utilizando SQL)

Marta Zorrilla - Universidad de Cantabria

2007/08

125

Informe OLAP
Los informes permiten mostrar la
informacin con diferentes niveles
de agrupacin.

Vistas de la misma informacin segn caractersticas de la


informacin (dimensiones)

Navegacin multi-dimensional para investigar en los datos

Ventas por Sector

Actividad
Agricultura
Comercio
Construccin
Resto
Transporte
Total

Total
1
34
10
5
10
60

VENTAS POR REGIN


Regin
Centro
Norte
Sur
Total

Total
33
10
17
60

VENTAS POR REGIN Y SECTOR


Agricul- Comer- ConsTransRegin
tura
cio
truccin Resto
porte
Total
Centro
1
14
3
5
10
33
Norte
6
4
10
Sur
14
3
17
Total
1
34
10
5
10
60

VENTAS POR REGIN, SECTOR Y TAMAO


AgriculConsTransAgricul- tura
ComerComer- Construccin Transporte
tura
Total
cio
cio Total truccin
Total
porte
Total
Regin
Mediana
Grande
Mediana Pequea
Grande
Mediana Pequea
Grande
Mediana Pequea
Centro
1
1
4
4
6
14
1
1
1
3
4
4
2
10
Norte
2
2
2
6
2
1
1
4
Sur
4
4
6
14
1
1
1
3
Grand Total
1
1
10
10
14
34
4
3
3
10
4
4
2
10

Marta Zorrilla - Universidad de Cantabria

2007/08

126

Herramientas OLAP
Las herramientas de OLAP se caracterizan por:
9 ofrecer una visin multidimensional de los datos (matricial).
9 no imponer restricciones sobre el nmero de dimensiones.
9 ofrecer simetra para las dimensiones.
9 permitir definir de forma flexible (sin limitaciones) sobre las
dimensiones: restricciones, agregaciones y jerarquas entre
ellas.
9 ofrecer operadores intuitivos de manipulacin: drill-down, rollup, slice-and-dice, pivot.
9 ser transparentes al tipo de tecnologa que soporta el almacn
de datos (ROLAP o MOLAP).

Marta Zorrilla - Universidad de Cantabria

2007/08

127

También podría gustarte