r82467

Upload: ilanantoni

Post on 13-Oct-2015

92 views

Category:

Documents


0 download

TRANSCRIPT

  • 5/22/2018 r82467

    1/103

    2007/08

    Data warehouse y OLAP

    Marta ZorrillaUniversidad de Cantabria

  • 5/22/2018 r82467

    2/103

    22007/08Marta Zorrilla - Universidad de Cantabria

    Tabla de contenido

    Ciclo de vida de un sistema BI/DW

    Diseo multidimensionalModelo dimensional bsico

    Data warehouse vs data martsModelo dimensional extendido

    Procesos ETLCubos OLAP

  • 5/22/2018 r82467

    3/103

    2007/08

    Ciclo de vida BI/DW

  • 5/22/2018 r82467

    4/103

    42007/08Marta Zorrilla - Universidad de Cantabria

    Fuentes de datosinternas

    RR/HH

    Contabilidad

    Compras

    ...

    Componentes de un sistema BI/DW

    ETL

    BD Relacional (OLTP)

    Hipercubosde datos

    Hipercubosde datos

    EIS

    Solucinaplicativa

    Data mining

    Solucin

    Web

    Staging

    Area

    Datos detalle

    ETL

    Hipercubos

    dedatos

    Hipercubos

    dedatosHipercubosdedatos

    Hipercubosdedatos

    Hipercubosdedatos

    Hipercubosdedatos

    MOLAP

    Hipercubosde datosHipercubosde datos

    ROLAP / HOLAP

    agregados

    Fuentes de datosexternas

    INE, INEM,

    Web log,..

    Herramientas de anlisisy consulta

  • 5/22/2018 r82467

    5/103

    52007/08Marta Zorrilla - Universidad de Cantabria

    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

  • 5/22/2018 r82467

    6/103

    62007/08Marta Zorrilla - Universidad de Cantabria

    Ciclo de vida de un BI/DW (Kimball)

    DiseoArquitectura

    DiseoArquitectura

    SeleccinProductos eInstalacin

    SeleccinProductos eInstalacin

    EspecificacinAplicacin

    Usuario

    EspecificacinAplicacin

    Usuario

    DesarrolloAplicacinUsuario

    DesarrolloAplicacinUsuario

    Planificacinproyecto

    Planificacinproyecto

    Definicinde

    Requisitosdel

    negocio

    Definicinde

    Requisitosdel

    negocio

    Integracin ydespliegue

    Integracin ydespliegue

    Gestin del proyectoGestin del proyecto

    Modelodimensional

    Modelodimensional

    Diseofsico

    Diseofsico

    Diseoprocesos ETL

    Diseoprocesos ETL

    Mantenimientoy crecimiento

    Mantenimientoy crecimiento

  • 5/22/2018 r82467

    7/103

    72007/08Marta Zorrilla - Universidad de Cantabria

    Planificacin del proyecto

    Acometer la realizacin de un proyecto global ha conducido alfracaso. Mejor ir por reas de negocio.

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

    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

    Seleccionar una aplicacin piloto con una alta probabilidad de xito 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

    DiseoArquitectura

    DiseoArquitectura

    SeleccinProductos eInstalacin

    SeleccinProductoseInstalacin

    EspecificacinAplicacinUsuario

    EspecificacinAplicacinUsuario

    DesarrolloAplicacin

    Usuario

    DesarrolloAplicacin

    Usuario

    Planificacinproyecto

    Planificacinproyecto

    Definicinde

    Requisitosdel

    negocio

    Definicinde

    Requisitosdel

    negocio

    DesarrolloDesarrollo

    Gestin del proyectoGestin del proyecto

    Modelodimensional

    Modelodimensional

    Diseofsico

    Diseofsico

    DiseoprocesosETL

    DiseoprocesosETL

    Mantenimientoy crecimiento

    Mantenimientoy crecimiento

  • 5/22/2018 r82467

    8/103

    82007/08Marta Zorrilla - Universidad de Cantabria

    Definicin de requisitos

    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

    DiseoArquitectura

    DiseoArquitectura

    SeleccinProductos eInstalacin

    SeleccinProductos eInstalacin

    EspecificacinAplicacin

    Usuario

    EspecificacinAplicacinUsuario

    DesarrolloAplicacin

    Usuario

    DesarrolloAplicacin

    Usuario

    Planificacinproyecto

    Planificacinproyecto

    Definicin

    deRequisitosdel

    negocio

    Definicin

    deRequisitosdel

    negocio

    DesarrolloDesarrollo

    Gestin del proyectoGestin del proyecto

    Modelodimensional

    Modelodimensional

    Diseofsico

    Diseofsico

    Diseoprocesos ETL

    Diseoprocesos ETL

    Mantenimientoy crecimiento

    Mantenimientoy crecimiento

  • 5/22/2018 r82467

    9/103

    92007/08Marta Zorrilla - Universidad de Cantabria

    Herramientas del mercado

    Fuentes de datos: sistemas operacionales

    corporativos y departamentales, fuentesexternas, ficheros, etc.

    ETL: Ascential DataStage, Microsoft DataTransformation Services, DB2 Warehouse,

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

    OLAP: Analysis Services, Cognos, BusinessObjects, Microstrategy, Excel, SAS, etc.

    Data mining: SAS, SPSS/Clementine,Analysis Services, Weka, etc.

    DiseoArquitectura

    DiseoArquitectura

    SeleccinProductos eInstalacin

    SeleccinProductos eInstalacin

    EspecificacinAplicacinUsuario

    EspecificacinAplicacin

    Usuario

    DesarrolloAplicacin

    Usuario

    DesarrolloAplicacin

    Usuario

    Planificacin

    proyecto

    Planificacinproyecto

    Definicinde

    Requisitos

    delnegocio

    Definicinde

    Requisitos

    delnegocio

    DesarrolloDesarrollo

    Gestin del proyectoGestin del proyecto

    Modelodimensional

    Modelodimensional

    Diseofsico

    Diseofsico

    Diseoprocesos ETL

    DiseoprocesosETL

    Mantenimientoy crecimiento

    Mantenimientoy crecimiento

    Magic Quadrant for BI Platforms 1H06

    Source: Gartner(December 2005)

  • 5/22/2018 r82467

    10/103

    102007/08Marta Zorrilla - Universidad de Cantabria

    Herramientas

    Data Mining

    Fuente de datos Gestor debases de datos

    Estrellas

    Repositorio

    Agregados(hipercubos)

    Agregados

    (hipercubos)

    Gestores deconsultas

    Relacional

    ROLAP

    OLAPOLAP

    DirectasDirectas

    Multid

    imen

    sional

    HOLAP

    Agregados(hipercubos)

    HOLAP

    MOLAP

    USUARIO

    Consultas

    Extraccin

    Transformacin

    Carga

    Herramienta

    ETL

    Agregados(hipercubos)

  • 5/22/2018 r82467

    11/103

    112007/08Marta Zorrilla - Universidad de Cantabria

    Evaluacin de herramientas

    Existen varias herramientas que permiten implementar un Data Warehouse.

    Todas con parecidas prestaciones, su diferencia est en el precio por nmero delicencias 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 clientems 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 (firebirdRDBMS, Weka DM, Mondrian OLAP, Enhydra ETL, JaWE workflow, BIRT reporting components)

  • 5/22/2018 r82467

    12/103

    122007/08Marta Zorrilla - Universidad de Cantabria

    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

  • 5/22/2018 r82467

    13/103

    2007/08

    Modelo de datos dimensional

    Marta Zorrilla

    Universidad de Cantabria

  • 5/22/2018 r82467

    14/103

    142007/08Marta Zorrilla - Universidad de Cantabria

    Tabla de contenido

    Modelo dimensional bsico 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 dehechos sin hechos. Normalizacin de dimensiones (snowflake). Tablasde hechos transaccionales versus snapshots. Ejemplos.

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

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

    Modelo dimensional extendido Roles de una dimensin. Dimensiones con soporte a versiones.

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

  • 5/22/2018 r82467

    15/103

    152007/08Marta Zorrilla - Universidad de Cantabria

    Modelo de datos relacional (I)

    Los datos se conciben

    agrupados en forma de tablas

    Cada fila establece una

    relacin entre un conjunto de

    valores

    Operadores generan nuevastablasSELECT Nombre, Direccion FROM Clientes

    WHERE Codigo_empresa = E-54

    Nombre Direccion

    Luis Aja Alta, 5 Stder.

    Jos Maza Ercilla, 3 Bilbao

    Codigo_cliente Nombre Direccion Codigo_empresa

    A-234 Luis Aja Al ta, 5 Stder. E-54

    A-741 Ana Ros Pez, 21 Madrid E-33

    A-562 Jos Maza Erci lla, 3 Bi lbao E-54

    Clientes

  • 5/22/2018 r82467

    16/103

    162007/08Marta Zorrilla - Universidad de Cantabria

    Modelo de datos relacional (II)

    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.

    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.

    Los valores de la clave principal

    no se pueden repetir.

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

    tabla se produce cuando ambas tienen el mismo valor.

    Codigo_cliente Nombre Direccion Codigo_empresa

    A-234 Luis Aja Al ta, 5 Stder. E-54

    A-741 Ana Ros Pez, 21 Madrid E-33

    A-562 Jos Maza Erci lla, 3 Bi lbao E-54

    Clientes

    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

    Facturas

    Criterio de diseo:No repetir datos

    innecesariamente(Normalizacin)

  • 5/22/2018 r82467

    17/103

    172007/08Marta Zorrilla - Universidad de Cantabria

    Modelo de datos relacional (Facturacin)

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

    FacturasFacturas

    Numero_facturaCodigo_cliente

    Fecha

    Tipo_IVA

    Numero_factura

    Codigo_cliente

    Fecha

    Tipo_IVA

    ClientesClientes

    Codigo_cliente

    Nombre

    Direccion

    Codigo_empresa

    Codigo_cliente

    Nombre

    Direccion

    Codigo_empresa

    Lineas_facturaLineas_factura

    Numero_facturaNumero_linea

    Codigo_articulo

    Unidades

    Precio_unitario

    Coste_unitario

    Numero_factura

    Numero_linea

    Codigo_articulo

    Unidades

    Precio_unitario

    Coste_unitario

    ArticulosArticulos

    Codigo_articulo

    Cod_tipo_artic

    Descripcion

    Ult_coste_unitario

    Codigo_articulo

    Cod_tipo_artic

    Descripcion

    Ult_coste_unitario

    EmpresasEmpresasCodigo_empresa

    Nombre_empresa

    Pais

    Direccion_central

    Codigo_empresa

    Nombre_empresa

    Pais

    Direccion_central

    Tipos_articulosTipos_articulos

    Cod_tipo_artic

    Descripcion_tipo

    Cod_tipo_artic

    Descripcion_tipo

    PaisesPaises

    PaisPais

  • 5/22/2018 r82467

    18/103

    182007/08Marta Zorrilla - Universidad de Cantabria

    Consultas al modelo relacional de facturacin

    SELECT SUM(Unidades*(Precio_unitario-Coste_unitario)), Cod_tipo_articFROMEmpresasINNER JOIN

    (ClientesINNER JOIN

    (FacturasINNER JOIN

    (Lineas_facturaINNER JOINArticulosONLineas_factura.Codigo_articulo=Articulos.Codigo_articulo)

    ONFacturas.Numero_factura=Lineas_factura.Numero_factura)

    ON Clientes.Codigo_cliente=Factura.Codigo_cliente)

    ONEmpresas.Codigo_empresa=Clientes.Cdigo_empresa

    WHEREFechaBETWEEN 1/1/2004 AND 31/12/2004 ANDPais=Francia

    GROUP BYCod_tipo_artic

    Beneficio de ventas en el ao

    2004 a empresas francesas

    segn tipos de artculos?

    FacturasFacturas

    Numero_factura

    Codigo_cliente

    Fecha

    Tipo_IVA

    Numero_factura

    Codigo_cliente

    Fecha

    Tipo_IVA

    ClientesClientes

    Codigo_cliente

    Nombre

    DireccionCodigo_empresa

    Codigo_cliente

    Nombre

    DireccionCodigo_empresa

    Lineas_facturaLineas_factura

    Numero_factura

    Numero_linea

    Codigo_articulo

    UnidadesPrecio_unitario

    Coste_unitario

    Numero_factura

    Numero_linea

    Codigo_articulo

    UnidadesPrecio_unitario

    Coste_unitario

    ArticulosArticulos

    Codigo_articulo

    Cod_tipo_articDescripcion

    Ult_coste_unitario

    Codigo_articulo

    Cod_tipo_articDescripcion

    Ult_coste_unitario

    EmpresasEmpresas

    Codigo_empresa

    Nombre_empresa

    Pais

    Direccion_central

    Codigo_empresa

    Nombre_empresa

    Pais

    Direccion_central

    Tipos_articulosTipos_articulos

    Cod_tipo_artic

    Descripcion_tipo

    Cod_tipo_artic

    Descripcion_tipo

    PaisesPaises

    PaisPais

    FacturasFacturas

    Numero_factura

    Codigo_cliente

    Fecha

    Tipo_IVA

    Numero_factura

    Codigo_cliente

    Fecha

    Tipo_IVA

    ClientesClientes

    Codigo_cliente

    Nombre

    DireccionCodigo_empresa

    Codigo_cliente

    Nombre

    DireccionCodigo_empresa

    Lineas_facturaLineas_factura

    Numero_factura

    Numero_linea

    Codigo_articulo

    UnidadesPrecio_unitario

    Coste_unitario

    Numero_factura

    Numero_linea

    Codigo_articulo

    UnidadesPrecio_unitario

    Coste_unitario

    ArticulosArticulos

    Codigo_articulo

    Cod_tipo_articDescripcion

    Ult_coste_unitario

    Codigo_articulo

    Cod_tipo_articDescripcion

    Ult_coste_unitario

    EmpresasEmpresas

    Codigo_empresa

    Nombre_empresa

    Pais

    Direccion_central

    Codigo_empresa

    Nombre_empresa

    Pais

    Direccion_central

    Tipos_articulosTipos_articulos

    Cod_tipo_artic

    Descripcion_tipo

    Cod_tipo_artic

    Descripcion_tipo

    PaisesPaises

    PaisPais

  • 5/22/2018 r82467

    19/103

    192007/08Marta Zorrilla - Universidad de Cantabria

    Esquema de hechos y dimensiones

    Transformacin de datos

    Codigo_cliente

    Empresa

    Nombre

    Pais

    Direccin

    Codigo_cliente

    Empresa

    Nombre

    Pais

    Direccin

    FechasFechas

    ArticulosArticulosVentasVentas

    FechaCodigo_articulo

    Codigo_cliente

    Unidades

    Importe

    Coste

    Beneficio

    FechaCodigo_articulo

    Codigo_cliente

    Unidades

    Importe

    Coste

    Beneficio

    Codigo_articulo

    Descripcin

    Tipo_articulo

    Codigo_articulo

    Descripcin

    Tipo_articulo

    FechaFecha

    ClientesClientes

    Tabla de hechos:

    Igual grado de detalle (grano) en todos los hechosCada fila corresponde a una medida

    Los hechos ms tiles son los numricos y aditivos

    Tablas de dimensin:Contienen descriptores textualesSon los puntos de entrada en la tabla de hechosDesnormalizacin

    Hecho

    Medida

    An no es el modelo dimensional

  • 5/22/2018 r82467

    20/103

    202007/08Marta Zorrilla - Universidad de Cantabria

    Cubos e hipercubos

    Fechas

    Articulos

    Clien

    tes

    Una estructura de datos comola anterior admite unarepresentacin espacial en tresdimensiones.

    Cada cubo elemental representa

    una ocurrencia (fila) en la tablade hechos.

  • 5/22/2018 r82467

    21/103

    212007/08Marta Zorrilla - Universidad de Cantabria

    Acumulados segn una dimensin

    Articulos

    Clie

    nte

    s

    Fechas

    Las medidas (como el

    beneficio) tiene la propiedadde ser aditivas. Es decir, tienesentido la suma segn todaslas dimensiones (beneficios enuna fecha, o con un artculo ocon relacin a un cliente).

    Adems de almacenar losvalores elementales de lasmedidas, se pueden tambinguardar los acumulados segnlas dimensiones.

  • 5/22/2018 r82467

    22/103

    222007/08Marta Zorrilla - Universidad de Cantabria

    Acumulados segn dos y las tres dimensiones

    Articulos

    Clien

    tes

    Fechas

  • 5/22/2018 r82467

    23/103

    232007/08Marta Zorrilla - Universidad de Cantabria

    Acumulados segn todas las dimensiones

    Clien

    tes

    Fechas

    Articulos

  • 5/22/2018 r82467

    24/103

    242007/08Marta Zorrilla - Universidad de Cantabria

    Unin del cubo y sus acumulados

  • 5/22/2018 r82467

    25/103

    252007/08Marta Zorrilla - Universidad de Cantabria

    El cubo de medidas con todos sus acumulados

    Articulos

    Clie

    ntes

    Fechas

    Ao 2003 Ao 2004

    Francia

    Espaa

    Tamao mximo del cubo:

    (n1+1) (n2+1) (nd+1)

    Donde:

    ni es el nmero de filas dela dimensin iy

    d es el nmero de

    dimensionesMuchos de los cubos notiene medida (no ocupanespacio)

  • 5/22/2018 r82467

    26/103

    262007/08Marta Zorrilla - Universidad de Cantabria

    Modelo de datos dimensional

    Codigo_cliente

    Empresa

    NombrePais

    Direccin

    Codigo_cliente

    EmpresaNombre

    Pais

    Direccin

    FechasFechas

    ArticulosArticulosVentasVentas

    Fecha

    Codigo_articulo

    Codigo_cliente

    UnidadesImporte

    Coste

    Beneficio

    Fecha

    Codigo_articulo

    Codigo_cliente

    UnidadesImporte

    Coste

    Beneficio

    Codigo_articulo

    Descripcin

    Tipo_articulo

    Codigo_articulo

    Descripcin

    Tipo_articulo

    FechaFecha

    ClientesClientes

    Codigo_cliente

    Empresa

    NombrePais

    Direccin

    Codigo_cliente

    EmpresaNombre

    Pais

    Direccin

    FechasFechas

    ArticulosArticulosVentasVentas

    Fecha

    Codigo_articulo

    Codigo_cliente

    UnidadesImporte

    Coste

    Beneficio

    Fecha

    Codigo_articulo

    Codigo_cliente

    UnidadesImporte

    Coste

    Beneficio

    Codigo_articulo

    Descripcin

    Tipo_articulo

    Codigo_articulo

    Descripcin

    Tipo_articulo

    FechaFecha

    ClientesClientes

    Tabla de hechos:

    Claves de referenciaAtributos (hechos) [aditividad]

    Clave simple (autonumrica)

    Tablas de dimensin:

    Claves simples (autonumricas)

    Claves de gestinAtributos [criterios de agregacin]

    FechasFechas

    ArticulosArticulos

    VentasVentas

    Id_ventaId_fecha

    Id_articulo

    Id_cliente

    Unidades

    Importe

    Coste

    Beneficio

    Id_ventaId_fecha

    Id_articulo

    Id_cliente

    Unidades

    Importe

    Coste

    Beneficio

    Id_articulo

    Codigo_articulo

    Descripcin

    Tipo_articulo

    Id_articulo

    Codigo_articulo

    Descripcin

    Tipo_articulo

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

    ClientesClientesId_cliente

    Codigo_cliente

    Empresa

    Nombre

    Pais

    Direccin

    Id_cliente

    Codigo_cliente

    Empresa

    Nombre

    Pais

    Direccin

    FechasFechas

    ArticulosArticulos

    VentasVentas

    Id_ventaId_fecha

    Id_articulo

    Id_cliente

    Unidades

    Importe

    Coste

    Beneficio

    Id_ventaId_fecha

    Id_articulo

    Id_cliente

    Unidades

    Importe

    Coste

    Beneficio

    Id_articulo

    Codigo_articulo

    Descripcin

    Tipo_articulo

    Id_articulo

    Codigo_articulo

    Descripcin

    Tipo_articulo

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

    ClientesClientesId_cliente

    Codigo_cliente

    Empresa

    Nombre

    Pais

    Direccin

    Id_cliente

    Codigo_cliente

    Empresa

    Nombre

    Pais

    Direccin

    Esquema dimensional(en Estrella)

    Claves propias sin

    significado

    Independencia ante

    cambios de claves

    de produccin

  • 5/22/2018 r82467

    27/103

  • 5/22/2018 r82467

    28/103

    282007/08Marta Zorrilla - Universidad de Cantabria

    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 detalleLos datos guardados ya no pueden observarse a un nivel de grano ms finoNormalmente 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 dimensionalidadEs preciso ajustar las dimensiones al grano

    4.- Determinar los hechos que deben considerarse:

    Buscar la aditividad de los hechos a observarPorcentajes y proporciones deben guardarse numerador y denominadorEl precio unitario no es aditivo guardar importe = precio x unidades

  • 5/22/2018 r82467

    29/103

    292007/08Marta Zorrilla - Universidad de Cantabria

    Aditividad de las medidas

    Aditividad = tiene sentido sumar segn cualquier dimensin

    Siempre que se pueda, las medidas que se elijan deben ser aditivas

    Hay otras medidas que no son aditivas segn ninguna dimensin

    Ejemplos: existencias de inventario, partidas del presupuesto, .Suelen ser aditivos por todas las dimensiones menos por las de tiempo

    Los datos de actividad (como ventas) son generalmente aditivos

    Los valores de intensidad no suelen ser aditivos

    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)

  • 5/22/2018 r82467

    30/103

    302007/08Marta Zorrilla - Universidad de Cantabria

    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

    Es normal que una dimensin tenga 50 o ms atributos descriptivos

    La dimensin de fecha podra tener ms de 20 atributos

    Un exceso de dimensiones (ms de 25) denota que varias no son independientes

    Con los atributos de las dimensiones se definen las agregaciones

    Hay atributos de fecha que no pueden extraerse mediante funciones SQLEjemplos: da laborable, vacaciones,...

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

    Generalmente, una estrella no tiene ms de 15 tablas de dimensin

    En este caso, deben combinarse en dimensiones ms simples

  • 5/22/2018 r82467

    31/103

    312007/08Marta Zorrilla - Universidad de Cantabria

    Extensibilidad del esquema

    Nuevas dimensiones:

    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 lasanteriores deben figurar como no disponibles

    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 reconstruirlaLa tabla de dimensin puede no necesitar su supresin

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

  • 5/22/2018 r82467

    32/103

    322007/08Marta Zorrilla - Universidad de Cantabria

    Nueva dimensin de promocin

    FechasFechas

    ArticulosArticulos

    VentasVentas

    Id_venta

    Id_fecha

    Id_articulo

    Id_cliente

    Id_promocion

    Unidades

    Importe

    CosteBeneficio

    Id_venta

    Id_fechaId_articulo

    Id_cliente

    Id_promocion

    Unidades

    Importe

    CosteBeneficio

    Id_articulo

    Codigo_articulo

    Descripcin

    Tipo_articulo

    Id_articulo

    Codigo_articulo

    Descripcin

    Tipo_articulo

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

    Id_fechaFecha

    Ao

    Mes

    Dia

    ClientesClientes

    Id_cliente

    Codigo_cliente

    Empresa

    Nombre

    PaisDireccin

    Id_cliente

    Codigo_cliente

    Empresa

    Nombre

    PaisDireccin

    PromocionPromocion

    Id_promocion

    Nombre_prom

    Tipo_prom

    Fecha_ini_prom

    Fecha_fin_prom

    Id_promocion

    Nombre_prom

    Tipo_prom

    Fecha_ini_prom

    Fecha_fin_prom

    Para ello, deber haber una fila en la dimensin que indique que no es aplicableHay que evitar claves nulas en la tabla de hechos

    Ejemplo: ventas sin promocin

  • 5/22/2018 r82467

    33/103

    332007/08Marta Zorrilla - Universidad de Cantabria

    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 Menos datos a almacenar si los eventos son poco frecuentes

    Es malo: no hay registro de lo que no ocurre 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)

    FechasFechas

    ArtculosArtculos

    CoberturapromocinCoberturapromocin

    Id_fecha

    Id_articulo

    Id_almacen

    Id_promocion

    Promotion count(=1)

    Id_fecha

    Id_articulo

    Id_almacen

    Id_promocion

    Promotion count(=1)

    AlmacenesAlmacenes

    PromocinPromocin

    Ej.: Qu productosestuvieron en promocinen qu almacenes y enqu das?

  • 5/22/2018 r82467

    34/103

    342007/08Marta Zorrilla - Universidad de Cantabria

    EmpresasEmpresas

    Id_empresa

    Empresa

    Pas

    Id_empresa

    Empresa

    Pas

    Normalizacin de dimensiones (Snowflaking)

    FechasFechas

    ArticulosArticulos

    VentasVentas

    Id_venta

    Id_fechaId_articulo

    Id_cliente

    Id_promocion

    Unidades

    Importe

    Coste

    Beneficio

    Id_venta

    Id_fechaId_articulo

    Id_cliente

    Id_promocion

    Unidades

    Importe

    Coste

    Beneficio

    Id_articulo

    Codigo_articulo

    Descripcin

    Tipo_articulo

    Id_articulo

    Codigo_articulo

    Descripcin

    Tipo_articulo

    Id_fechaFecha

    Ao

    Mes

    Dia

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

    ClientesClientes

    Id_cliente

    Codigo_cliente

    Id_empresa

    Nombre

    Direccin

    Id_cliente

    Codigo_cliente

    Id_empresa

    Nombre

    Direccin

    PromocionPromocion

    Id_promocion

    Nombre_prom

    Tipo_prom

    Fecha_ini_prom

    Fecha_fin_prom

    Id_promocion

    Nombre_prom

    Tipo_prom

    Fecha_ini_prom

    Fecha_fin_prom

    Algunas dimensiones se jerarquizan en varias tablas (normalizacin). Esquema encopo de nieve (snowflake)

    El nombre de los atributos y valores debera ser nico en las dimensiones jerarquizadas

  • 5/22/2018 r82467

    35/103

    352007/08Marta Zorrilla - Universidad de Cantabria

    Tablas de hechos compartiendo dimensiones

    FechasFechas ArticulosArticulos

    ClientesClientes PromocionPromocion

    [transacciones]

    AlmacenesAlmacenesEmpleadosEmpleados

    ProveedoresProveedores

    VentasVentas

    InventarioInventario

    ComprasCompras

    [transacciones]

    [fotos (snapshot)]

  • 5/22/2018 r82467

    36/103

    362007/08Marta Zorrilla - Universidad de Cantabria

    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

  • 5/22/2018 r82467

    37/103

    372007/08Marta Zorrilla - Universidad de Cantabria

    Gestin de inventario (semiaditivo)

    Producto_ID

    Atributos producto

    Producto_ID

    Atributos producto

    FechaFecha

    I n v e n t a r i o ( sn a p s h o t )I n v e n t a r i o ( sn a p sh o t )

    inventario_IDAlm_ID

    Producto_ID

    Fecha_ID

    Uds_entradas

    Uds_vendidas

    Precio_costePrecio_ult_venta

    inventario_IDAlm_ID

    Producto_ID

    Fecha_ID

    Uds_entradas

    Uds_vendidas

    Precio_costePrecio_ult_venta

    Fecha_ID

    Atributos derivados

    Fecha_ID

    Atributos der ivados

    ProductoProducto

    AlmacnAlmacn

    Alm_ID

    Atributos alm.

    Alm_ID

    At ributos alm.

    Uds_entradas * precio_ult_venta

    Uds_vendidas * (precio_ult_venta precio_coste)Margen de retornode inventario

    =

  • 5/22/2018 r82467

    38/103

    2007/08

    Data warehouse vs data marts

  • 5/22/2018 r82467

    39/103

    392007/08Marta Zorrilla - Universidad de Cantabria

    Arquitectura en Bus del Data Warehouse (Kimball)

    FechasArtculos

    Clientes

    Promocin

    Hechos y dimensiones conformados

    Almacenes

    Empleados

    Proveedores

    Ventas

    Ventas

    Inventar

    ioInve

    ntario

    ComprasCompras

    Permite un diseo del DWH incremental

  • 5/22/2018 r82467

    40/103

    402007/08Marta Zorrilla - Universidad de Cantabria

    Matriz en Bus del BI/DW (Kimball)

    Fech

    as

    Artic

    ulos

    Almacen

    es

    Ventas

    Inventario

    Compras

    Prom

    ocion

    Emple

    ados

    Clien

    tes

    Prov

    eedo

    res

    MovimientosHechos

    Dimensiones

  • 5/22/2018 r82467

    41/103

    412007/08Marta Zorrilla - Universidad de Cantabria

    Dimensiones conformadas (I)

    Cuando se disean las estrellas separadamente, sus

    dimensiones estn concebidas (atributos, nivel dedetalle, ... ) para cada una de ellas

    Al compartir dimensiones, puede suceder que stasno tengan el mismo nivel de detalle en todas lasestrellas

    Es preciso que toda dimensin signifique lo mismopara cada tabla de hechos con la que se relacione. Ejemplos: Fechas, Artculos, Almacenes, Clientes, ...

    Sin dimensiones conformadas, el data warehouse nopodr funcionar como un todo

  • 5/22/2018 r82467

    42/103

    422007/08Marta Zorrilla - Universidad de Cantabria

    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 ymantener 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 enel futuro Las tablas jerarquizadas de un snowflake pueden ser dimensiones de

    otras estrellas

  • 5/22/2018 r82467

    43/103

    432007/08Marta Zorrilla - Universidad de Cantabria

    Hechos conformados

    Los datos de la tabla de hechos generalmente no son

    duplicados en diferentes data marts. Si existen, uno anivel de detalle y otros consolidados.

    Se requiere que los nombres de los hechos sean nicosy 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

  • 5/22/2018 r82467

    44/103

    442007/08Marta Zorrilla - Universidad de Cantabria

    Data marts

    Data mart:

    subconjunto de la informacin de un data warehouse,generalmente de un solo proceso de negocio, que se dirige aun determinado departamento/grupo de usuarios Ejemplos: data mart sobre ventas para dpto comercial y dpto de

    marketing

    Normalmente contiene la informacin de un diagramaen estrella por lo que se suelen utilizar como sinnimos,aunque conceptualmente son diferentes

    El grano de un data mart puede ser ms grueso que enel data warehouse o del mismo detalle

  • 5/22/2018 r82467

    45/103

    452007/08Marta Zorrilla - Universidad de Cantabria

    Data marts (justificacin)

    Frecuentemente hay grupos de usuarios que sloacceden a un subconjunto concreto de los datos

    Descomponer el data warehouse en diferentes datamarts suele mejorar el rendimiento de las consultas alreducir el volumen de datos que se recorren pararesponder

    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 herramientasde acceso de los usuarios tiene sus propias estructuras

    internas

  • 5/22/2018 r82467

    46/103

    462007/08Marta Zorrilla - Universidad de Cantabria

    Data marts (otras consideraciones)

    Para asegurar la consistencia, los data marts debenser cargados a partir del data warehouse y no desdelas fuentes de datos

    El uso de data marts suele suponer costes adicionalesen hardware, software y accesos a la red

    Los procesos de carga de los data marts puedenrequerir un tiempo adicional importante

    Los data marts pueden ser necesarios en control deaccesos: Los SGBD tradicionales slo permiten restringir acceso a

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

    completas de datos

  • 5/22/2018 r82467

    47/103

    2007/08

    Modelo dimensional extendido

  • 5/22/2018 r82467

    48/103

    482007/08Marta Zorrilla - Universidad de Cantabria

    Roles de una dimensin

    Si en una tabla de hechos se hace referencia varias veces a unamisma 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

    FechasFechas

    VentasVentas

    Id_venta

    Id_fecha_pedido

    Id_fecha_entrega

    .

    Unidades

    Total

    .

    Id_venta

    Id_fecha_pedido

    Id_fecha_entrega

    .

    Unidades

    Total

    .

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

  • 5/22/2018 r82467

    49/103

    492007/08Marta Zorrilla - Universidad de Cantabria

    Relaciones n a m

    FechasFechas

    CuentasCuentas

    Movimientos_cuentaMovimientos_cuenta

    Id_movimientoId_fecha

    Id_cuenta

    Id_tipo

    Debe

    Haber

    Id_movimientoId_fecha

    Id_cuenta

    Id_tipo

    Debe

    Haber

    Id_cuenta

    Numero_cuenta

    Descripcin

    Fecha_apertura

    Id_cuenta

    Numero_cuenta

    Descripcin

    Fecha_apertura

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

    Tipo_movimTipo_movim

    Id_tipo

    Codigo_tipo

    Descr_tipo

    Id_tipo

    Codigo_tipo

    Descr_tipo

    ClientesClientes

    Id_cliente

    Codigo_cliente

    Empresa

    Nombre

    Pais

    Direccin

    Id_cliente

    Codigo_cliente

    Empresa

    Nombre

    Pais

    Direccin

    Cuent_clientCuent_client

    Id_cuenta

    Id_clienteFactor_particip

    Id_cuenta

    Id_clienteFactor_particip

    FechasFechas

    CuentasCuentas

    Movimientos_cuentaMovimientos_cuenta

    Id_movimientoId_fecha

    Id_cuenta

    Id_tipo

    Debe

    Haber

    Id_movimientoId_fecha

    Id_cuenta

    Id_tipo

    Debe

    Haber

    Id_cuenta

    Numero_cuenta

    Descripcin

    Fecha_apertura

    Id_cuenta

    Numero_cuenta

    Descripcin

    Fecha_apertura

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

    Id_fecha

    Fecha

    Ao

    Mes

    Dia

    Tipo_movimTipo_movim

    Id_tipo

    Codigo_tipo

    Descr_tipo

    Id_tipo

    Codigo_tipo

    Descr_tipo

    ClientesClientes

    Id_cliente

    Codigo_cliente

    Empresa

    Nombre

    Pais

    Direccin

    Id_cliente

    Codigo_cliente

    Empresa

    Nombre

    Pais

    Direccin

    Cuent_clientCuent_client

    Id_cuenta

    Id_clienteFactor_particip

    Id_cuenta

    Id_clienteFactor_particip

    En ocasiones puede darse el caso de que a una fila de la tabla de hechos le puedacorresponder 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

    En necesario utilizar una tabla puente

  • 5/22/2018 r82467

    50/103

    502007/08Marta Zorrilla - Universidad de Cantabria

    Junk dimensin

    En ocasiones puede ser necesario considerar en la tabla de hechosatributos, 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 estetipo de atributos. El proceso ETL es ms complejo

  • 5/22/2018 r82467

    51/103

    512007/08Marta Zorrilla - Universidad de Cantabria

    Dimensin degenerada

    La mayora de los hechos de una tabla dehechos estn alrededor de un documento decontrol: n de factura, n de pedido,

    Normalmente se trata de identificadores delsistema operacional (til para ETL)

    Estos datos dan lugar a dimensiones vacas ypor ello generalmente se aaden a la tabla de

    hechos donde el nivel de detalle coincide conel del documento de control

    VentasVentas

    Id_venta

    Id_fecha

    Id_articulo

    Id_cliente

    Id_promocionNumero_pedido

    Unidades

    Total

    Coste

    Beneficio

    Id_venta

    Id_fecha

    Id_articulo

    Id_cliente

    Id_promocionNumero_pedido

    Unidades

    Total

    Coste

    Beneficio

  • 5/22/2018 r82467

    52/103

    522007/08Marta Zorrilla - Universidad de Cantabria

    Kimball vs Inmon

    Bil l Inmon's paradigm: Data warehouse is one partof the overall business intelligence system. An

    enterprise has one data warehouse, and data martssource their information from the data warehouse. Inthe data warehouse, information is stored in 3rdnormal form.

    Ralph Kimball's paradigm: Data warehouse is theconglomerate of all data marts within the enterprise.

    Information is always stored in the dimensionalmodel.

  • 5/22/2018 r82467

    53/103

    532007/08Marta Zorrilla - Universidad de Cantabria

    El modelo de datos relacional frente al dimensional

    ModeloRelacional Dimensional

    Objetivos Actualizacin de los datos Consultas estratgicas

    Usuario Slo consultas elementales No puede actualizar datos

    Consistencia Se persigue Se da por supuesta

    Redundancias Se impiden Se permiten

    Datos Actualizados dinmicamente Histricos estticos

    Consultas estr. Costosas y presentacin difcilDiseo Alejado del usuario final Prximo al usuario final

    Sencillas y presentacin fcil

  • 5/22/2018 r82467

    54/103

    2007/08

    Ejemplo delicatessen international

  • 5/22/2018 r82467

    55/103

    552007/08Marta Zorrilla - Universidad de Cantabria

    Ejemplo de aplicacin: Ventas

    Empresa multinacional con sede en Nueva York y enLondres 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 clientesdesde el ao 2002, cuando iniciaron su andadura,hasta mayo del 2004.

  • 5/22/2018 r82467

    56/103

    562007/08Marta Zorrilla - Universidad de Cantabria

    Ejemplo de pedido

  • 5/22/2018 r82467

    57/103

    572007/08Marta Zorrilla - Universidad de Cantabria

    Modelo de datos

  • 5/22/2018 r82467

    58/103

    582007/08Marta Zorrilla - Universidad de Cantabria

    Anlisis

    Producto ms vendido, ms rentable, nmero de unidadesvendidas por pas, por empleado, etc...

    Evolucin de las ventas realizadas en cada pas en los ltimosaos. 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 mesesy 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.

  • 5/22/2018 r82467

    59/103

    592007/08Marta Zorrilla - Universidad de Cantabria

    Parmetros de negocio

    Mtricas Importe lnea Unidades vendidas

    Descuento

    Mtricas derivadas Coste flete

    Beneficio neto

    Tiempo Mensual Trimestral Anual

    Productos -> Categoras

    Empleado -> Jefe -> Superior ...

    Transportistas Clientes -> Localidad -> Regin ->

    Pas

    Nivel de grano: lnea de pedido

    Dimensiones:

  • 5/22/2018 r82467

    60/103

    602007/08Marta Zorrilla - Universidad de Cantabria

    Data mart Ventas

    Clavecompuesta

    Medidas

    Clave autonumrica(_key)

    Claveoperacional(_ID)

    Dimensindegenerada

    Niveles deagregacin

    Atributos

    Di i

  • 5/22/2018 r82467

    61/103

    612007/08Marta Zorrilla - Universidad de Cantabria

    Dimensiones

    Di i

  • 5/22/2018 r82467

    62/103

    622007/08Marta Zorrilla - Universidad de Cantabria

    Dimensiones

    Di i

  • 5/22/2018 r82467

    63/103

    632007/08Marta Zorrilla - Universidad de Cantabria

    Dimensiones

    Dimensiones

  • 5/22/2018 r82467

    64/103

    642007/08Marta Zorrilla - Universidad de Cantabria

    Dimensiones

    Dimensiones

  • 5/22/2018 r82467

    65/103

    652007/08Marta Zorrilla - Universidad de Cantabria

    Dimensiones

    Tabla de hechos

  • 5/22/2018 r82467

    66/103

    662007/08Marta Zorrilla - Universidad de Cantabria

    Tabla de hechos

  • 5/22/2018 r82467

    67/103

    2007/08

    Procesos de extraccin, transformacin y carga

    Marta Zorrilla

    Universidad de Cantabria

    Objetivo

  • 5/22/2018 r82467

    68/103

    812007/08Marta Zorrilla - Universidad de Cantabria

    Objetivo

    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 dehechos.

    BD Relacional (OLTP)

    StagingArea

    Datos detalle

    ETLExtraccinTransformacin

    Carga

    HerramientaETL

    Fuentes de datosinternas

    RR/HH

    Contabilidad

    Compras

    ... ETL

    Fuentes de datosexternas

    INE, INEM,

    Web log,..

    Nota importante

  • 5/22/2018 r82467

    69/103

    822007/08Marta Zorrilla - Universidad de Cantabria

    Nota importante

    El xito de un DW viene dado, en granmedida, por un estudio amplio delnegocio a partir del conocimiento

    extrado de las fuentes de datosexternas y de los responsables de sumantenimiento. No se trata de una

    mera copia de los datos.

    Fuentes de datos de origen

  • 5/22/2018 r82467

    70/103

    832007/08Marta Zorrilla - Universidad de Cantabria

    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, paraposteriormente definir el proceso de carga inicial y desincronizacin.

    A veces, requiere modificaciones en origen (campofechaultmodif, rowversion, tabla de histricos,) para ayudar ala tarea de sincronizacin

    Tareas principales de preprocesado

  • 5/22/2018 r82467

    71/103

    842007/08Marta Zorrilla - Universidad de Cantabria

    Tareas principales de preprocesado

    Limpieza Detectar y eliminar errores, rellenar atributos vacos, resolver

    inconsistencias

    Integracin Identificar la mejor fuente de datos para cada registro

    Transformacin Transformar los datos al contexto del DW: Estandarizar cdigos y

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

    Carga de datos Definir procesos de carga y sincronizacin

    Por qu se han de limpiar los datos?

  • 5/22/2018 r82467

    72/103

    852007/08Marta Zorrilla - Universidad de Cantabria

    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 setiene agregado ej., ocupacin= , sexo a partir del nombre

    con ruido: contienen errores o outliers 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 depersonas)

    Por qu nos encontramos Data Dirty?

  • 5/22/2018 r82467

    73/103

    862007/08Marta Zorrilla - Universidad de Cantabria

    Por qu nos encontramos Data Dirty ?

    Incompletos porque No es necesario el dato cuando se registra

    Consideraciones diferentes cuando el dato es registrado y cuandoes analizado

    Problemas humanos/hardware/software

    Incorrectos debido a 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)

    La importancia de un buen preprocesado

  • 5/22/2018 r82467

    74/103

    872007/08Marta Zorrilla - Universidad de Cantabria

    p p p

    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 deldesarrollo de un data warehouse

    Caractersticas de calidad

  • 5/22/2018 r82467

    75/103

    882007/08Marta Zorrilla - Universidad de Cantabria

    Un dato debe ser: Preciso Completo Consistente

    Creble Con valor aadido Interpretable Accesible Riguroso en el tiempo

    Limpieza de datos (cleaning)

  • 5/22/2018 r82467

    76/103

    892007/08Marta Zorrilla - Universidad de Cantabria

    Importancia Data cleaning is one of the three biggest problems in data

    warehousingRalph Kimball Data cleaning is the number one problem in data

    warehousingDCI survey

    Tareas 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 dedatos de origen. Si no en la tarea de transformacin.

    Missing Data (Datos perdidos)

  • 5/22/2018 r82467

    77/103

    902007/08Marta Zorrilla - Universidad de Cantabria

    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 frmulaBayesiana o un rbol de decisin

    Integracin de datos

  • 5/22/2018 r82467

    78/103

    912007/08Marta Zorrilla - Universidad de Cantabria

    g

    El problema de la redundancia: Aparece cuando se integran mltiples bases de datos

    Identificacin de objetos: el mismo atributo u objeto puede tenerdiferentes nombres en cada base de datos, e incluso, el dominiopuede 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 lasredundancias y las inconsistencias

    Transformacin

  • 5/22/2018 r82467

    79/103

    922007/08Marta Zorrilla - Universidad de Cantabria

    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)

    Transformacin (y 2)

  • 5/22/2018 r82467

    80/103

    932007/08Marta Zorrilla - Universidad de Cantabria

    Poltica de resolucin de claves (cuando procedendatos de varias fuentes)

    Uso de metadata

    Eliminar datos/registros duplicados Situaciones complejas anlisis de correlaciones o

    apoyarse en funciones fuzzy (fuzzy lookup, fuzzygrouping)

    Usar conversiones y combinaciones para generar

    nuevos campos Calculados: importe neto, beneficio,

    Agregados: cuentas, promedios, etc

    Derivados: la nota numrica y textual

    Carga

  • 5/22/2018 r82467

    81/103

    942007/08Marta Zorrilla - Universidad de Cantabria

    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 dedistintas fuentes (p. ej. datos de bolsa Madrid y Nueva York).

    Staging areaBD Relacional (OLTP)

    Staging

    Datos detalle

    ETLExtraccinTransformacin

    Carga

    HerramientaETL

    Fuentes de datosinternas

    Contabilidad

    Compras

    ... ETL

    BD Relacional (OLTP)

    Staging

    Datos detalle

    ETLExtraccinTransformacin

    Carga

    HerramientaETL

    Fuentes de datosinternas

    Contabilidad

    Compras

    ... ETL

  • 5/22/2018 r82467

    82/103

    952007/08Marta Zorrilla - Universidad de Cantabria

    Contiene los datos para cargar el DW. Lnea divisoriaentre operacional y DW.

    Permite realizar la integracin de los datos y sutransformacin.

    Raramente contiene restricciones.

    No se debe preasignar las claves del DW, stas sedeben asignar en la carga.

    Staging

    AreaCargaRR/HH

    Fuentes de datosexternas

    INE, INEM,

    Web log,..

    Staging

    AreaCargaRR/HH

    Fuentes de datosexternas

    INE, INEM,

    Web log,..

  • 5/22/2018 r82467

    83/103

    2007/08

    Cubos OLAP

    Definicin cubos OLAP

  • 5/22/2018 r82467

    84/103

    1082007/08Marta Zorrilla - Universidad de Cantabria

    Estructura de almacenamiento que

    permite realizar diferentes combinacionesde datos para visualizarlos resultados deuna organizacin (indicadores) hasta undeterminado grado de detalle, permitiendonavegarpor sus dimensiones y analizar

    sus datos desde distintos puntos de vista.

    Introduccin a los cubos

  • 5/22/2018 r82467

    85/103

    1092007/08Marta Zorrilla - Universidad de Cantabria

    Un cubo es un subconjunto de datos de un DW quees almacenado en una estructura multidimensional.El cubo contiene los valores agregados de todos losniveles de todas las dimensiones.

    Presenta los datos de inters para el usuario.

    Tiempo

    Clie

    nte

    Produ

    cto

    VENTAS

    Importe total y unidades vendidasdurante este ao de los productos deldepartamento Bebidas, por trimestre y porcategora

    Cmo vari la venta de los productoscrnicos durante el tercer trimestre del2002 en relacin al segundo trimestre?

    Beneficio neto por producto, reageogrfica y ao

    Informe OLAP

  • 5/22/2018 r82467

    86/103

    1102007/08Marta Zorrilla - Universidad de Cantabria

    reageogrfica(cliente)

    Producto Ao

    INFO

    RME

    Componentes de un cubo

  • 5/22/2018 r82467

    87/103

    1112007/08Marta Zorrilla - Universidad de Cantabria

    VENTAS

    ()

    Miembro

    Producto

    Camembert

    Gorgonzola

    Chocolate

    Pat Chinoise

    Ravioli

    Celdas

    ClienteArgentina

    BlgicaCanad

    FranciaItalia

    1999 2000 2001 2002 2003

    TiempoNiveles

    Propiedades

    Producto Stock min. Obsoleto

    Camembert 10 NGorgonzola 20 NChocolate 35 NPat Chinoise 15 NRavioli 125 N

    Da1 Da 2 ....

    Enero Febr. ....

    Trim.1 Trim. 2 ....

    1999 2000 ....

    Definir dimensiones

  • 5/22/2018 r82467

    88/103

    1122007/08Marta Zorrilla - Universidad de Cantabria

    Identificar las columnas de las tablas que participanen 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)

    Dimensin equilibrada

  • 5/22/2018 r82467

    89/103

    1132007/08Marta Zorrilla - Universidad de Cantabria

    Dimensin no equilibrada

  • 5/22/2018 r82467

    90/103

    1142007/08Marta Zorrilla - Universidad de Cantabria

    Dimensin desigual

  • 5/22/2018 r82467

    91/103

    1152007/08Marta Zorrilla - Universidad de Cantabria

    Definir cubos

  • 5/22/2018 r82467

    92/103

    1162007/08Marta Zorrilla - Universidad de Cantabria

    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.

    Los miembros calculados no son almacenados en el cubo yse calculan las agregaciones antes que se efecte laoperacin.

    Beneficio = venta coste

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

    Almacenamiento de los cubos

  • 5/22/2018 r82467

    93/103

    1172007/08Marta Zorrilla - Universidad de Cantabria

    MOLAPMOLAP

    Base Datos Multidimensional

    ROLAPROLAP

    Base Datos Relacional

    Opciones de almacenamiento

    Rendimiento

    Capacidad

    HOLAPHOLAP

    Sistema hbrido

    DOLAPDOLAP

    Desktop OLAP

    Los datos que subyacen en los hipercubosson almacenados junto con las agregacionesen una estructura multidimensional

    Los datos que subyacen en los hipercubosson almacenados junto con las agregacionesen una estructura relacional

    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

    MOLAP

  • 5/22/2018 r82467

    94/103

    1182007/08Marta Zorrilla - Universidad de Cantabria

    Datos y agregaciones se almacenan en el cubo fueradel 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.

    ROLAP

  • 5/22/2018 r82467

    95/103

    1192007/08Marta Zorrilla - Universidad de Cantabria

    Los datos se mantienen en la base de datosrelacional y las agregaciones se almacenan en

    tablas dentro de la base de datos donde seencuentra 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

    HOLAP

  • 5/22/2018 r82467

    96/103

    1202007/08Marta Zorrilla - Universidad de Cantabria

    Los datos se mantienen en la base de datosrelacional 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)

    Almacenar particiones

  • 5/22/2018 r82467

    97/103

    1212007/08Marta Zorrilla - Universidad de Cantabria

    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

    19992000

    2001Particiones

    Cubos virtuales

  • 5/22/2018 r82467

    98/103

    1222007/08Marta Zorrilla - Universidad de Cantabria

    Actan de modo similar a las vistas en el modelorelacional.

    Puede basarse en un nico cubo para mostrarnicamente un subconjunto de medidas ydimensiones (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 almacenamientoadicional.

    Seguridad

  • 5/22/2018 r82467

    99/103

    1232007/08Marta Zorrilla - Universidad de Cantabria

    Cubos slo lectura.

    Cubos Independientes

    Control por la aplicacin que permita descargar el cubo

    Gestionados por el gestor: Por autentificacin de usuario

    Por roles

    Herramientas OLAP

  • 5/22/2018 r82467

    100/103

    1242007/08Marta Zorrilla - Universidad de Cantabria

    Lo interesante no es poder realizar consultas que, encierto modo, se pueden hacer con selecciones,

    proyecciones, concatenaciones y agrupamientostradicionales.

    Lo realmente interesante de las herramientas OLAP

    son sus operadores de refinamiento o manipulacinde consultas.

    DRILL

    ROLL SLICE & DICE

    PIVOT

    Anlisis de datos: operaciones en cubos OLAP

  • 5/22/2018 r82467

    101/103

    1252007/08Marta Zorrilla - Universidad de Cantabria

    Roll up (dril l-up): resumir los datos Subir en la jerarqua o reducir las dimensiones

    Dril l down (roll down): el contrario del anterior bajar en la jerarqua o introducir nuevas dimensiones

    Slice and dice:

    Seleccin y proyeccin

    Pivot (rotar):

    Reorientar el cubo

    Drill:

    Se utilizan las coordenadas dimensionales especificadas por unusuario 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)

    Informe OLAP

  • 5/22/2018 r82467

    102/103

    1262007/08Marta Zorrilla - Universidad de Cantabria

    VENTAS POR REGIN Y SECTOR

    Regin

    Agricul-

    tura

    Comer-

    cio

    Cons-

    truccin Resto

    Trans-

    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

    Agricul-

    tura

    Agricul-

    tura

    Total

    Comer-

    cio

    Comer-

    cio Total

    Cons-

    truccin

    Cons-

    truccin

    Total

    Trans-

    porte

    Trans-

    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

    Los informes permiten mostrar lainformacin con diferentes nivelesde agrupacin.

    Vistas de la misma informacin segn caractersticas de lainformacin (dimensiones)

    Navegacin multi-dimensional para investigar en los datos

    VENTAS POR REGIN

    Regin Total

    Centro 33

    Norte 10

    Sur 17

    Total 60

    Ventas por Sector

    Actividad Total

    Agricultura 1

    Comercio 34

    Construccin 10

    Resto 5

    Transporte 10Total 60

    Herramientas OLAP

  • 5/22/2018 r82467

    103/103

    1272007/08Marta Zorrilla - Universidad de Cantabria

    Las herramientas de OLAP se caracterizan por:

    ofrecer una visin multidimensional de los datos (matricial).

    no imponer restricciones sobre el nmero de dimensiones. ofrecer simetra para las dimensiones.

    permitir definir de forma flexible (sin limitaciones) sobre lasdimensiones: restricciones, agregaciones y jerarquas entre

    ellas.

    ofrecer operadores intuitivos de manipulacin: drill-down, roll-up, slice-and-dice, pivot.

    ser transparentes al tipo de tecnologa que soporta el almacnde datos (ROLAP o MOLAP).