370 likes | 565 Views
Data Warehouse. Administración de Bases de Datos Fernando Bleye 7/5/2003. Introducción ¿Qué es un Sistema de Información de Gestión (SIG)?. “Es el proceso por el cual los datos que son importantes para una empresa son identificados, analizados y recolectados para su posterior uso”.
E N D
Data Warehouse Administración de Bases de Datos Fernando Bleye 7/5/2003
Introducción¿Qué es un Sistema de Información de Gestión (SIG)? • “Es el proceso por el cual los datos que son importantes para una empresa son identificados, analizados y recolectados para su posterior uso”. • El primer objetivo de un SIG es incrementar la “inteligencia” de los procesos del negocio (Business Intelligence). • El SIG debe permitir observar el estado del negocio y el descubrimiento de información. • En los últimos años ha cambiado la forma de entender los SIG: • Mercados cambiantes y altamente competitivos. • Las nuevas tecnologías ofrecen nuevas oportunidades. • Existe deseo de conocer mejor el comportamiento de los clientes. El aumento espectacular del volumen de datos hace evidente la necesidad de una infraestructura para la logística de la información.
Perspectiva histórica de los Sistemas de Información • Primeros sistemas de información basados en aplicaciones. • Generan ficheros específicos y/o utilizan bases de datos normalmente heterogéneas entre ellas donde almacenan la información. • Diseño marcado por las necesidades puntuales del día a día de diferentes departamentos del negocio. • La integración entre aplicaciones no era un objetivo. • Aunque la tecnología ha mejorado, perdura la falta de integración, consistencia, coherencia (limitaciones) , sin embargo la demanda de información crece. • Problema: Las aplicaciones siguen profundamente marcadas por las primeras consideraciones que dirigieron su desarrollo. • La arquitectura sobre la que se construyeron estas aplicaciones (OLTP) no es válida para soportar las necesidades de los sistemas de información de gestión actuales. • En estos sistemas la arquitectura de los datos nunca fue un objetivo del negocio.
Nacimiento del conceptoData Warehouse • La complejidad y dinamismo de la “economía digital” han situado en un lugar predominante a los gestores, desvelando las dificultades de acceso a la información de la empresa. • La calidad y disponibilidad de la información se convierte en un objetivo primordial del negocio. • Se apunta como primera solución crear una gran base de datos virtual para integrar los datos de las aplicaciones existentes, una vez que hayan sido depurados y reconciliadas sus disparidades. Esto posibilitará que los datos sean utilizados para la gestión. • La solución pasa por separar el procesamiento en dos grandes categorías • Proceso Operacional (OLTP). • Procesamiento para el sistema de soporte de decisiones (OLAP/DSS/DM). • Como consecuencia de lo anterior aparece el concepto de Data Warehouse
Definición Data Warehouse • Data Warehousing / Data Warehouse / DW(Almacenes de datos) • “El Data Warehouse es un componente de la arquitectura de sistemas, temático, integrado, no volátil y dependiente del tiempo diseñado para ayudar en la toma de decisiones.”[W. H. Inmon (considerado el padre del concepto DW) – 1992] • “Conjunto de tecnologías de soporte a la toma de decisión, cuyo objeto es que quien trabaja con los conocimientos (ejecutivo, director, analista) pueda tomar decisiones de manera más rápida y eficaz.”[Chaudhuri y Dayal – 1997]
Pero…, ¿Qué es un Data Warehouse? • El DW es un conjunto de tecnologías, NO UN PRODUCTO. Debe construirse, paso a paso.Es una arquitectura que debe construirse de acuerdo a las necesidades y entorno específico del cliente, y debe construirse de manera ITERATIVA, para consolidar y administrar datos de varias fuentes con el propósito de conseguir en un período de tiempo aceptable y gracias a las nuevas capacidades de procesamiento y técnicas analíticas: • Responder preguntas de negocio (OLAP - Análisis de datos) • Ayudar en la toma de decisiones (DSS – EIS) • Descubrir conocimiento (Data Mining - Minería de datos) • El Data Warehouse es una arquitectura bien definida cuyo objetivo inicial es satisfacer la demanda de los gestores de obtener una visión integrada de la empresa y su entorno.
Terminología y definiciones • OLAP (On-Line Analytical Processing o procesamiento analítico on-line) • Se define como análisis rápido de información multidimensional compartida.[Richard Creeth, Nigel Pendse] • Herramientas OLAP (para análisis de datos en DW): • Frontales para el acceso a los datos del DW (o bases de datos multidimensionales también denominadas OLAP) basados en el modelo de datos multidimensional. • DSS (Decision-Support Systems o sistemas de soporte a la toma de decisiones)EIS (Executive Information Systems o sistemas de información ejecutiva) • Hacen alusión a las herramientas para obtener datos de nivel superior del DW para la toma de decisiones. • Herramientas DSS / EIS: • Objetivo: apoyar la toma de decisiones mediante la aplicación de modelos matemáticos y estadísticos, o de conocimiento específico a un problema particular. • Son un sistema integrado de planificación y tratamiento de la información que incorpora la habilidad de consultar los datos del DW en una forma determinada, analizar la información obtenida y predecir, en base a unos determinados modelos, el impacto de las futuras decisiones antes de llevarlas a la práctica. • DM (Data Mining o minería de datos) • Se emplea como parte del proceso de descubrir conocimiento: • Reglas de asociación, Patrones secuenciales, Árboles de clasificación. • Objetivos: • Predicción, Identificación, Clasificación, Optimización.
Terminología y definiciones • OLTP (On-Line Transaction Processing o procesamiento de transacciónes on-line) • Los datos que una empresa utiliza como soporte a los negocios se les denomina “operacionales”. Los sistemas usados con el fin de recogerlos u operar con ellos reciben el nombre de OLTP. • Es el procesamiento de datos soportado por las bases de datos tradicionales (también denominadas transaccionales). • BDs Relacionales (normalmente), Red, Jerárquicas, … • Operaciones de: Añadir, Modificar, Eliminar, Consulta. • Optimizado para transacciones que habitualmente sólo abarcan una pequeña parte de una base de datos. • Orientado a conseguir la máxima eficacia y rapidez en las transacciones (actualizaciones) individuales de los datos, y no a su análisis de forma agregada. • Bases de datos transaccionales (basadas en el modelo de datos ER) no pueden ser optimizadas para OLAP, DSS o Minería de Datos.
Terminología y definiciones • BI (Business Intelligence) • Considerado como una Tecnología de Información • Describe un conjunto de conceptos y métodos diseñados para mejorar la toma de decisiones en los negocios a través del uso de sistemas basados en hechos. Los sistemas basados en hechos abarcan: • Sistemas de información ejecutiva - EIS (Executive Information Systems) • Sistemas de soporte a la toma de decisiones - DSS (Decision-Support Systems) • Procesamiento analítico on-line - OLAP (On-Line Analytical Processing) • Minería de datos - DM (Data Mining) • Herramientas de visualización de datos – Data Visualization • Sistemas de información Geográfica - Geoghaphic Information Systems [Howard Dresner] • Es el conjunto de tecnologías que permiten a las empresas utilizar la información disponible en cualquier parte de la organización para hacer mejores análisis, descubrir nuevas oportunidades y tomar mejores decisiones estratégicas.
Terminología y definiciones • Metadata en un Data Warehouse • Metadata es la información sobre los datos que se introducen, transforman y existen en el DW. (Datos acerca de los datos) • Metadata normalmente incluye los siguientes elementos: • Las estructuras de datos. • Las definiciones del sistema de registro desde el cual se construye el DW. • Las especificaciones de transformaciones de datos que deben realizarse para la carga de nuevos datos en el DW desde las fuentes de datos. • El modelo de datos del DW. • Información de cuando los nuevos elementos de datos se agregan al DW y cuando los elementos de datos antiguos se eliminan o se resumen. • Los niveles de sumarización, el método de sumarización y las tablas de registros de el DW.
Sistemas operacionales (OLTP) vsSistemas analíticos (OLAP, DSS, DM)
Base de Datos operativa vsData Warehouse • Una base de datos operativa: • Almacena la información de un sector del negocio. • Se actualiza a medida que llegan datos que deban ser almacenados. • Se opera mediante los cuatro mecanismos clásicos “añadir-eliminar-modificar-consulta”. • Normalmente se orienta hacia la elaboración de informes periódicos. • Suele manejar “pequeños” volúmenes de datos. • Entorno optimizado para muchas transacciones (con gran cantidad de actualizaciones). • Sirve de infraestructura al día a día de las funciones de explotación de una empresa. • Un Data Warehouse: • Almacena información integrada de los distintos sectores del negocio. • Su actualización se realiza a intervalos regulares (típicamente una al día) dentro de un proceso controlado, y tras realizar un preprocesado de los datos que se van a almacenar. • Su orientación es hacia la consulta del estado del negocio y obtención de información para ayuda en la toma de decisiones estratégicas. • Se ofrece información bajo demanda (análisis mediante el uso de herramientas de generación de informes que consultan el data warehouse). • Refleja el modelo de negocio, frente al modelo de proceso.
Características de un Data Warehouse • Un DW es normalmente un almacén de datos integrados proveniente de fuentes diversas (datos de “una” empresa o negocio): • Datos externos de ficheros generados por aplicaciones ad hoc. • Administración, Contabilidad, Facturación… • Datos provenientes de diferentes sistemas de BDs transaccionales (datos operacionales), que normalmente son heterogéneas. • Datos generados por las herramientas de análisis y de obtención de información y conocimiento a partir de los datos originales del DW. • Los datos almacenados en el DW mantienen series de tiempo y de tendencia. • Mayor cantidad de datos históricos que los contenidos normalmente por las BDs transaccionales.
Características de un Data Warehouse • Abarcan gran cantidad de datos (suelen ser del orden de Terabytes). • Tienen un orden de magnitud (a veces dos) superior al de las bases de datos fuente. • El volumen de datos es tratado por medio de: • Almacenes de datos en grandes empresasSon proyectos de gran tamaño que requieren una enorme inversión de tiempo y recursos. • *Almacenes de datos virtualesProporcionan vistas de bases de datos operacionales que se materializan para un acceso eficiente. • Data marts (mercadillos de datos)Tienen generalmente como objetivo un subconjunto de la organización de la empresa (por ejemplo un departamento). • La tarea más difícil y que más tiempo consume en la construcción de un DW es extraer, transformar y cargar los datos en él.
Proceso de Extracción, Transformación y Carga (ETL) de datos en el DW Carga Transformación OLAP Extracción y Limpiado DW DSS DM DataWarehouse DatosPreprocesados • Fuentes de Datos • Bases de datos • Ficheros
Modelado de datos:El modelo de datos Relacional • Ejemplo de Modelo Relacional Entidad-Relación (ER) de una empresa
Modelo de datos para DW:El modelo de datos Relacional (KO) • Situación que se presenta para trabajar en análisis de datos en el modelo ER: • Legibilidad limitada.Los usuarios finales no son capaces de entender el modelo ER (normalmente no son informáticos). Evidentemente, por tanto, no pueden "navegar" por dicho modelo en busca de información. • Dificultad para las herramientas de consulta en el acceso a un modelo ER general.A menudo presentan prestaciones mediocres o inaceptables cuando se trabaja en entornos de grandes volúmenes de información (problemas de optimización de consultas) • La utilización de la técnica de modelado ER frustra la recuperación de información intuitiva y con alto rendimiento (característica deseable de un Data Warehouse). Modelo de datos no apropiado para Almacenes de datos (DW)
Modelado de datos:El modelo de datos multidimensional • Características del Modelo Dimensional (o Multidimensional) • Un modelo dimensional está compuesto de: • Una tabla con una clave primaria compuesta, denominada tabla de hechos y un conjunto de tablas más pequeñas denominadas tablas de dimensiones. • Cada una de las tablas de dimensión tiene una clave primaria que corresponde exactamente con uno de los componentes de la clave compuesta de la tabla de hechos. • La tabla de hechos, debido a su clave primaria compuesta de dos o más claves ajenas, siempre expresa una relación 'n' a 'n'. Las tablas de hechos, además de sus campos clave, contienen una o más medidas numéricas o "hechos", que se "dan" para la combinación de las claves que definen cada registro.
Modelado de datos:El modelo de datos multidimensional • Características del Modelo Dimensional (o Multidimensional) • Tiene estructura que asemeja una estrella (o un copo de nieve): • Una gran tabla central o tabla de hechos está conectada con un conjunto de tablas (una por dimensión) dispuestas de manera radial alrededor de esta tabla central. Recibe a menudo el nombre de "star join" o modelado en estrella. • El modelado en estrella es altamente desnormalizado. Con ello se logra minimizar el número de uniones y, por consiguiente, incrementar el rendimiento de las consultas • Una variante del modelo en estrella es el modelo en copo de nieve o snowflake. En este modelado se normalizan las dimensiones (más de una tabla por dimensión) creando así jerarquías en las mismas y conservando lo esencial del modelo en estrella: las tablas de hechos • Permite el empleo de diferentes bases de datos: • Denominado ROLAP, cuando se aplica el modelo dimensional a una base de datos relacional. • Denominado MOLAP, cuando se aplica el modelo dimensional sobre base de datos dimensional.
Modelado de datos:El modelo de datos multidimensional • Ejemplo de Modelo Dimensional (o Multidimensional)
Modelado de datos:El modelo de datos multidimensional • Visualización del Modelo Dimensional mediante representación en cubo
Modelado de datos:El modelo de datos multidimensional • Las herramientas OLAP permiten navegar a través de los datos almacenados en un modelo de datos dimensional para analizarlos dinámicamente desde una perspectiva multidimensional, es decir, considerando unas variables en relación con otras y no de forma independiente entre sí, permitiendo enfocar el análisis desde distintos puntos de vista (por ejemplo se podría rotar el cubo de datos anterior para mostrar las ventas por producto a modo de filas). Esta visión multidimensional de los datos puede visualizarse como un “cubo de Rubik”, que puede girarse para examinarlo desde distintos puntos de vista, y del que se pueden seleccionar distintas “rodajas” o “cubos” dependiendo de los aspectos de interés para el análisis.
Modelo de datos para DW:El modelo de datos multidimensional • Situación que se presenta para trabajar en análisis de los datos en el modelo Dimensional • El modelo de datos es intuitivo. • Es el mismo que manejan habitualmente los usuarios finales: Ejecutivos, Directivos y Analistas. • Permite a las herramientas OLAP analizar los datos desde una perspectiva multidimensional (una tabla de hechos puede verse desde la perspectiva de varias tablas de dimensiones – técnica denominada pivotación o rotación). • Permite crear fácilmente representaciones jerárquicas: • Exploración ascendente (roll-up) • Desplaza la jerarquía hacia arriba agrupando en unidades mayores (de grano más grueso) a través de una dimensión (por ejemplo, resumiendo los datos semanales en trimestrales o anuales) • Exploración descendente (drill-down) • Se da una visión más concreta (de grano más fino), por ejemplo, disgregar las ventas por provincias en ciudades, y clasificar los productos por tipos o categorías.
Modelo de datos para DW:El modelo de datos multidimensional • Situación que se presenta para trabajar en análisis de los datos en el modelo Dimensional • Las ampliaciones del modelo son sencillas y transparentes para las aplicaciones y consultas que ya trabajan con el modelo: • Añadir nuevos atributos a la tabla de hechos • Añadir nuevas tablas de dimensiones • Existe un número creciente de utilidades administrativas y aplicaciones que gestionan y utilizan los agregados (dependientes del modelo dimensional). • Los agregados son resúmenes de registros (redundantes con la información ya existente en el DW) y son empleados para mejorar el rendimiento de las consultas.
Pasos para el desarrollo de un DW • Identificar los requerimientos de usuario y delimitar el ámbito del proyecto. • Desarrollar el modelo de datos lógico del DW (modelo de datos dimensional). • Implementar la arquitectura (seleccionar tecnologías, hardware y software) que constituirá la infraestructura del DW. • Implementar físicamente el modelo lógico de datos crear la base de datos. • Identificar las fuentes de datos -sistemas operacionales y/o externos- del DW. • Describir los procesos de conversión necesarios para la incorporación de los datos origen al DW.
Pasos para el desarrollo de un DW • Documentar el metadata del DW. • Seleccionar y/o desarrollar los programas de extracción, limpieza, conversión e integración de los datos fuente. • Cargar la base de datos del DW con los programas anteriores. • Verificar con el usuario final la calidad de los datos, disponibilidad y rendimiento. • El siguiente paso “debería” ser reconstruir de forma incremental (iteraciones), las entradas al sistema de procesamiento para establecer un entorno bien definido que permita las cargas automáticas de datos, y a lo largo del tiempo, eliminar completamente todas las aplicaciones viejas, desintegradas y con problemas de mantenimiento.
Software en un Data WarehouseBases de datos usadas para data warehouse
Software en un Data WarehouseHerramientas de consulta y reporte
Software en un Data WarehouseHerramientas de base de datos multidimensional/olap
Software en un Data WarehouseSistemas de información ejecutivos
Data Mining (DM)Minería de datosIntroducción • La idea clave es que los datos contienen más información oculta de la que se ve a simple vista. • KDD (Knowlegde Discovery in Databases): descubrimiento de conocimiento en bases de datos • KDD = proceso completo:“extracción no trivial de conocimiento implícito, previamente desconocido y potencialmente útil, a partir de una base de datos”[Frawley et al., 1991] • DM = etapa de descubrimiento en el proceso de KDD:“paso consistente en el uso de algoritmos concretos que generan una enumeración de patrones a partir de los datos preprocesados”[Fayyad et al., 1996]
Data Mining (DM)Minería de datosAplicaciones • Informática: • Soporte al Diseño de Bases de Datos. • Reverse Engineering (nomalizar bases de datos desnormalizadas). • Mejora de Calidad de Datos. • Mejora de Consultas (si se descubren dependencias funcionales) • Comercio/Marketing: • Identificar patrones de compra de los clientes. • Buscar asociaciones entre clientes y características demográficas. • Predecir respuesta a campañas de marketing. • Análisis de cestas de la compra. • Banca: • Detectar patrones de uso fraudulento de tarjetas de crédito. • Identificar clientes leales. • Predecir clientes con probabilidad de cambiar su afiliación. • Determinar gasto en tarjeta de crédito por grupos. • Encontrar correlaciones entre indicadores financieros. • Identificar reglas de mercado de valores a partir de históricos.
Data Mining (DM)Minería de datosAplicaciones • Seguros y Salud Privada: • Análisis de procedimientos médicos solicitados conjuntamente. • Predecir qué clientes compran nuevas pólizas. • Identificar patrones de comportamiento para clientes con riesgo. • Identificar comportamiento fraudulento. • Transportes: • Determinar la planificación de la distribución entre tiendas. • Analizar patrones de carga. • Medicina: • Identificación de terapias médicas satisfactorias para diferentes enfermedades. • Asociación de síntomas y clasificación diferencial de patologías. • Estudio de factores (genéticos, precedentes, hábitos, alimenticios, etc.) de riesgo/salud en distintas patologías. • Segmentación de pacientes para una atención más inteligente según su grupo. • Predicciones temporales de los centros asistenciales para el mejor uso de recursos, consultas, salas y habitaciones. • Estudios epidemiológicos, análisis de rendimientos de campañas de información, prevención, sustitución de fármacos, etc.
Conclusiones • El aumento espectacular del volumen de datos en las empresas y su falta de integración crean la necesidad de una infraestructura para la logística de la información. Este es el principio u origen del Data Warehouse. • No existe una única definición (ni traducción) de Data Warehouse. • El DW es un conjunto de tecnologías, no un producto. • GRAN BASE DE DATOS. • Herramientas para manipular los datos. • Basado en el modelo de datos dimensional. • La construcción de un DW es un proceso ITERATIVO. • Un DW engloba las tecnologías que sirven de soporte al Business Intelligence. • Es parte componente de un Sistema de Información de Gestión.
Conclusiones • Un administrador de Data Warehouse tiene que: • Ser primero un excelente Administrador de Bases de Datos. • Tener amplios conocimientos en Fundamentos de Bases de Datos, Gestión, Planificación e Informática en general. • Tener una extensa experiencia de trabajo con diferentes sistemas de bases de datos.
Bibliografía • Básica • Título: Fundamentos de sistemas de bases de datos (3ª edición) - Capítulo 26 Autor(es): Elmasri, Ramez & Navathe, ShamkantEditorial: Addison Wesley • Data Warehouse • http://www.ica.com.uy/dw/dw-doc.htm#Sistemas de Data Warehousing • http://www.tid.es/presencia/publicaciones/comsid/esp/22/08.pdf(caso concreto de telefónica) • Manual para la construcción de un Data Warehousehttp://www.inei.gob.pe/cpi-mapa/bancopub/libfree/lib619/INDEX.HTM • http://kybele.escet.urjc.es/adto/ • Minería de datos: • http://www.daedalus.es/Web.php?pag=040000 • http://www.gsi.dit.upm.es/~gfer/ssii/aprendizaje/MD.pdf • http://www.tid.es/presencia/publicaciones/comsid/esp/22/09.pdf(caso concreto de telefónica) • Business Intelligence • http://www.bitam.com/DefBI.htm • http://www.aliga.org/JORNADAS_DW_V2.PPT