Modelos de Datos Multidimensionales ¿Qué se representa? Objetivos de los MMD: Representar los datos en forma cercana a la intuición del usuario. Resolver problemas planteados en sistemas relacionales. Marcela Varas – Universidad de Concepción – Chile - 2012 Características Se representan los datos como una matriz. En los ejes están los criterios de análisis. En los cruces están los valores a analizar. A esta estructura se le llama Cubo o Hipercubo. Marcela Varas – Universidad de Concepción – Chile - 2012 Características Agregando una 3a. dimensión: Marcela Varas – Universidad de Concepción – Chile - 2012 Características Agregando una 4a. dimensión: Marcela Varas – Universidad de Concepción – Chile - 2012 Estructuras básicas Los Cubos o Hipercubos constan de: Dimensiones: Criterios de análisis de los datos. Macro-objetos del problema. Variables independientes. Ejes en el hipercubo. Medidas Valores o indicadores a analizar. Datos asociados a relaciones entre los objetos del problema. Variables dependientes. Variables en la intersección de las dimensiones. Marcela Varas – Universidad de Concepción – Chile - 2012 Medidas Aditivas, pueden ser sumarizadas a lo largo de cualquier dimensión. Semi – aditivas, pueden no ser sumarizadas a lo largo de una o más dimensiones. Ej: “temperatura”, que puede estar dada por las dimensiones estación, región y fecha. Ej: “nómina” que puede estar dada por las dimensiones empleados y tiempo, pero no producto. No aditivas, no pueden sumarizarse a lo largo de ninguna dimensión. Ej: “cantidad de producto”, que únicamente puede estar dada por la dimensión producto. Marcela Varas – Universidad de Concepción – Chile - 2012 Estructuras básicas En el ejemplo anterior: Dimensiones: Modelo Color Vendedor Fecha Medida: Cantidad Vendida Marcela Varas – Universidad de Concepción – Chile - 2012 Dimensiones Jerarquías: Los valores se organizan en jerarquías (categorías). Por ejemplo: Dimensión:Vendedores Marcela Varas – Universidad de Concepción – Chile - 2012 Dimensiones Jerarquías alternativas: Pueden haber varias jerarquías para una misma dimensión. Por ejemplo: Dimensión Vendedores: Región / Ciudad / Vendedor. Sexo / Rango_Edad / Vendedor. Marcela Varas – Universidad de Concepción – Chile - 2012 Dimensiones Jerarquías Arbitrariamente Complejas Vendedor Fecha Año Región Semestre Ciudad Trimestre Mes Vendedor Marcela Varas – Universidad de Concepción – Chile - 2012 Semana Día Medidas Propiedades: Se ubican en la intersección de algunos valores de las dimensiones. Dado un valor para cada dimensión se puede determinar un valor para la medida. Marcela Varas – Universidad de Concepción – Chile - 2012 Medidas Marcela Varas – Universidad de Concepción – Chile - 2012 Cubos La realidad se modela como un conjunto de cubos. Cada cubo, esta formado por: Un conjunto de Dimensiones organizadas en jerarquías. Un conjunto de Medidas asociadas a cada Coordenada. Es posible moverse en las jerarquías de las dimensiones y observar de esa forma, diferentes visiones de las medidas. Marcela Varas – Universidad de Concepción – Chile - 2012 Ejemplo Marcela Varas – Universidad de Concepción – Chile - 2012 Operaciones Principales operaciones en modelos MD: Slice. Dice. Rotación. Drill-down. Drill-up. Roll-up. Drill-across. Drill-through. Se implementan vía MDX, pero las mayoría de las herramientas de manejo de BI tienen facilidades tipo “drag&drop” para evitar la codificación Marcela Varas – Universidad de Concepción – Chile - 2012 Operaciones: Slice Seleccionar Dimensiones (Slice) Se define un subconjunto del hipercubo especificando sobre qué dimensiones interesa analizar qué medida. Dimensión Colores Color Modelos Modelo Marcela Varas – Universidad de Concepción – Chile - 2012 Medidas Ventas Cantidad Operaciones: Slice Marcela Varas – Universidad de Concepción – Chile - 2012 Operaciones: Dice Filtrado (DICE) Se fijan valores para algunas dimensiones. Marcela Varas – Universidad de Concepción – Chile - 2012 Operaciones: Rotación Rotación. Selecciona el orden de visualización de las dimensiones. Marcela Varas – Universidad de Concepción – Chile - 2012 Operaciones: Drill-up, drill-down Movimientos en la Jerarquía de una Dimensión (Drillup,Drill-down) Marcela Varas – Universidad de Concepción – Chile - 2012 Operaciones: Drill-up, drill-down Drill-Up o Drill-Down pueden verse como ajuste en las escalas de los ejes. Son agrupamientos y des-agrupamientos. Marcela Varas – Universidad de Concepción – Chile - 2012 Operaciones: Roll-up Consolidación (Roll-Up). Calcula las medidas en función de agrupamientos. Realiza el re-cálculo de la medida de acuerdo a los ajustes de escala. Marcela Varas – Universidad de Concepción – Chile - 2012 Operaciones: Roll-up Propiedades: Se debe especificar cuál es la operación que calcula el nuevo valor de la medida. Esta operación puede ser: suma, promedio, etc. Pueden haber medidas con comportamientos diferentes. Por ejemplo: Cantidades de productos vendidos se acumulan. Notas en exámenes se promedian. Marcela Varas – Universidad de Concepción – Chile - 2012 Operaciones: Roll-up En general cualquier operación de navegación en un cubo implica un nuevo cálculo de la medida. Hay dos momentos posibles: Se asocia a la medida una operación por defecto. En el momento de hacer un movimiento en la dimensión se especifica cómo se hacen los cálculos. Marcela Varas – Universidad de Concepción – Chile - 2012 Operaciones: Drill-Across Drill-Across Relaciona dos cubos. Marcela Varas – Universidad de Concepción – Chile - 2012 Operaciones: Drill-Through Drill-Through. Accede a datos descriptivos Marcela Varas – Universidad de Concepción – Chile - 2012 Agenda Inteligencia de Negocios: Pequeña Introducción Almacenes de Datos: ¿Qué son? Modelos de Datos Multidimensionales: ¿Qué se representa? Desarrollo de un DW: ¿Cómo se hace? Diseño Lógico: ¿Cómo nos acercamos a la implementación? Enfoques Diseño Conceptual: ¿Cómo podemos diseñar conceptualmente un DW? Conclusiones Marcela Varas – Universidad de Concepción – Chile - 2012 Desarrollo de un DW ¿Cómo se hace? Proceso de Desarrollo de un DW Componentes a desarrollar: Mecanismo de Adquisición de Datos Almacenamiento del DW Mecanismos de acceso para usuarios finales Para el DW Elegir Estrategia de Desarrollo Identificar Datos Fuentes a considerar Diseñar el DW a nivel Conceptual Diseñar el DW a nivel Lógico Implementar Planificar la Carga de Datos Operar Marcela Varas – Universidad de Concepción – Chile - 2012 Desarrollo de un DW Necesidades de Usuarios Integración Bases de Datos Fuentes Esquema Integrado BD Fuentes E T L DW Esquema Lógico DW Marcela Varas – Universidad de Concepción – Chile - 2012 Esquema Conceptual del DW El DW Tipo/s de DBMS. Relacional, Multidimensional, o ambos. Concepción del DW. Diseño e implementación de la carga. Administración del DW: Cómo describir y documentar los datos ? Qué información hay que monitorear ? Cómo organizar y realizar la administración del DW ? Mediante qué tipo de herramientas ? Marcela Varas – Universidad de Concepción – Chile - 2012 DBMS para el Data Warehouse DBMSs Relacionales: Solución "universal". Soportan el grueso de las aplicaciones DW. Dificultades para resolver eficientemente consultas dimensionales. DBMSs Multi-Dimensionales: Representan los datos del problema en términos de dimensiones. Estructuras de almacenamiento están diseñadas para optimizar consultas dimensionales. Marcela Varas – Universidad de Concepción – Chile - 2012 Diseño del Data Warehouse Elementos base: Por lo tanto … Las operaciones principales son consultas. La carga/actualización no es transaccional. Importancia de la calidad y facilidad de acceso. El DW se construye en capas asignando propiedades a las tablas de cada una. Se suele des normalizar y materializar cálculos. En cuanto a complejidad … El diseño del DW y programación de la carga constituyen las tareas más costosos y complejas. Marcela Varas – Universidad de Concepción – Chile - 2012 El proceso de ETL BD Fuente ODS Data Warehouse Corporativo Data Marts Indicadores Agregados Históricos … Datos Detallados Datos homogeneizados Datos sin preparar Describen los otros datos Transformaci ones Datos preparados Datos homogeneizados, integrados, preparar METADATA Marcela Varas – Universidad de Concepción – Chile - 2012 Datos más preparados y especializados Agenda Inteligencia de Negocios: Pequeña Introducción Almacenes de Datos: ¿Qué son? Modelos de Datos Multidimensionales: ¿Qué se representa? Desarrollo de un DW: ¿Cómo se hace? Diseño Lógico: ¿Cómo nos acercamos a la implementación? Enfoques Diseño Conceptual: ¿Cómo podemos diseñar conceptualmente un DW? Conclusiones Marcela Varas – Universidad de Concepción – Chile - 2012 Diseño Lógico ¿Cómo nos acercamos a la implementación? Tablas de Hecho La tabla de hechos es la tabla primaria dentro de un modelo multidimensional, contiene los valores de las medidas de negocios, por ejemplo: ventas promedio, número de unidades vendidas, etc. Marcela Varas – Universidad de Concepción – Chile - 2012 Tablas de Dimensiones Las tablas de dimensiones contienen el detalle de los valores que se encuentran asociados a la tabla de hechos. Generalmente tienen muchas columnas o atributos. Marcela Varas – Universidad de Concepción – Chile - 2012 Esquemas de Representación Esquema Estrella Esquema Copo de Nieve Marcela Varas – Universidad de Concepción – Chile - 2012 Esquema Estrella Compuesto de una tabla central con una clave primaria compuesta, denominada tabla de hechos, y un conjunto de dimensiones. Cada una de las tablas de dimensiones tiene una clave primaria que corresponde exactamente con uno de los componentes de la clave compuesta de la tabla de hechos. Las tablas de hechos, además de sus campos clave, contienen una o más medidas, indicadores o “hechos”. Las medidas más útiles en una tabla de hechos son numéricas y aditivas. En el modelo estrella las dimensiones no se normalizan. Con ello se logra minimizar el número de uniones y, por consiguiente, incrementar el rendimiento de las consultas. Marcela Varas – Universidad de Concepción – Chile - 2012 Esquema Estrella Marcela Varas – Universidad de Concepción – Chile - 2012 Esquema Copo de Nieve Derivado del esquema en estrella, en el que las tablas de dimensión se normalizan en múltiples tablas. La tabla de hechos deja de ser la única tabla del esquema que se relaciona con otras tablas, y aparecen nuevos joins gracias a que las dimensiones de análisis se representan ahora en tablas de dimensión normalizadas. En la estructura dimensional normalizada, la tabla que representa el nivel base de la dimensión es la que hace join directamente con la tabla de hechos. La diferencia entre ambos esquemas (estrella y copo de nieve) reside entonces en la estructura de las tablas de dimensión. Marcela Varas – Universidad de Concepción – Chile - 2012 Esquema Copo de Nieve Marcela Varas – Universidad de Concepción – Chile - 2012 Agenda Inteligencia de Negocios: Pequeña Introducción Almacenes de Datos: ¿Qué son? Modelos de Datos Multidimensionales: ¿Qué se representa? Desarrollo de un DW: ¿Cómo se hace? Diseño Lógico: ¿Cómo nos acercamos a la implementación? Enfoques Diseño Conceptual: ¿Cómo podemos diseñar conceptualmente un DW? Conclusiones Marcela Varas – Universidad de Concepción – Chile - 2012 Enfoques Diseño Conceptual ¿Cómo podemos diseñar conceptualmente un DW? Enfoques de Diseño Conceptual Análisis desde requerimientos: Análisis desde datos: Datos fuentes son el universo de información. El DW se obtiene transformando las fuentes. Aplicable cuando los requerimientos están poco claros. Enfoque MDA Los requerimientos son el universo de información. Las bases fuente se relacionarán luego. Aplicable cuando se tienen Bases Fuentes complejas. (Se analizan con los requerimientos en mente). Ortogonal a los enfoques previos Se basa en la transformación de modelos, ya sea desde los requerimientos o los datos fuentes Aún en desarrollo Alineamiento Estratégico Marcela Varas – Universidad de Concepción – Chile - 2012 Estrategia Basada en Datos Método propuesto por Matteo Golfarelli Parte desde el MER y entrega un modelo de los cubos a implementar. Tiene un fuerte uso de los grafos y sus propiedades. Marcela Varas – Universidad de Concepción – Chile - 2012 MER CAUSAL (1,1) BECA CRÉDITO (1,1) (1,1) tiene tiene tiene (0,n) (0,n) (0,n) (1,n) RAMO Ramo_toma (1,n) pertenece (1,n) MALLA (1,n) (1,1) ALUMNO (1,1) Viene de (1,n) COLEGIO Marcela Varas – Universidad de Concepción – Chile - 2012 (1,1) tiene INGRESO (0,1) tiene (1,1) TITULACIÓN Cubo para una medida Medida o hecho de interés: Cantidad de años promedios que los alumnos demoran en salir de la Universidad. Dimensiones: Sexo, Colegio de procedencia, Zona de procedencia. Marcela Varas – Universidad de Concepción – Chile - 2012 Construcción del árbol de atributos % Año Créd. Electivos Id_Sem Profesor CRÉDITO Genéro Créd. Especiales Cuidad Origen Fecha vencimiento BECA Carrera Ptje. Sección INGRESO RAMO Id. Sem Alumno ALUMNO RAMO MALLA TITULACIÓN Créd. Obligatorio Nota Créditos Individuo CAUSAL COLEGIO Nota Año Id_sem Estado Articulo Nombre Detalle Financiamiento Marcela Varas – Universidad de Concepción – Chile - 2012 Tipo Educ. Poda y repoblación del árbol Promedio de años necesarios para Titularse Nota Puntaje Id_sem TITULACION Id_sem INGRESO Carrera Ciudad ALUMNO Género Género Titulación Nota de Titulación - Cantidad promedio de Años Puntaje de Entrada Marcela Varas – Universidad de Concepción – Chile - 2012 Visión General MER Promedio de años necesarios para Titularse CAUSAL BECA Puntaje Nota TITULACION tiene tiene Id_sem tiene INGRESO Ciudad ALUMNO Carrera (0,n) Género (1,n) RAMO Ramo_toma (1,n) (1,n) Género (0,n) (0,n) (1,1) ALUMNO (1,1) (1,1) tiene INGRESO Titulación (0,1) - Cantidad promedio de Años Nota de Titulación pertenece (1,n) MALLA CRÉDITO (1,1) Id_sem (1,1) (1,1) Viene de (1,n) COLEGIO Marcela Varas – Universidad de Concepción – Chile - 2012 tiene Puntaje de (1,1) Entrada TITULACIÓN Implementación Se eligió SQLServer + Analysis Services SQLServer tiene las tablas fuentes. Analysis Services tiene los cubos. Los cubos pueden ser exportados a aplicaciones de ofimática tales como Word o Excel. Marcela Varas – Universidad de Concepción – Chile - 2012 El cubo en Analysis Services Promedio de años necesarios para Titularse Nota Puntaje Id_sem TITULACION Id_sem INGRESO Carrera Ciudad ALUMNO Género Género Titulación Nota de Titulación - Cantidad promedio de Años Puntaje de Entrada Marcela Varas – Universidad de Concepción – Chile - 2012 Una visión de los datos… Marcela Varas – Universidad de Concepción – Chile - 2012 Centrada en los Requerimientos Metodología basada en el ciclo de desarrollo de software y BD tipico Lenguaje de Modelación CMDM (Carpani) Se centra en identificar qué se requiere, luego identifica dónde se encuentra la información necesaria. Si no está disponible, se deben desarrollar los sistemas OLTP que la gestionen. Marcela Varas – Universidad de Concepción – Chile - 2012 Indicadores Para una Universidad Marcela Varas – Universidad de Concepción – Chile - 2012 Diseño Lógico Marcela Varas – Universidad de Concepción – Chile - 2012 Cruce de Dimensión Marcela Varas – Universidad de Concepción – Chile - 2012 Observaciones En este caso se implementaron un conjunto de dashboards y otros reportes de gestión con indicadores relevantes para la gestión universitaria (se utilizó el software CorVu) Marcela Varas – Universidad de Concepción – Chile - 2012 Agenda Inteligencia de Negocios: Pequeña Introducción Almacenes de Datos: ¿Qué son? Modelos de Datos Multidimensionales: ¿Qué se representa? Desarrollo de un DW: ¿Cómo se hace? Diseño Lógico: ¿Cómo nos acercamos a la implementación? Enfoques Diseño Conceptual: ¿Cómo podemos diseñar conceptualmente un DW? Conclusiones Marcela Varas – Universidad de Concepción – Chile - 2012 Conclusiones Conclusiones DW es un elemento clave de cualquier sistema de análisis (BI) Es necesario comprender bien “el negocio” para desarrollar aplicaciones que sean útiles Perfil altamente demandado en Chile La implementación aún es inmadura Complejidades asociadas a la falta de metoldologías ampliamente aceptadas de diseño (ni lenguajes) Grandes volúmenes de información Costo alto Relevancia de procesos ETL Marcela Varas – Universidad de Concepción – Chile - 2012 Desafíos Mejorar el proceso de desarrollo (MDA con UML?) Manejar información cualitativa en las medidas (FuzzyDW) Operar en un FuzzyDW Manejar información hetereogénea Proveer sistemas realmente usables, confiables y flexibles Mejorar los lenguajes de consulta (MDX) Marcela Varas – Universidad de Concepción – Chile - 2012 Referencias Referencias Kimball, R. (1997). The Data Warehouse Toolkit: Practical Techniques for Building Dimensional Data Warehouses. New York: John Wiley and Sons. Livingston, G. R. (1997). Database Design for Data Warehouses: The Basic Requirements. En H. E. R. Barquin, Planning and Designing the Data Warehouse. New Jersey: Prentice Hall. F. Carpani. “CMDM: Un Modelo Conceptual para la Especificación de Bases de Datos Multidimensionales”, Tesis para optar al grado de Maestría. Universidad de la República Uruguay. 2000.URL:http://www.fing.edu.uy/inco/pedeciba/bibliote/te sis/tesis-carpani.pdf. Marcela Varas – Universidad de Concepción – Chile - 2012 S. Chaudhuri, U. Dayal. “An Overview of Data Warehousing and OLAP Technology” SIGMOD Record, Vol. 26, pp. 65-74, 1997. Pearson. 2004. ISBN 8420540250. M. Golfarelli, D. Maio, S. Rizzi, “The dimensional fact model: A conceptual model for data warehouses”. International Journal of Cooperative Information Systems, Vol.7, Issue 3, pp. 215-247, 1998. W. Inmon, “Building the Data Warehouse”. John Wiley & Sons, 2002. J-N. Mazón, J. Trujillo, “An MDA approach for the development of data warehouses”. Decision Support Systems Vol. 45, pp. 41-58, 2008. Marcela Varas – Universidad de Concepción – Chile - 2012 J-N. Mazón, J. Lechtenbörger, J. Trujillo: “A survey on summarizability issues in multidimensional modeling”. Data Knowl. Eng.Vol. 68. Issue 12, pp. 1452-1469. 2009. J. Trujillo, M. Palomar, J. Gómez., Il-Yeol Song, “Designing Data Warehouses with OO Conceptual Models”. IEEE Computer.Vol. 34, pp. 66-75, 2001. Marcela Varas – Universidad de Concepción – Chile - 2012