Juan Ramón de la Fuente Enrique del Val Blanco Alejandro Pisanty Baruch Baruch Carmen Bravo Chaveste
Dirección General de Servicios de Cómputo Académico María Guadalupe Izquierdo Dyrzo Mary Karina Ruiz Torres José Luis Medina Flores Imelda Arcelia Gutiérrez de la Torre Lucero ledón Martínez Gabriela Lilí Morales Naranjo Imelda Arcelia Gutiérrez de la Torre Rodolfo Cano Ramírez © 2007 Universidad Nacional Autónoma de México Esta edición y sus características son propiedad de la Universidad Nacional Autónoma de México Ciudad Universitaria, México, DF. ISBN 978-970-32-4594-9 978-970-32-4594-9
DATA WAREHOUSE y minería de datos
Introducción............................................................................................................ Introducción............................................................................................................ 1 1. Data Warehousing............................................................................................... Warehousing............................................................................................... 3 1.1 Caracterí Características sticas .............................................................................................. .............................................................................................. 3 1.2 Estructura de datos y flujo de datos................................................................. datos................................................................. 4 1.2.1 Dos enfoques: Inmon y Kimball............................................................. Kimball............................................................. 4 1.2.2 Conocimie Conocimiento nto del negocio negocio ................................................................... ................................................................... 5 1.3 Arquitecturas Arquitecturas de sistemas ............................................................................... ............................................................................... 6 1.3.1 Sistemas Sistemas OLAP OLAP .................................................................................... .................................................................................... 6 1.3.2 Ejemplo Ejemplo .............................................................................................. .............................................................................................. 7 1.3.3 OLTP vs OLAP..................................................................................... OLAP..................................................................................... 8 1.3.4 Data Warehouse y sistemas OLTP ....................................................... ....................................................... 10 1.4 Procesos..................................................................................................... Procesos..................................................................................................... 11 1.5 El modelo de Data Warehouse..................................................................... Warehouse..................................................................... 12 1.6 Modelo dimensional.................................................................................... dimensional.................................................................................... 14 1.6.1 El esquema Estrella............................................................................ Estrella............................................................................ 14 1.6.1.1 1.6.1.1 Granularidad Granularidad ........................................................................ ........................................................................ 15 1.6.1.2 1.6.1.2 Dimensiones Dimensiones ......................................................................... ......................................................................... 15 1.6.1.3 La tabla de hechos................................................................. hechos................................................................. 15 1.7 Factores Factores de éxito ......................................................................................... ......................................................................................... 16 1.7.1 El propósito del negocio..................................................................... negocio..................................................................... 16
I
Mary Karina Ruiz Torres
1.7.2 Consultas rápidas...............................................................................17 1.7.3 Estrategia de desarrollo.......................................................................18 1.7.4 Calidad de la información...................................................................19 1.8 Metadato ....................................................................................................20 1.9 Estructuras de datos para el análisis de negocio .............................................22 1.9.1 Non-architected .................................................................................22 1.9.2 Data marts dependientes.....................................................................23 1.9.3 Bus....................................................................................................24 1.10 Selección de un DBMS................................................................................25 1.11 Selección de hardware................................................................................26 1.12 Seguridad..................................................................................................27 1.13 Aplicaciones ..............................................................................................27 1.13.1 Ventas .............................................................................................27 1.13.2 Efectividad de promociones...............................................................28 1.13.3 Análisis de clientes............................................................................28 1.13.4 Análisis por regiones geográficas.......................................................29 1.13.5 Actividades gerenciales (administrativas).............................................30 1.13.6 Inventarios .......................................................................................30 1.13.7 Costos en procesos de fabricación.....................................................30 1.14 Bases de datos para Data Warehousing.......................................................31 2. Minería de datos ................................................................................................33 2.1 Definición....................................................................................................33 2.2 Campos de investigación precedentes............................................................37 2.2.1 Aprendizaje inductivo..........................................................................37 2.2.2 Estadísticas ........................................................................................38 2.2.3 Máquinas de aprendizaje ....................................................................38 2.2.4 Diferencias entre minería de datos y máquinas de aprendizaje ...............38 2.3 Modelos de minería de datos ........................................................................39 2.3.1 Modelo de verificación........................................................................39 2.3.2 Modelo de descubrimiento..................................................................40 2.4 Problemas de la minería de datos..................................................................40 2.4.1 Información limitada...........................................................................40 2.4.2 Valores faltantes y ruido ......................................................................41 2.4.3 Incertidumbre.....................................................................................41
II
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
2.5 Usuarios de la minería de datos ................................................................... 42 2.6 Aplicaciones ............................................................................................... 43 2.6.1 Ventas/mercadotecnia ....................................................................... 43 2.6.2 Actividades bancarias ........................................................................ 43 2.6.3 Seguros y salud ................................................................................. 44 2.6.4 Transporte ........................................................................................ 44 2.6.5 Medicina .......................................................................................... 44 2.7 Funciones de la minería de datos ................................................................. 44 2.7.1 Clasificación ..................................................................................... 44 2.7.2 Asociaciones..................................................................................... 45 2.7.3 Patrones secuenciales/temporales ....................................................... 46 2.7.4 Agrupación/segmentación.................................................................. 46 2.8 Técnicas de minería de datos ....................................................................... 46 2.8.1 Análisis cluster................................................................................... 46 2.8.2 Inducción.......................................................................................... 47 2.8.2.1 Árboles de decisión................................................................ 48 2.8.2.2 Reglas de inducción............................................................... 48 2.8.3 Redes neuronales .............................................................................. 49 2.8.4 Procesamiento analítico en línea......................................................... 51 2.9 Herramientas para minería de datos ............................................................. 51 3. Bases de datos inteligentes ................................................................................. 54 3.1 Concepto ................................................................................................... 54 3.2 Componentes ............................................................................................. 55 3.2.1 Inteligencia en herramientas de alto nivel ............................................ 55 3.2.2 Inteligencia en la interfaz de usuario.................................................... 56 3.2.3 Inteligencia en el motor de la base de datos ........................................ 57 3.3 Características ............................................................................................ 58 3.4 Tipos de bases de datos............................................................................... 59 3.4.1 Bases de datos full text ....................................................................... 59 3.4.2 Indexed keywords .............................................................................. 60 3.4.3 Hypertext links ................................................................................... 60 3.5 Funcionamiento .......................................................................................... 60 3.6 Representación del conocimiento.................................................................. 62 3.6.1 Reglas .............................................................................................. 62
III
Mary Karina Ruiz Torres
3.6.2 Marcos de referencia ..........................................................................62 3.6.3 Redes semánticas ...............................................................................62 3.6.4 Árboles de decisión heurística..............................................................63 3.7 Inferencia ....................................................................................................63 3.7.1 Forward chaining ...............................................................................63 3.7.2 Backward chaining .............................................................................64 3.8 Problemas de las bases de datos inteligentes ..................................................64 3.9 Ejemplo de bases de datos inteligentes...........................................................64 3.9.1 DowQuest .........................................................................................64 3.9.2 Topic.................................................................................................65 Anexo....................................................................................................................66 Glosario............................................................................................................66 Bibliografía ............................................................................................................74 Data Warehouse y minería de datos ....................................................................74 Bases de datos inteligentes..................................................................................75 Referencias electrónicas......................................................................................76
IV
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
“Los datos son hechos, la información es el significado que el ser humano le da a estos hechos. Elementos individuales de datos tienen poco significado por si mismos, es únicamente cuando estos hechos se agrupan o procesan que su significado comienza a volverse claro”. [Davis, W.S. and McCormack, A., The Information Age, p. 38].
La información y el uso que se hace de ella ha variado a través de los años, es así como hoy en día el personal de empresas e instituciones requiere mayor información que antes, sin embargo, la gente que realiza esos trabajos tiene poco control en su acceso y, de cierto modo, existe dependencia de quienes deciden la información que será proporcionada. Es decir, tanto la información que debe almacenarse como su manejo difieren cada vez más del tratamiento tradicional, por lo que que surge la necesidad de plantear nuevos modelos y sistemas de bases de datos que aporten un valor añadido a las bases de datos relacionales. El objetivo de un sistema de descubrimiento de conocimiento es el de extraer información relevante, en ese sentido, el conocimiento implícito en la base de datos queda escondido tras lo que, hasta ahora, era una masa de datos carente de significado. Para ello, se requiere de una serie de labores de preparación y depuración de los datos para, posteriormente, aplicar una técnica de minería de datos. Este documento presenta una introducción a las tecnologías de descubrimiento y análisis de información. Ejemplos de aplicaciones redituables muestran su relevancia actual en el entorno empresarial, así como una descripción básica de cómo pueden evolucionar las arquitecturas de Data Warehouse para entregar el valor de la minería de datos a los usuarios finales. Se busca proporcionar un panorama general acerca de las tecnologías orientadas al análisis de información en la toma de decisiones, como son la minería de datos, Data Warehousing y bases de datos inteligentes; además de destacar la relación existente entre ellas e instruir sobre los elementos de decisión que permitan su aplicación adecuada con base en los objetivos del negocio.
1
Mary Karina Ruiz Torres
En el primer capítulo, se presenta el concepto de Data Warehouse y las características que lo hacen una herramienta de apoyo en la toma de decisiones. Para ello, se describen los principales procesos y objetivos inherentes a un desarrollo de este tipo y que marcan la diferencia con los sistemas transaccionales comunes. También, se observa que un proyecto de Data Warehouse involucra una serie de factores que es necesario considerar antes de iniciar su desarrollo. El conocimiento del negocio se convierte en un elemento esencial ya que, generalmente, un Data Warehouse afecta a todas las áreas de la organización y, como tal, requiere de la participación y apoyo de cada una de las partes involucradas. Asimismo, la calidad de la información y los tiempos de respuesta son dos factores que determinan la aceptación o rechazo del proyecto, en ese sentido, juegan un papel fundamental la arquitectura, hardware y herramientas de explotación seleccionados. En el segundo capítulo se muestra el enfoque de la minería de datos como estrategia de análisis de información, de esta forma, en el Data Warehouse los datos deben encontrarse en el nivel de detalle correcto debido a la naturaleza incipiente de la tecnología de minería de datos. En las aplicaciones empresariales, la tecnología de minería de datos se ha utilizado principalmente en aplicaciones de comercialización, ventas y análisis de crédito; así como en áreas tales como la segmentación de clientes, de mercado y análisis de comportamiento del cliente. Actualmente, la existencia de tres elementos importantes conduce al crecimiento en la minería de datos: 1. La tecnología de Data Warehouse al proporcionar un gran banco de datos bien organizados e históricos. 2. El hardware en paralelo, los productos de base de datos y las herramientas a precios razonables. 3. La tecnología y las herramientas para minería de datos cada vez más desarrolladas. La minería de datos es una tecnología poderosa con un gran potencial, que ayuda a las organizaciones a concentrarse en la información más importante existente en sus Data Warehouses. Las herramientas de minería de datos predicen tendencias y comportamientos futuros, por lo que permiten al negocio tomar decisiones proactivas basadas en el conocimiento. Por último, el tercer capítulo explica las bases de datos inteligentes, cuyo objetivo principal es el de proporcionar información que responda a condiciones especializadas de búsqueda mediante el apoyo de componentes de inteligencia artificial y sistemas expertos tecnologías que comúnmente se consideran de forma aislada. De esta manera, adicionalmente a las tecnologías integradas dentro de la arquitectura básica de una base de datos inteligente, existen otras herramientas de alto nivel que complementan su funcionalidad.
2
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Un Data Warehouse puede definirse como un repositorio de datos centralizado para apoyo de las actividades de análisis del negocio. Permite almacenar datos operacionales y eliminar inconsistencias entre los diferentes formatos existentes en los sistemas fuente. Además de integrar los datos de toda la empresa, no importando su ubicación, formato o requerimientos de comunicación; permite incorporar información adicional integrada por el experto del negocio.
1.1 Características De acuerdo con Bill Inmon, considerado el creador del concepto de Data Warehousing, existen cuatro características principales que describen un Data Warehouse: 1.
. Los datos son organizados en áreas específicas de estudio, relevantes para el analista, en lugar de orientarse a una aplicación. Un sistema OLTP puede dividir sus datos por diferentes regiones o periodos. Un Data Warehouse almacena la misma información ordenada por temas como pueden ser ventas, embarques, clientes y productos, entre otros.
2.
. Cuando los datos residen en aplicaciones separadas en el ambiente operacional, la codificación de los datos a menudo es inconsistente. La información que contiene un Data Warehouse proviene de diferentes fuentes, y conforme es alimentado, las inconsistencias en los datos que vienen en las fuentes son eliminadas y se integran con un formato único.
3.
. El Data Warehouse representa un lugar para almacenar datos de cinco a 10 años de antigüedad, incluso más, para utilizarse en comparaciones, análisis de tendencias y pronósticos. La información en un Data Warehouse siempre tiene un componente tiempo. El Data Warehouse contiene datos que representan el
3
Mary Karina Ruiz Torres
estado del negocio en un periodo específico. Por ejemplo, la información de un inventario podría almacenarse en una serie de fotografías donde cada imagen representa el estado del inventario en un tiempo particular. 4.
. Los datos no son modificados o cambiados en forma alguna, una vez que entran al Data Warehouse, únicamente son cargados y se puede acceder a éstos. Cuando una dirección cambia en un sistema operacional, muchas aplicaciones lo que hacen es sobrescribir el registro. En el Data Warehouse, una vez que el dato es almacenado, nunca cambia, excepto para corregir errores. Si una dirección cambia, ambas direcciones, la nueva y la anterior, serán almacenadas en el Data Warehouse y cada una reflejará el estado de una realidad en un periodo determinado.
5.
El Data Warehouse almacena la información de forma atómica, pues describe la operación del negocio y contiene, además, vistas sumarizadas del material.
1.2 Estructura de datos y flujo de datos 1.2.1 Dos enfoques: Inmon y Kimball
Dos personajes prominentes en la historia de Data Warehouse son Bill Inmon y Ralph Kimball. El primero introdujo el término Data Warehouse en 1992 mientras Kimball presentó sus guías de desarrollo, de ahí que sean considerados los forjadores de los enfoques principales en la construcción de un proyecto de toma de decisiones. Algunas diferencias que se presentan entre ambos enfoques son: Inmon describe
el Data Warehouse como el lugar donde una empresa logra la integración de información, en tanto Kimball describe una arquitectura que unifica data marts, cada uno con dimensiones y medidas que puede compartir mediante el Warehouse. Inmon establece que el Data Warehouse debe ser la fuente de información para todos los data marts. Y Kimball lo describe como un concepto virtual; cuando se observa la
arquitectura del Data Warehouse como un bus en donde se conectan todos los data marts, se aprecia al Data Warehouse. Inmon insiste en que el Data Warehouse debe Kimball insiste en que debe ser desnormalizado.
tener un diseño normalizado, mientras
La estructura de datos organizacional de Inmon incluye un componente llamado Operational Data Store (ODS), similar al Data Warehouse pero que se usa para las necesidades de análisis de datos operacionales. Kimball no cree que el ODS deba ser una estructura separada; las necesidades de información inmediatas deben ser cubiertas por los mismos sistemas operacionales o directamente desde el Data Warehouse. En resumen, el objetivo principal del enfoque de Inmon es tener una fuente de datos unificada que contenga información de toda la empresa; en cambio, la teoría de Kimball
4
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
tiene como objetivo hacer que la información se encuentre disponible para un análisis lo más rápido y eficiente posible. Ahora bien, tres directrices en las que ambas teorías coinciden son: •
Un Data Warehouse debe tener un objetivo de negocio.
•
El sistema debe considerar las necesidades de toda la empresa.
•
Deben tomarse en cuenta todas las posibles fuentes de datos. 1.2.2 Conocimiento del negocio
Previo a la construcción de un Data Warehouse debe tenerse el conocimiento necesario sobre lo que motiva a la organización al desarrollo de un proyecto de este tipo, en este sentido, se sugieren algunas preguntas que se clasifican de la siguiente manera:
•
¿Por qué se necesita un Data Warehouse?
•
¿Por qué se requiere el análisis OLAP?
•
¿Cómo auxiliará este proyecto al negocio?
•
¿Ayudará a incrementar las ventas?
•
¿Ayudará a reducir costos?
•
¿Permitirá proporcionar un mejor servicio al cliente?
•
¿Cómo logrará que la compañía sea más eficiente?
•
¿Cuántos departamentos se beneficiarán de un Data Warehouse?
•
¿En qué formas se utiliza la información actual en el análisis del negocio?
•
•
•
•
¿El Data Warehouse puede diseñarse de manera que pueda usarse para múltiples propósitos?
¿Cuáles son las fuentes de información potenciales para el Data Warehouse? ¿Qué sistemas operacionales tienen información que pueda ser utilizada? ¿Cuál es la frecuencia con que cambia la información? ¿Qué tan a menudo se integra nuevos datos? ¿Qué información histórica puede ser incluida? ¿Qué tan accesible están los datos?
5
Mary Karina Ruiz Torres
•
¿Qué fuentes externas de información pueden incluirse?
•
¿Qué tanta limpieza de datos tendrá que hacerse para cada fuente?
•
¿Qué datos necesitarán combinarse?
•
¿Cuál es el volumen total de datos?
1.3 Arquitecturas de sistemas 1.3.1 Sistemas OLAP
La mejor forma de describir una herramienta OLAP es explicando su funcionamiento. En todo negocio se utilizan hojas de cálculo para detallar actividades, además de que existen reportes mensuales que contienen pilas de hojas, con un esfuerzo significativo en su creación, sin embargo, su uso es difícil cuando se buscan piezas de información específicas, aunado al hecho de que no incluyen información adicional. Una herramienta OLAP provee al analista del negocio de millones de hojas de cálculo a un tiempo. Estas hojas se encuentran disponibles en una estructura lógica y jerárquica, de forma tal que el analista puede moverse con rapidez a un nivel general o específico de detalle o bien, observar la información desde perspectivas sumarizadas. Codd ha desarrollado algunas reglas o requerimientos para un sistema OLAP: •
•
Vista multidimensional conceptual. Transparencia.
•
Accesibilidad.
•
Desempeño.
•
Arquitectura cliente/servidor.
•
Dimensionalidad genérica.
•
Soporte multi-usuario.
•
Operaciones multidimensionales sin restricción.
•
Manipulación de datos intuitiva.
•
Reporteo flexible.
•
Dimensiones ilimitadas y niveles de agregación.
La pregunta fundamental en este sentido es ¿qué es un dato multidimensional y cuándo se convierte en OLAP? Esto es, esencialmente, una forma de construir asociaciones entre piezas de información semejantes, mediante reglas de negocio predefinidas acerca de la información que se maneja.
6
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Pueden identificarse tres componentes de OLAP: •
•
•
Una base de datos multidimensional debe ser capaz de expresar cálculos complejos de manera sencilla. Los datos tienen que ser referenciados y definidos matemáticamente. Navegación intuitiva. Respuesta instantánea, el usuario tiene la necesidad de obtener la información lo más pronto posible.
Entre las ventajas que ofrece el sistema dimensional está la libertad que ofrece al usuario para explorar libremente los datos y recibir el tipo de reporte deseado, sin tener restringido un formato predefinido. 1.3.2 Ejemplo
Un ejemplo de base de datos OLAP puede comprender datos de ventas, que pueden agregarse por región, producto y canal de venta. Una consulta típica de OLAP puede acceder a una base de datos con información de ventas de múltiples años (bastantes gigabytes), con la finalidad de encontrar todas las ventas de diversos productos en diferentes regiones. Después de revisar los resultados, un analista puede afinar posteriormente la consulta para encontrar el volumen de ventas para cada canal de venta clasificando la información por región y producto. Como último paso, el analista puede realizar comparaciones por año o trimestre para cada canal de venta. Este proceso completo debe realizarse en línea con tiempos de respuesta rápidos, de manera que el análisis no sea interrumpido. Las consultas OLAP pueden representarse como transacciones en línea las cuales: •
•
•
•
•
•
•
Acceden a grandes cantidades de datos (varios años de datos). Analizan las relaciones entre los diversos elementos del negocio (ventas, regiones, productos y canales de venta, entre otras). Involucran agregación de datos (por ejemplo, volúmenes de ventas o gastos). Comparan datos agregados contra periodos jerárquicos (mensualmente, trimestralmente, anualmente, etcétera). Presentan los datos en diferentes perspectivas (ventas por región, ventas por canal de venta y por producto dentro de cada región). Involucran cálculos complejos entre elementos de datos (ganancias esperadas, calculadas en función de las ventas por cada canal de venta y región particular). Están habilitadas para responder rápidamente a los requerimientos de los usuarios, de manera que pueden perseguir un proceso analítico sin ser bloqueados por el sistema.
7
Mary Karina Ruiz Torres
1.3.3 OLTP vs OLAP On Line Transaction Processing (OLTP) hace
referencia a todas las aplicaciones que corren la operación básica de la organización. Son sistemas que usan la información de la siguiente manera: •
•
Almacenan los datos para optimizar su modificación y consulta individual (por registro). Generan un número limitado de reportes donde se resumen los eventos que han tomado lugar.
En cambio, los sistemas On Line Analytical Process (OLAP) son creados con el propósito de analizar datos de la organización: •
•
•
Importan datos desde los sistemas OLTP y otras fuentes, que incluso podrían ser externas a la organización. Almacenan datos en un formato que optimiza consultas analíticas. Estas consultas, a menudo, sumarizan información de diferentes registros de distintas tablas. Un sistema OLAP tiene como objetivo proveer una herramienta de consulta que permita analizar la información desde todas las perspectivas posibles.
Aunque el lugar más sencillo para realizar consultas es directamente en las bases de datos transaccionales, el rendimiento se puede ver degradado por las siguientes razones: •
•
•
•
8
Los sistemas OLTP tienen que entregar resultados tan rápido como sea posible, y las consultas de análisis de información pueden afectar de forma significativa a los sistemas operacionales debido al uso que hacen de los recursos de procesador y memoria. Las bases de datos OLTP tienen una estructura normalizada, que agiliza la entrega y modificación de registros individuales, además de que cada pieza de información se almacena una sola vez por lo que puede modificarse en una ubicación única. Las consultas en una estructura OLAP responden con mayor rapidez cuando el esquema de la base de datos se diseña para consultar múltiples registros. Esta estrategia de diseño se conoce como modelado dimensional y el resultado es un esquema estrella. Los sistemas OLTP son más eficientes cuando las tablas tienen un número limitado de índices, cada uno de los cuales tiene que modificarse conforme varíe la información; en este caso, tener demasiados índices puede afectar el proceso transaccional normal de variación de registros. Los sistemas OLAP trabajan mejor mientras más índices existan, puesto que el dato no sufre modificaciones continuas. Los valores calculados en un OLTP pierden sentido porque los registros están cambiando y cada vez que el registro varía, el valor calculado tiene que actualizarse. En los sistemas OLAP se requieren grandes cantidades de datos agregados, de manera que pueden presentarse para el analista de forma inmediata no importando la combinación de factores que el analista pretenda consultar.
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
•
El almacén de datos para un OLTP es un DBMS Relacional. Los datos utilizados en un sistema OLAP pueden almacenarse en un DBMS Relacional, pero también existe la posibilidad de ganar rendimiento guardando los datos en estructuras multidimensionales.
La diferencia entre OLAP y OLTP se resume de la forma siguiente: los servidores OLTP manejan datos operativos (de misión critica) a través de consultas simples, mientras que los servidores OLAP tienen información a la cual se accede a través de una investigación iterativa (administración crítica). Ambos, OLAP y OLTP, tienen requerimientos especializados y requieren, por lo tanto, servidores especiales para los dos tipos de procesamiento. Los servidores de las bases de datos OLAP manejan estructuras multidimensionales para almacenar los datos y las relaciones entre éstos. Las estructuras multidimensionales pueden visualizarse como cubos de datos. Cada lado del cubo es considerado una dimensión que representa una categoría diferente como producto, región, canal de venta y tiempo. A su vez, cada celda dentro de la estructura multidimensional contiene datos agregados relacionados con los elementos que se encuentran en las dimensiones. Por ejemplo, una celda puede contener las ventas totales para un producto determinado en una región para un canal de venta específico en un mes. Las bases de datos multidimensionales son un medio compacto y fácil de entender para visualizar y manipular elementos de datos que tienen muchas interrelaciones. Los servidores OLAP soportan operaciones analíticas que incluyen procesos de consolidación, drill-down y “slicing and dicing”: •
•
•
Involucra la agregación de datos, tales como simples solarizaciones o expresiones complejas que involucran datos interrelacionados. Por ejemplo, las oficinas de ventas pueden ser descompuestas por distritos y los distritos en regiones. Los servidores OLAP pueden ir en dirección inversa y desplegar de forma automática datos detallados que comprenden los consolidados. La consolidación y el drill-down son una propiedad inherente a los servidores OLAP. Se refiere a la habilidad de consultar la base de datos desde diferentes puntos de vista, un corte (slice) de la base de datos de ventas puede mostrar todas las ventas de un producto por región. Otro corte puede mostrar todas las ventas por canal de venta y producto. Slicing and dicing se realiza, generalmente, a través de un eje de tiempo con la finalidad de analizar tendencias y encontrar patrones.
Los servidores OLAP almacenan datos multidimensionales, esto se logra mediante arreglos de almacenamiento y técnicas de compresión que maximizan el espacio utilizado y mediante la optimización en el uso de espacio. Los servidores OLAP pueden minimizar los requerimientos de espacio haciendo posible el análisis de grandes cantidades de datos. Además, hace posible cargar más datos en memoria, lo cual ayuda a mejorar de manera significativa el rendimiento debido a la reducción en el acceso a disco.
9
Mary Karina Ruiz Torres
En conclusión, los servidores OLAP organizan los datos lógicamente en múltiples dimensiones, lo que permite a los usuarios analizar rápida y fácilmente relaciones de datos complejas. La misma base de datos está organizada físicamente, de tal manera que los datos relacionados pueden recuperarse con rapidez a través de múltiples dimensiones. Los servidores OLAP son muy eficientes cuando almacenan y procesan datos multidimensionales. Los RDBMSs han sido desarrollados y optimizados para manejar aplicaciones OLAP. El diseño de una base de datos relacional se concentra en la confiabilidad y velocidad en el procesamiento de transacciones, más que en las necesidades de apoyo a la toma de decisiones. Cabe mencionar, además, que los diferentes tipos de servidores pueden beneficiar a un amplio rango de aplicaciones de administración. 1.3.4 Data Warehouse y sistemas OLTP
Una base de datos construida para el procesamiento de transacciones en línea (OLTP) es considerada, generalmente, como inadecuada para Data Warehousing, porque fue diseñada con un diferente conjunto de necesidades, como es maximizar la capacidad transaccional y tener cientos de tablas con el objetivo de responder con mayor rapidez al usuario. Por otro lado, un Data Warehouse se enfoca en el procesamiento de consultas, más que en el de transacciones. Los sistemas OLTP no pueden ser repositorios de hechos y datos históricos para el análisis del negocio, ya que no pueden responder de manera rápida a consultas ad hoc, y la recuperación de información es casi imposible. Los datos podrían ser inconsistentes y cambiantes, existir registros duplicados e información faltante, así como la ausencia de datos históricos, los cuales son necesarios para el análisis de tendencias. Básicamente, los sistemas OLTP ofrecen grandes cantidades de datos crudos que no son tan sencillos de entender. El Data Warehouse tiene el potencial de recuperar y analizar información con mayor rapidez y facilidad. Operaciones día a día.
Recuperación de información y análisis.
RDBMS.
RDBMS (opcional).
Normalizado.
Multidimensional.
SQL.
SQL más extensiones de análisis de datos.
Datos que utiliza el negocio para su operación.
Datos que analiza el negocio.
Cambiantes, incompletos.
Históricos, descriptivos.
Ilustración 1. Data Warehouse y OLTP.
10
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
1.4 Procesos El primer paso que se tiene que llevar a cabo en un Data Warehouse es el de aislar los datos operacionales actuales para preservar la seguridad e integridad de los sistemas OLTP de misión crítica, con la finalidad de acceder a todas las bases de datos y la resultante o Data Warehouse, puede consumir cientos de gigabytes –e incluso terabytes– de espacio en disco, por lo que se requieren técnicas de almacenamiento y recuperación de información masiva. A este respecto, las organizaciones han encontrado que los sistemas de procesamiento paralelo ofrecen un ancho de banda suficiente. El Data Warehouse extrae datos de una variedad de bases de datos heterogéneas. Los datos son transformados y entregados al Data Warehouse que está basado en un modelo seleccionado previamente. Este proceso de transformación de datos es realizado siempre que una modificación al Data Warehouse es requerida, de modo que la ejecución de estas funciones debe efectuarse de forma automática. La información que describe el modelo y la definición de los datos fuente se llama metadato, que representa el significado que el usuario final entenderá de la información contenida en el Warehouse y al menos debe contener: •
La estructura de los datos.
•
El algoritmo utilizado para las sumarizaciones.
•
El mapeo del ambiente operacional al Data Warehouse.
La limpieza de datos es un aspecto importante en la creación de un Data Warehouse eficiente porque elimina, en la medida de lo posible, las inconsistencias presentadas en los datos operacionales. Por otro lado, esta limpieza debe ser lo más dinámica posible para satisfacer todos los tipos de consultas, incluyendo aquéllas que pueden requerir información de bajo nivel. Los datos deben extraerse de los sistemas operacionales en intervalos regulares e integrados centralmente, pero el proceso de limpieza tiene que remover la duplicación y conciliar diferencias entre los distintos estilos de almacenamiento de datos. Una vez que los datos se limpian, son integrados al Data Warehouse que, generalmente, es una gran base de datos almacenada en un equipo de alto desempeño como puede ser SMP (Symmetric Multi-Processing) o MPP (Massively Parallel Processing). Otro concepto importante en el entorno del Data Warehouse es el data mart. Los data marts son considerados pequeños Data Warehouses, definidos para proveer subconjuntos de información sumarizada del almacén principal y dependen de los requerimientos específicos de un grupo o departamento de la organización. Muchos proveedores tienen productos que satisfacen una o más de las funciones descritas anteriormente, sin embargo, puede tomar una cantidad de trabajo considerable en programación especializada para proveer la interoperabilidad necesaria entre productos de múltiples proveedores para ejecutar los procesos del Data Warehouse.
11
Mary Karina Ruiz Torres
Ilustración 2. Procesos de Data Warehousing.
1.5 El modelo de Data Warehouse Data Warehousing es el proceso de extraer y transformar datos operacionales en analíticos para integrarlos en una estructura central de datos. Una vez que los datos son cargados, se puede acceder a éstos vía consultas SQL o bien con el uso de herramientas de análisis disponibles para los tomadores de decisiones. El modelo de Data Warehouse se ilustra en el siguiente diagrama:
Ilustración 3. Esquema de Data Warehouse.
Los datos dentro del propio Data Warehouse tienen una estructura diferente con base en los distintos niveles de sumarización manejados.
12
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Altamente sumarizados Ligeramente sumarizados Nivel de detalle actual
Datos de detalle anteriores Ilustración 4. Estructura de los datos dentro del Data Warehouse.
La importancia del nivel de detalle radica en lo siguiente: •
•
•
Refleja los hechos más recientes que, por lo general, son los de mayor interés. Aumenta el volumen de almacenamiento conforme disminuye el nivel de granularidad. Generalmente, la información se almacena en disco para hacer más rápido su acceso, pero la vuelve más costosa y difícil de administrar.
La información de detalle con mayor antigüedad se guarda con algún proceso de almacenamiento masivo, ya que su acceso no es tan frecuente. En cambio, la que está sumarizada y que se obtiene del nivel de detalle, se almacena en disco la mayoría de las veces para su acceso rápido. Si se considera lo anterior, cuando se construye un Data Warehouse se debe considerar la unidad de tiempo sobre la cual se va a sumarizar la información, además del contenido o atributos que se van a integrar, con objeto de que los datos altamente sumarizados sean compactos y fácilmente accesibles. El metadato es el componente final del Data Warehouse cuya función es: •
•
•
Ayudar al analista de negocio a localizar el contenido del Data Warehouse. Guiar el mapeo de datos conforme éstos se transforman desde el ambiente operacional al Data Warehouse. Servir de guía para los algoritmos utilizados en la sumarización, entre los datos de detalle actuales y aquellos levemente sumarizados, y también en la sumarización entre los datos levemente y altamente sumarizados.
Un ejemplo de los niveles de sumarización de datos se muestra en la siguiente ilustración:
13
Mary Karina Ruiz Torres
Ventas mensuales por producto 1981 - 1993
Ventas nacionales por mes 1985 - 1993
Ventas semanales por subproducto 1985 - 1993
Ventas regionales por semana 1983 - 1993
D A T O
Detalle de ventas 1992 - 1993
Detalle de ventas 1982 - 1991 Ilustración 5. Niveles de sumarización del Data Warehouse.
El diagrama anterior asume que el año es 1993 porque los datos actuales abarcan 1992-1993. Por lo general, los datos de ventas no alcanzan el nivel actual de detalle para las 24 horas ya que espera hasta que el sistema operacional no esté disponible, esto es, le toma 24 horas obtenerlo del Data Warehouse. En cambio, se tiene la opción de que el detalle de ventas sea sumarizado semanalmente por producto y región, con objeto de generar el nivel de detalle levemente sumarizado y posteriormente las ventas semanales sean sumarizadas nuevamente para producir el nivel altamente sumarizado.
1.6 Modelo dimensional El modelo dimensional es un reflejo directo de la forma como se observa un proceso de negocio. Captura las medidas de importancia y los parámetros, a través de los cuales dichas medidas son descompuestas. Las medidas son referidas como hechos o métricas, mientras que los parámetros por los que una métrica puede analizarse son referidos como dimensiones. 1.6.1 El esquema Estrella
Este enfoque fue desarrollado para resolver problemas con los que el negocio se enfrenta al utilizar modelos entidad-relación normalizados. El nombre viene de la similitud del diagrama con el de una estrella donde: •
El centro de la estrella es la tabla de hechos.
•
Las puntas de la estrella son las tablas de dimensión.
•
Se implementa a través de tecnología de bases de datos relacionales.
•
14
Las tablas de hechos contienen indicadores o atributos que pertenecen a una combinación de objetos de información (dimensiones) y tiempo.
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Cuando se diseña un diagrama estrella, una de las primeras decisiones tiene que ver con el nivel de detalle en el que serán ingresadas las métricas, conocido como granularidad de la tabla de hechos. En ese sentido, es crucial que cada registro en la tabla de hechos se almacene exactamente en el mismo nivel de detalle pues, de lo contrario, se puede destruir la funcionalidad del esquema estrella. Esto es, la información relevante con un nivel de granularidad diferente debe guardarse en una segunda tabla de hechos. En general, una tabla de hechos requiere que las llaves foráneas relacionadas con un registro nunca sean nulas; dado que una relación opcional hacia una dimensión es un signo de problemas de granularidad.
Una vez definida la granularidad de la tabla de hechos, el objetivo siguiente será el de desarrollar tablas de dimensión con un gran número de atributos, donde se reflejen un conjunto de detalles en torno al proceso de negocio. No es raro encontrar hasta 100 o 200 atributos en una sola dimensión. Las relaciones entre los atributos existentes en una dimensión no necesitan ser estrechas, es aceptable incluir un conjunto de atributos directamente relacionados con otros. La llave primaria (PK) de una dimensión siempre es un atributo único definido por el sistema, causado porque el uso de llaves concatenadas degrada el desempeño y también evita la dependencia hacia los sistemas operacionales al asignar una clave propia. Cada una de las tablas de dimensión: •
Contiene información textual descriptiva (descripción, nombre, tamaño, dirección, etcétera).
•
Se utiliza como una fuente para limitar las consultas.
•
Casi siempre es la fuente de encabezados de registros.
•
Contiene una relación uno a muchos a la tabla de hechos.
•
Incluye un número limitado de registros que se incrementan lentamente con el tiempo.
Después de identificar la granularidad y las dimensiones, la atención gira en torno a la tabla de hechos la cual: •
•
Contiene métricas o hechos del negocio, representados por columnas numéricas que muestran la granularidad definida de los hechos almacenados en la tabla. Incluye una llave única compuesta de las llaves foráneas hacia las dimensiones.
15
Mary Karina Ruiz Torres
•
•
Incorpora un gran número de registros (cientos de millones). El nivel de granularidad definido para la tabla de hechos, determinará no sólo el nivel de detalle en el que se puede consultar la información, sino también el número de cálculos que deben procesarse para proveer la respuesta a una consulta. Mientras mayor detalle se pueda consultar, aumenta el tamaño de la tabla de hechos. No es obligatorio que cada combinación de llave foránea exista, esto es, varias entradas a la tabla de hechos no tendrán llaves foráneas hacia todas las dimensiones asociadas. PRODUCTO
TIEMPO
Id_prod
Id_tiempo
Nombre Tamaño Paquete Categoría
ALMACEN Id_almacen Nombre Dirección Tamaño Gerente
HEC_VENTAS Id_prod Id_almacen Id_tiempo Id_org Unidades_vendidas Monto_venta Ganancia Costo
Día Semana Mes Trimestre Año
ESTR_ORG Id_org División Región Mercado
Ilustración 6. Esquema Estrella.
1.7 Factores de éxito 1.7.1 El propósito del negocio
Algunas tareas indispensables en el desarrollo de un Data Warehouse del negocio se señalan a continuación: •
Encontrar cuáles datos desean y necesitan los usuarios en su sistema OLAP.
•
Transformar los datos provenientes de sistemas OLTP a un esquema estrella.
•
Limpiar la información de los OLTP.
•
Construir cubos multidimensionales.
•
16
Invertir en hardware para la transformación de datos, procesamiento de cubos y almacenamiento de datos.
•
Construir o comprar aplicaciones OLAP cliente.
•
Implementar una estrategia de actualización de información.
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
•
Capacitar a los usuarios.
¿Cuánto costará? y ¿cuánto tiempo tomará el desarrollo?, depende de varios factores. Puede realizarse con una inversión de 30 mil dólares, pero si se tiene una gran cantidad de fuentes de datos que integrar y mucha limpieza de datos, el costo puede escalar fácilmente los cientos de miles de dólares. Ahora bien, la manera como las empresas evalúan el valor de un Data Warehouse para el éxito del negocio depende del enfoque que decidan tomar, en este sentido, algunas compañías se enfocan en el cálculo del Return On Investment (ROI). Buscan cómo el Data Warehouse ahorrará dinero, más que reducir inventarios, disminuir el tiempo del personal en la generación de reportes o incrementar el nivel de ventas. Otras compañías consideran el beneficio de un Data Warehouse en un contexto más general. Ellos reconocen que el conocimiento obtenido les ayuda a mejorar su negocio en formas que no pueden ser trasladadas monetariamente de una manera tan sencilla. Un Data Warehouse, incluso, puede apoyar en el reconocimiento de compañías rivales para ganar ventaja competitiva. 1.7.2 Consultas rápidas
La rapidez en la obtención de la información mostrada a los usuarios finales está considerada un factor esencial para el éxito de un sistema OLAP. Existe una prueba llamada FASMI (Fast Analysis of Shared Multidimensional Information) que permite determinar si una aplicación califica para convertirse en una herramienta OLAP: •
•
•
•
•
La presentación debe ser rápida de manera consistente, lo que significa que el tiempo de respuesta de cualquier consulta debe ser menor a cinco segundos. Si una consulta tarda más de este tiempo, el analista de negocio asumirá que algo está mal y abortará la consulta. En cambio, si la respuesta es menor a dos segundos, se tendrá la impresión de que la información se ha presentado de forma inmediata. El sistema puede proveer funciones de análisis de manera intuitiva, las cuales deben tener lógica de negocio y análisis estadístico relevante. Los cubos deben ser capaces de soportar la concurrencia de múltiples usuarios y manejar los requerimientos de seguridad necesarios para compartir la información. Un OLAP se define por su presentación de información multidimensional. Son los datos y la información derivada requerida por el usuario.
17
Mary Karina Ruiz Torres
1.7.3 Estrategia de desarrollo
Cualquiera que sea el tamaño del proyecto de Data Warehouse, es común que se convierta en algo de mayor dimensión en el futuro. El negocio cambia y aun cuando las variaciones no sean constantes, los analistas de negocio, a menudo, desean ver la información desde nuevas perspectivas. Uno de los grandes retos se presenta cuando dos compañías se fusionan, por ello es importante tener en mente la posibilidad de agregar nuevos requerimientos desde el diseño, de manera que se puedan atacar las solicitudes que se enumeran a continuación: •
•
Incluir un nivel de detalle menor al existente. Agregar nuevos campos.
•
Proveer mayor cantidad de datos calculados.
•
Integrar nuevas fuentes de información.
•
•
Aumentar el número de usuarios. Distribuir la información de forma geográfica.
•
Actualizar la información de los cubos con mayor frecuencia.
•
Almacenar mayores datos de información histórica.
•
Incluir fuentes de datos externas a la organización.
•
Proveer el acceso a los cubos vía Internet / Intranet.
No siempre se puede estar preparado para solucionar todos los cambios potenciales, sin embargo, existen algunas estrategias que permiten responder de manera efectiva cuando éstos ocurren: •
•
•
•
•
18
Desarrollar una perspectiva global de la empresa. Mantener el más bajo nivel de detalle posible (hechos atómicos), de manera que se pueda mostrar un mayor número de agregaciones en el futuro. De no incluir datos atómicos, existirá cierta información que siempre estará fuera de alcance y esto significaría reconstruir todo el almacén de datos. Incluir todos los campos que pudieran ser necesarios para las transformaciones de datos. Utilizar llaves únicas generadas por el propio sistema. Usar un repositorio central donde se almacene información acerca de las bases de datos y las transformaciones utilizadas, con objeto de apoyar la integración de nuevas fuentes de datos y herramientas de software.
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
•
Implementar el más amplio nivel de consistencia en el significado de las estructuras utilizadas entre los miembros de la organización, con la finalidad de que la información pueda usarse por un mayor número de áreas.
De forma continua, existe confusión entre aplicar una estrategia de desarrollo detallada u optar por un desarrollo inicial rápido. El conflicto se presenta por la necesidad de explicar conceptos generales acerca de las definiciones de datos y estructuras entre los miembros de la organización; lo cual es más un reto organizacional, político y de administración, que técnico. Si se espera que todos los miembros estén de acuerdo con las estructuras de datos, probablemente el proyecto nunca tendrá un inicio. Ahora, si el desarrollo comienza antes de que todos lleguen a un consenso, surgirán problemas en el momento de hacer las entregas de información a diferentes áreas o bien, cuando se intente integrar el Data Warehouse propio con algún otro que se haya construido. Debido a que no siempre se estará en posibilidades de resolver este conflicto, lo más prudente es mantenerse abierto a todas las opciones. Por ejemplo, si existe desacuerdo sobre qué fecha utilizar para indicar el cierre de una venta, entonces, se recomienda incluir todas las opciones posibles dentro de la estructura. Si el desacuerdo radica en cómo debe calcularse un valor (por ejemplo, la ganancia), lo más conveniente es incluir todos los factores que puedan ser necesarios, de manera que cada área pueda realizar el cálculo necesario. Si el desacuerdo se refiere al nivel de detalle que debe mantenerse, se sugiere almacenar el más bajo nivel de detalle, ya que existen datos que los analistas no podrían considerar de su interés, solo para que estén preguntando por ellos un mes después. 1.7.4 Calidad de la información
Es todo un reto asegurar la calidad de la información en un Data Warehouse debido, principalmente, al hecho de que muchos sistemas operacionales no realizan validaciones a la información ingresada, de manera que la información podría ser inconsistente, incorrecta y en un porcentaje faltante. Al proceso de mejoramiento de la información se le llama . Algunas formas en que puede ser necesario limpiar la información son las siguientes: •
•
•
•
Existen entidades con registros duplicados, que pueden tener errores ortográficos o incluso escritos exactamente igual. Diferentes sistemas fuente utilizan diferentes códigos. En algunos sistemas fuente, los campos pueden usarse para más de un propósito. Si los valores correspondientes pueden definirse, entonces los correctos deben ingresarse en los campos, de lo contrario debe definirse una forma consistente de desplegar los desconocidos.
19
Mary Karina Ruiz Torres
•
•
En ocasiones, los operadores de los sistemas fuente deben llenar un campo requerido y desconocen la información, por lo que ingresan una cadena de caracteres sin significado. Si el dato puede ser incorrecto y se tiene la posibilidad de verificarlo con otra fuente, entonces se eliminan posibilidades de error.
Existen tres cursos de acción generales: •
•
•
Cambiar los datos en la base de datos fuente e implementar procedimientos que eviten la ocurrencia de estos errores. Modificar los datos conforme ingresan al Data Warehouse. Integrar el dato tal y como se encuentra en la fuente y documentar el problema, de forma tal que los usuarios estén conscientes de la situación.
Ciertamente, lo mejor es corregir el problema desde los sistemas fuente pero, a menudo, no resulta práctico. La limpieza de datos es costosa y requiere mucho tiempo; la calidad de la información puede mejorarse, y sin embargo, probablemente no llegará a ser perfecta.
1.8 Metadato Todos los elementos de un Data Warehouse deben entenderse de manera que los usuarios sepan lo que obtienen, es decir, necesitan conocer desde dónde viene el dato y cómo se ha modificado para depositarse en el Data Warehouse. Además, requieren saber la exactitud del dato y lo que se ha realizado para corregir las inconsistencias. El metadato provee la descripción de varios elementos del dato. Existen dos tipos de metadato para este tipo de sistema: •
Describe completamente los datos desde la perspectiva técnica, es decir, es el tipo de información que una persona con perfil técnico necesita para procesar los datos de manera correcta: 1. Nombres de campos, tablas y bases de datos. 2. Nombres de niveles, jerarquías, dimensiones, cubos y bases de datos OLAP. 3. Tipos de datos. 4. Longitud de campos. 5. Valores nulos. 6. Valores por default. 7. Índices. 8. Llaves primarias y foráneas.
20
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
9. Relaciones. 10. Reglas y constraints. 11. Transformaciones y mapeos. 12. Procedimientos de limpieza de datos. 13. Seguridad de la información. 14. Historia de la creación y modificación de la estructura de datos. 15. Historia de las transformaciones. •
Es la descripción de los datos que se muestra a la persona que consulta la información, ésta incluye: 1. Descripciones de campos, tablas y bases de datos. 2. Descripciones de niveles, jerarquías, dimensiones, cubos y bases de datos OLAP. 3. Descripciones de mapeos y transformaciones. 4. Descripciones de procedimientos de limpieza. 5. Reportes. 6. Referencias a los metadatos técnicos.
Algunas razones por las cuales es necesario el metadato son: •
•
•
Existen varios tipos de fuentes de datos y cada uno los define de manera específica. El metadato provee una forma consistente de describir las estructuras de datos y la fuente de datos de que se trate. Es importante tener la capacidad de describir los cambios realizados a la información conforme ésta se transforma, de manera tal que los analistas de la información puedan tener la confianza de que el material que ven representa de forma precisa la información de la organización. Los usuarios de la información necesitan una explicación clara sobre el significado de cada uno de los campos, medidas, niveles y dimensiones. Una de las partes importantes del metadato es una interfaz amigable que contenga dicha descripción del dato.
21
Mary Karina Ruiz Torres
Ilustración 7. Definición del metadato.
1.9 Estructuras de datos para el análisis de negocio Existe un número ilimitado de formas en que una empresa puede estructurar la información que será utilizada en el análisis de negocio, por ello se mencionan tres de las formas más representativas: 1.9.1 Non-architected
En este tipo de estructura no existe un Data Warehouse y se compone por data marts independientes donde no existe la intención de analizar la información de todos desde una perspectiva global. Este tipo de estructura se construye rápidamente, puesto que no se tienen que homogeneizar conceptos sobre los distintos elementos de información con las personas de otros departamentos. Las desventajas de esta estructura son: •
•
•
22
Limita el objetivo de análisis de información por parte del usuario, ya que va en contra del objetivo de un Data Warehouse de tener una presentación unificada de la información del negocio. Se vuelve muy complicado unir los data marts creados de forma independiente. Si alguna vez se desea ver los datos de un departamento junto con los de otro, se tienen que desarrollar transformaciones de manera que la información coincida en una estructura única, de cualquiera de los dos data marts.
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
SISTEMAS OLTP
DATA MARTS
CUBOS OLAP
FUENTES DE DATOS EXTERNAS
Ilustración 8. Estructura no-arquitectónica con data marts independientes. SISTEMAS OLTP
CUBOS OLAP
FUENTES DE DATOS EXTERNAS
Ilustración 9. Estructura no-arquitectónica con cubos como data marts.
1.9.2 Data marts dependientes
Siendo que un data mart es un subconjunto del Data Warehouse, el primero recibe su información a partir del Data Warehouse, en ese sentido, se optimiza para las necesidades de análisis particulares del departamento para el cual ha sido creado.
23
Mary Karina Ruiz Torres
DATA WAREHOUSE
DATA MARTS
Ilustración 10. Estructura de data marts dependientes.
1.9.3 Bus
En esta estructura, cada data mart es una parte del Data Warehouse y también se encuentra conectado al bus del Data Warehouse, que contiene los elementos de información comunes que son utilizados por todos los data marts. Estos elementos constan de dimensiones y métricas que han sido definidas por la organización. Si cada data mart utiliza estos elementos comunes, el analista puede consultar todos los data marts al mismo tiempo. Cuando se emplea este tipo de estructura, el Data Warehouse se convierte más en un elemento virtual que en una realidad, todos los data marts pueden ser almacenados en un servidor y si así fuera, el Data Warehouse estaría en el mismo servidor. Así mismo, los data marts podrían estar en servidores separados y el Data Warehouse tendría una existencia virtual, ya que no es más que la suma de todos los data marts. DATA WAREHOUSE
CUBOS OLAP
DATA MART
DATA MART DATA MART
Ilustración 11. Estructura de bus.
24
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
1.10 Selección de un DBMS Uno de los problemas con el software de Data Warehouse ha sido la precipitación de las compañías por entrar en el uso de la nueva tecnología, al distorsionar el concepto de Data Warehouse en productos de procesamiento transaccional tradicionales. [Chris Erickson, presidente de Red Brick]. La compañía Red Brick Systems ha establecido un conjunto de criterios para definir cuándo un manejador de bases de datos (DBMS) es adecuado para Data Warehousing, éstos son los siguientes: •
•
•
•
•
•
Un Data Warehouse requiere cargas incrementales de nueva información sobre bases periódicas en ventanas de tiempo reducidas. El desempeño en los procesos de carga debe medirse en cientos de millones de registros y gigabytes por hora, y no debe limitarse artificialmente el volumen de datos requerido por el negocio. Se debe efectuar un proceso para cargar o modificar datos en el Data Warehouse, lo que incluye conversiones, filtros, dar formato, chequeo de integridad, almacenamiento físico, indexación y actualización del metadato. Estos pasos deben ejecutarse en una unidad de trabajo simple. Una de las demandas principales en la administración de datos es la alta calidad que se requiere. El Data Warehouse debe asegurar la consistencia y la integridad referencial, a pesar de lo “sucio” de la información fuente y del tamaño de la base de datos. Mientras que la carga y preparación son pasos necesarios, no son suficientes. La respuesta a las consultas es la medida de éxito de un Data Warehouse, dado que entre más consultas sean respondidas, los analistas estarán con mayor motivación para formular preguntas creativas y profundas. Deben completarse consultas grandes y complejas en el menor tiempo posible (en segundos), ya que el análisis de información no debe afectarse por el desempeño del DBMS. Actualmente, el tamaño de un Data Warehouse abarca desde unos cuantos cientos de gigabytes hasta terabytes. El DBMS no debe tener limitaciones arquitectónicas, ya que es capaz de soportar la administración modular y paralela, asegurar su disponibilidad aún en eventos de falla con métodos efectivos de recuperación de información. Así mismo, debe soportar dispositivos de almacenamiento masivo y por último, el desempeño en las consultas no debe ser dependiente del tamaño de la base, sino de la complejidad de la consulta misma. El acceso al Data Warehouse no debe limitarse a unos cuantos usuarios, por lo que el DBMS debe soportar el acceso de cientos e incluso miles de usuarios concurrentes, mientras se mantiene un desempeño aceptable en la respuesta de las consultas.
25
Mary Karina Ruiz Torres
•
•
•
•
Cuando múltiples Data Warehouses necesitan cooperar en una red de Warehouses, el servidor debe incluir herramientas que coordinen el movimiento de los subconjuntos de datos entre las diversas bases. Los usuarios deben ser capaces de trabajar con los múltiples Data Warehouses desde una estación de trabajo única y, por otro lado, los administradores deben realizar sus funciones desde la misma ubicación física. La naturaleza del Data Warehouse, en cuanto a tamaño y periodicidad, demanda una fácil administración y flexibilidad. EL DBMS debe proveer los controles indispensables para implementar límites en el uso de recursos y priorización de consultas, con objeto de direccionar las necesidades de los diferentes usuarios. Además, debe permitir el seguimiento de las cargas de trabajo y afinación, de forma tal que los recursos del sistema puedan optimizarse para un mejor rendimiento. El poder de las vistas multidimensionales es ampliamente demandado, por lo que el soporte dimensional debe ser inherente al DBMS para proveer el más alto desempeño a las herramientas OLAP. El DBMS debe permitir de forma rápida y sencilla la creación de agregaciones precalculadas en un Data Warehouse de gran tamaño. Además, de dotar de herramientas de mantenimiento para automatizar la creación de estos agregados y su cálculo dinámico, el cual debe ser consistente con las necesidades de desempeño en la interacción con el usuario. Los usuarios finales requieren de cálculos analíticos avanzados, análisis secuenciales, análisis comparativos y acceso consistente a datos sumarizados y detallados. Utilizar una herramienta SQL en un ambiente cliente/servidor puede, en ocasiones, ser impráctico o incluso imposible. EL DBMS debe proveer un conjunto completo de operaciones analíticas, incluyendo operaciones secuenciales y estadísticas.
1.11 Selección de hardware Los procedimientos de transformación de datos y construcción de cubos, son “altamente consumidores” de memoria y procesamiento, a menos de que se trate de un proyecto muy pequeño, donde se dedican recursos de hardware bajo los siguientes criterios: •
•
•
26
Los servicios de transformación de datos y OLAP son aplicaciones multihilo (multithreaded applications), lo que implica que correrán más rápido en máquinas con múltiples procesadores. Las consultas responderán en tiempos cortos, si la información a la que se accede se encuentra en caché. El espacio de almacenamiento se necesita para el almacén central (data staging area), los data marts y los cubos; de manera que si el espacio y los tiempos de procesamiento se encuentran disponibles, un mayor número de agregaciones puede crearse, lo que incrementa la velocidad de consulta para los usuarios finales.
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
•
•
Hardware para el almacenamiento de respaldos. Si se tienen más de 100 GB de información, posiblemente pueda ser una opción almacenar algunos de los datos más antiguos o menos utilizados en un sistema de almacenamiento más económico.
1.12 Seguridad El objetivo de un Data Warehouse es el de obtener información para usuarios de todas las áreas de negocio y como tal, las cuestiones de seguridad implican un alto riesgo. Lo anterior se debe a que los administradores de bases de datos pueden restringir permisos de acceso, además de la información que se necesita o bien, un departamento podría no estar de acuerdo en que su información se encuentre visible a otros. Un Warehouse debe ser capaz de integrar un gran número de requerimientos de seguridad. Puede tener parte de la información que sea visible a todo tipo de usuarios, otra que sea visible solo para empleados de un departamento y, otra más que únicamente esté visible para empleados con permisos especiales. La seguridad se considera con base en los siguientes elementos: •
Transformaciones de datos.
•
Almacenamiento de datos.
•
Creación de cubos OLAP.
•
Acceso a herramientas de consulta de los cubos OLAP.
•
Almacenamiento de los cubos.
1.13 Aplicaciones 1.13.1 Ventas
OLAP ha sido utilizado para el análisis de datos de ventas más que para cualquier otro propósito, ya que tanto almacenes, como distribuidores y fabricantes, necesitan saber cuáles productos son los que venden. La información de ventas puede usarse para: •
•
•
•
•
Asegurar la existencia de la cantidad necesaria del producto en todo momento. Reducir el nivel de mercancía no vendida o regresada. Administrar canales de distribución. Mover mercancía entre zonas, con base en la necesidad. Analizar tendencias para futuras ventas potenciales.
27
Mary Karina Ruiz Torres
1.13.2 Efectividad de promociones
Otro interés de los vendedores es la medición en resultados de sus promociones, cuya efectividad se basa en las siguientes cuestiones: •
•
•
•
¿En qué porcentaje se vendió el producto antes, durante y después de la promoción? ¿Tuvieron las promociones un efecto positivo o negativo en la venta de algún otro producto? ¿Cuál fue el beneficio económico positivo de la promoción en comparación con sus costos? ¿Cómo se comparan los resultados de esta promoción con otras promociones? 1.13.3 Análisis de clientes
Por lo general, la información del cliente se recopila con propósitos de conocimiento de perfiles (segmentación de mercado), es decir, permite determinar cuáles grupos demográficos responderán de mejor manera a los esfuerzos de mercadotecnia por realizarse. La información del cliente que podría considerarse valiosa incluye: •
Rango de ingresos.
•
Ocupación.
•
Estado civil.
•
Número de hijos.
•
Edad.
•
Sexo.
•
Ubicación geográfica.
•
Nivel de educación.
•
Comportamiento previo de compras.
Toda esta información es útil, pero lo primero que un negocio debe determinar es, ¿quiénes son sus clientes más frecuentes? Existen muchas empresas que almacenan los nombres y direcciones de sus clientes, pero que nunca utilizan esa información para algún tipo de análisis. Por ejemplo, si se desconoce el nivel de ingreso de un cliente, pero se conoce su dirección, puede hacerse un tipo de análisis basándose en el ingreso promedio de la gente que vive en un área geográfica particular. Otro punto importante es el grado de satisfacción del cliente. El análisis OLAP permite identificar patrones tanto de satisfacción como de insatisfacción. Información acerca de
28
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
mercancía que es devuelta y las quejas recibidas puede capturarse y organizarse para su análisis. Esta información puede ser valiosa, vista desde las siguientes dimensiones: •
•
•
•
•
Producto, línea de producto y manufactura. Tiempo (¿Las quejas se incrementan o disminuyen cuando son vistas a través de distintos periodos?). Ubicación de almacenes. Vendedores. Descripción demográfica del cliente.
De esta forma, es posible clasificar las quejas o devoluciones dentro de varias categorías de problemas. Si un tipo particular de problema es recurrente, un conjunto de problemas pueden ser atendidos al mismo tiempo. Además, es importante mantener detalles individuales de cada queja, de manera que el analista puede ver en detalle lo que dicen los clientes con este tipo de queja en particular. Ahora bien, para las compañías de servicios financieros o bancarios, el mayor beneficio se da cuando se mantiene la lealtad del cliente. Uno de los retos de estas compañías es identificar qué cuentas representan al mismo cliente. Una familia puede tener diversas cuentas registradas con diferentes nombres, pero lo que es más importante para un banco es reconocer las cuentas que pertenecen a una misma familia, debido a que desean enfocar sus esfuerzos de lealtad del cliente a nivel familiar. Muchas compañías de servicios financieros creen que la estrategia más efectiva para impulsar la lealtad del cliente es hacer de cada familia, un cliente múltiple. Diferentes estudios han demostrado que la gente está menos dispuesta a cambiar de banco, si tienen dos o más cuentas en una institución. De manera adicional, este tipo de instituciones utiliza información demográfica e información actual de la cuenta, con la finalidad de determinar cuáles servicios adicionales podrían necesitarse, de forma que pueden dirigirse estrategias de mercado para convertir una cuenta única en cuentas múltiples. 1.13.4 Análisis por regiones geográficas
El análisis OLAP puede usarse para apoyar a los distribuidores interesados en responder cuestiones críticas acerca de ubicaciones. Por ejemplo: •
•
•
•
¿Cuáles sucursales son más rentables? ¿Qué factores son los más importantes a considerar en la construcción de futuras sucursales? ¿Qué tiendas se han convertido en más o menos redituables? ¿Cómo afecta la ubicación de un local las ventas de un producto en particular o una línea de producto?
29
Mary Karina Ruiz Torres
Los distribuidores siempre han reconocido el beneficio de posicionar un producto en un lugar estratégico y poner otros cerca de éste. 1.13.5 Actividades gerenciales (administrativas)
Muchos negocios solo son redituables cuando operan a su mayor capacidad o algo cercano a esto, como ejemplos de ello están las aerolíneas y hoteles, que pierden su valor rápidamente si en parte no son ocupados. Todas las compañías emplean diversas estrategias de mercadotecnia para asegurar que alcanzarán su más alto nivel de uso. El análisis OLAP puede apoyar a las compañías en el alcance de dichos objetivos. Los factores que afectan su capacidad pueden ser monitoreados y analizados. Pueden realizarse comparaciones entre periodos similares; las tendencias pueden marcarse con anticipación de manera que los precios pueden elevarse o disminuirse y las estrategias de mercado pueden modificarse de forma apropiada. Los análisis OLAP posteriores pueden llevarse a cabo sobre estrategias de mercado particulares, con la finalidad de determinar cuáles son las más efectivas y redituables. 1.13.6 Inventarios
El análisis OLAP apoya el manejo de factores críticos que permiten una administración adecuada del inventario: •
La cantidad de producto disponible en cada local.
•
¿Qué tan rápido es utilizado el producto?
•
¿Cuánto tiempo más tomará abastecer el producto?
•
¿Cuánto tiempo tomará mover el producto de una ubicación a otra?
•
•
Medir la velocidad del inventario (qué tan rápido se mueve el inventario en el sistema de Data Warehouse). El costo de almacenar el producto en el almacén.
El sistema OLAP permite llevar una secuencia de los productos en el almacén y, por otro lado, define el espacio disponible en éste para que los productos puedan almacenarse y distribuirse de forma tal que traigan el mayor beneficio al negocio. 1.13.7 Costos en procesos de fabricación
Uno de los puntos de interés donde el OLAP puede resultar de ayuda para los fabricantes tiene que ver con el control de inventarios mencionado en el párrafo anterior, y un segundo punto relevante, es el análisis de costos en el proceso de fabricación.
30
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Si una compañía fabrica un producto en diferentes plantas o líneas dentro de una planta, la entrada y salida para cada unidad de producción puede examinarse y compararse. La producción puede compararse por varios factores de tiempo (el año pasado contra el año actual, el mes pasado contra el actual, etcétera), de manera que la producción puede ser comparada incluso, cuando individuos o diferentes grupos de individuos se encuentren trabajando. Si la compañía emplea un sistema de costeo, donde cada tiempo por individuo y por máquina se agrega al costo del producto, entonces el OLAP puede usarse para comparar la ganancia relativa de diferentes productos y procesos de manufactura.
1.14 Bases de datos para Data Warehousing A continuación, se presenta una lista de bases de datos que cumplen con las características necesarias para el desarrollo del Data Warehouse y sistemas de apoyo en la toma de decisiones. Alterian Nucleus
Alterian Limited
www.alterian.com
Analysis Engine
Aleri
www.aleri.com
Broadbase EPM
Broadbase Information Systems
www.broadbase.com
DB2
IBM
www.software.ibm.com/data/db 2/index.html
DEX
New York Software Company
www.nysco.co.uk
D3
Pick Systems
www.picksys.com
FAME Database
Fame Information Services
www.fame.com
GeneXus
ARTech
www.genexus.com/main/hmain. aspx
Hilbert Engine
InMentia Technology
www.inmentia.com
HiRDB
Hitachi
www.hicam.hitachi.com
HOPS
HOPS International
www.hops.com
Informix Dynamic Server
Informix
www.informix.com
Ingres II
Computer Associates
www.cai.com
Intelligent Exploration
Synera
www.synerasystems.com
JS
ORI Software
www.orisoftware.com
Kdb
Kx Systems
www.kx.com
Linter
RelexUS
www.relexus.com
MaxScan
MaxScan
www.maxscan.com
31
Mary Karina Ruiz Torres
meta5
Meta5
www.meta5.com
Microsoft SQL Server
Microsoft
www.microsoft.com/sql/
Mimer
Sysdeco Mimer AB
www.mimer.com
Model 204
Computer Corporation of America www.cca-int.com
MPbase
Open Sky Technologies
www.openskytech.com
MSM
Micronetics
www.micronetics.com
Netezza Performance Server
Netezza
www.netezza.com
NGram Transform-DB
Triada
www.triada.com
Nucleus Server
Sand Technology Systems
www.sandtechnology.com
Oracle 9i
Oracle
www.oracle.com
Polyhedra
Polyhedra
www.polyhedra.com
Rapid
Automsoft International
www.automsoft.com/index.html
Red Brick Warehouse
Informix
www.informix.com
Sahara
Integrix
www.integrix.co.uk
SAS Software
SAS
www.sas.com
Seisnt
Seisnt
www.seisnt.com
Sentences
Lazy Software
www.lazysoft.com
StorHouse/RM
FileTek
www.filetek.com
Sybase Adaptive Server, Adaptive Server IQ
Sybase
www.sybase.com
SymfoWARE Server
Fujitsu
www.symfoware.com
Tamino
Software AG
www.softwareag.com
Teradata DBS
NCR
www.teradata.com
Thunderbolt VLDB
WhamTech
www.whamtech.com
Time Machine
Data Management Technologies www.dmtech.com Inc.
TimeCube
TimeCube
www.timecubeinc.com
TimesTen Data Manager
TimesTen Performance Software
www.timesten.com
Titanium
Micro Data Base Systems, Inc.
www.mdbs.com
Vision
Innovative Systems Techniques, Inc.
www.insytenet.com
Visual Dimension
VisualMetrics Corporation
www.visualmetrics.com
WIDAS
MSI AG
www.widas.com
32
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
2.1 Definición Las dos décadas pasadas han visto un aumento dramático en la cantidad de información o datos almacenados en formato electrónico. Esta acumulación de datos ha tenido lugar a un nivel explosivo. Se estima que la cantidad de información en el mundo se duplica cada 20 meses, y el tamaño y número de bases de datos crecen aun más rápido. Los dispositivos que permiten el acceso remoto han contribuido al aumento en el uso de datos electrónicos.
Ilustración 12. Crecimiento de la información.
El almacenamiento de datos llegó a ser más fácil conforme descendía el costo en el poder de procesamiento y almacenamiento, lo que hacía el dato “barato”. También influyeron la introducción de nuevos métodos para la representación del conocimiento basado en la lógica de programación, junto con el análisis de datos estadístico
33
Mary Karina Ruiz Torres
tradicional. Los nuevos métodos tienden a ser computacionalmente más demandantes de poder de procesamiento. Los algoritmos de minería de datos comprenden técnicas que han existido al menos por 10 años, pero han sido implementadas recientemente como herramientas maduras, redituables y entendibles que utilizan este tipo de métodos estadísticos.
Colección de datos (1960s)
¿Cuál fue mi ganancia total en los últimos 5 años?
Computadoras, cintas, discos.
IBM, CDC.
Retrospectiva, entrega de datos estática.
Acceso a datos (1980s)
¿Cuántas fueron las unidades vendidas en el Nuevo León en marzo pasado?
Bases de datos relacionales (RDBMS), Lenguaje de consulta estructurado (SQL), ODBC.
Oracle, Sybase, Informix, IBM, Microsoft.
Retrospectiva, entrega de datos dinámica a nivel de registros.
Data Warehousing & Soporte a la toma de decisiones (1990s)
¿Cuáles fueron las unidades vendidas en Nuevo León en marzo pasado con respecto a Monterrey únicamente?
Procesamiento Pilot, Comshare, analítico en línea Arbor, Cognos, (OLAP), bases de Microstrategy. datos multidimensional es, Data Warehouses.
Retrospectiva, entrega de datos dinámica a múltiples niveles.
Minería de datos (Actualmente)
¿Cuáles podrían Algoritmos ser las unidades avanzados, vendidas en multiprocesamie Nuevo León nto, bases de para el siguiente datos masivas. mes? ¿Por qué?
Pilot, Lockheed, IBM, SGI, numerosas empresas “nuevas”.
Prospectiva, entrega de información preactiva.
Ilustración 13. Evolución de la minería de datos.
Ahora bien, habiéndose concentrado en la acumulación de datos, el siguiente problema de enfoque es: ¿qué hacer con este valioso recurso? Sin duda, uno de los usos principales que puede darse a la información es apoyar la operación del negocio y dar a los tomadores de decisiones una opción de gran valor para ganar conocimiento del negocio y su entorno. Los Sistemas Manejadores de Bases de Datos (DBMS) dieron acceso a los datos almacenados, pero ésta es solo una pequeña parte de lo que puede ganarse a través de los datos; los sistemas tradicionales de procesamiento en línea (OLTP) están diseñados para insertar datos en las bases de datos rápida, segura y de forma eficiente, pero no son buenos para la entrega de análisis significativos.
34
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
El análisis de datos puede proveer conocimiento adicional acerca del negocio, yendo más allá de los datos explícitamente almacenados que derivan en conocimiento del negocio. Aquí es donde la minería de datos o descubrimiento del conocimiento en bases de datos (KDD – Knowledge Discovery in Databases) tiene beneficios obvios para cualquier empresa. El término minería de datos ha sido llevado más allá de sus límites para aplicar a cualquier forma de análisis de datos. Algunas de las numerosas definiciones de minería de datos son: •
•
Minería de datos o descubrimiento del conocimiento en bases de datos (KDD,) como también se le conoce, es la extracción no trivial de información potencialmente utilizable y previamente desconocida. Esto comprende un número de diferentes enfoques técnicos tales como agrupaciones (clustering), sumarización de datos, clasificación de reglas de aprendizaje, análisis de cambios y detección de anomalías. [William J Frawley, Gregory Piatetsky-Shapiro and Christopher J Matheus]. Minería de datos es la búsqueda de relaciones y patrones globales que existen en grandes bases de datos pero que se encuentran “escondidas” entre grandes cantidades de datos; tal como una relación entre datos del paciente y su diagnóstico médico, esta relación representa conocimiento valioso acerca de la base de datos y los objetos en ella. [Marcel Holshemier & Arno Siebes (1994)].
La analogía con el proceso de minería se describe de la siguiente manera: Minería de datos se refiere al uso de un conjunto de técnicas para identificar trozos de información o conocimiento para la toma de decisiones en grupos de datos y extraer los mismos, de forma tal que puedan ser puestos en uso en áreas tales como apoyo a la toma de decisiones, predicción y estimación. Los datos a menudo son voluminosos, pero como muchos de ellos tienen un valor bajo y no se puede hacer uso directo de ellos, es la información escondida en los datos la que es útil. [Clementine User Guide, a data mining toolkit].
Básicamente, la minería de datos se preocupa por el análisis de datos y el uso de técnicas de software para encontrar patrones y regularidades en conjuntos de datos. La computadora es la responsable de ubicar los patrones, mediante la identificación de reglas subyacentes y características en los datos. La idea es que es posible encontrar información valiosa en lugares insospechados, conforme el software de minería de datos extrae patrones no discernidos previamente o tan obvios que nadie los había notado antes. Las mejores técnicas de minería de datos son aquéllas desarrolladas con una orientación hacia grandes volúmenes de datos, haciendo uso de la mayor cantidad de datos posible para llegar a las conclusiones y decisiones confiables. El proceso de análisis, inicia con un conjunto de datos, utiliza una metodología para desarrollar una representación óptima de la estructura de datos, durante la cual se adquiere conocimiento del tiempo. Una vez que el conocimiento se adquiere, puede extenderse a grandes conjuntos de datos asumiendo que éstos tienen una estructura similar a los datos muestra tomados.
35
Mary Karina Ruiz Torres
El siguiente diagrama resume algunos de los procesos/etapas identificados en la minería de datos y descubrimiento del conocimiento: [Usama Fayyad & Evangelos Simoudis] Evaluación Minería de Datos Conocimiento Transformación
Preprocesamiento
Patrones
Datos Transformados
Selección
Datos
Datos Preprocesados Datos Objetivo Ilustración 14. Fases de la minería de datos.
Las fases que se muestran inician con los datos crudos y terminan con la extracción del conocimiento que se ha adquirido como resultado de las siguientes etapas: •
•
•
•
36
Elegir o segmentar los datos de acuerdo con los criterios establecidos, por ejemplo, todas las personas que poseen un auto forman un subconjunto de datos que puede definirse. Esta es la fase de limpieza de datos, por lo que se elimina aquella información que se considera innecesaria ya que puede hacer más lentas las consultas, por ejemplo, es innecesario anotar el sexo de un paciente cuando se estudia el embarazo. Además, los datos son reconfigurados para asegurar un formato consistente ya que provienen de diversas fuentes. Por ejemplo, el sexo puede guardarse como M o F o bien como 0 o 1. El dato no es simplemente transferido a lo largo del proceso, sino que se transforma de manera que pueda ser utilizable y navegable. Esta etapa está relacionada con la extracción de patrones a partir de los datos. Un patrón puede definirse como un conjunto de hechos (datos) F, un lenguaje L y algunas medidas de certeza C. De esta manera, un patrón es una sentencia S en L que describe relaciones entre un subconjunto Fs
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
de F con una certeza C, de manera que S es más simple que la enumeración de todos los hechos en Fs. •
Los patrones identificados por el sistema son interpretados en conocimiento, que se puede usar como apoyo en la toma de decisiones, predicción y clasificación de tareas, sumarización del contenido de una base de datos o al explicar el fenómeno observado.
2.2 Campos de investigación precedentes La minería de datos ha aprovechado otros campos de investigación como son el aprendizaje inductivo, máquinas de aprendizaje y estadísticas, entre otros. 2.2.1 Aprendizaje inductivo
Inducción es la inferencia de información a partir de datos y el aprendizaje inductivo es el proceso de construir modelos donde el ambiente es analizado con el objeto de encontrar patrones. Los objetos similares son agrupados en clases, y se formulan reglas a través de las cuales es posible predecir las clases de objetos no vistos. Este proceso de clasificación identifica clases, de manera que cada una tiene un patrón específico de valores que forma la descripción de la clase. La naturaleza del ambiente es dinámica ya que en adelante el modelo debe ser adaptativo, es decir, debe ser capaz de aprender. Por lo general, solo es posible utilizar un pequeño número de propiedades para caracterizar objetos, de forma que hacemos abstracciones en aquellos que satisfacen el mismo subconjunto de propiedades y que son mapeados a la misma representación interna. El aprendizaje inductivo, donde el sistema infiere conocimiento a partir de la observación de su ambiente, tiene dos estrategias principales: •
•
Se realiza a partir de ejemplos, un “profesor” ayuda al sistema a construir un modelo mediante la definición de clases y proveyendo ejemplos de cada clase. El sistema tiene que encontrar una descripción de cada clase, así como las propiedades comunes en los ejemplos. Una vez que la descripción se formula, tanto ésta como la clase forman una regla que podrá usarse para predecir la clase de objetos no vistos con anterioridad. Se lleva a cabo considerando la observación y el descubrimiento. El sistema de minado de datos es alimentado con objetos, pero no se definen clases, de manera que se tienen que observar los ejemplos y reconocer patrones por sí mismo. De este sistema resulta un conjunto de descripciones de clases, uno para cada clase descubierta en el ambiente.
La inducción es, por lo tanto, la extracción de patrones. La calidad del modelo producido por los métodos de aprendizaje inductivo es tal, que puede emplearse para predecir la venida de situaciones futuras, en otras palabras, no sólo para definir estatus encontrados sino los nunca vistos que pueden ocurrir. El problema es que la mayoría de los ambientes tienen diferentes
37
Mary Karina Ruiz Torres
estatus (cambios internos), y no siempre es posible verificar un modelo mediante la revisión de todas las situaciones posibles. Dando un conjunto de ejemplos, el sistema puede construir múltiples modelos, algunos de los cuales serán más simples que otros. 2.2.2 Estadísticas
Las estadísticas tienen un fundamento teórico sólido, aunque los resultados pueden ser abrumadores y difíciles de interpretar conforme requieren guía por parte del usuario y la manera en que analizan los datos. La minería de datos, sin embargo, permite que el conocimiento del experto y las técnicas avanzadas de análisis en la computadora trabajen juntas. Los sistemas de análisis estadísticos, tales como SAS y SPSS, se han usado por el analista para detectar patrones inusuales y explicar patrones mediante modelos estadísticos como los lineales. Las estadísticas tienen un papel que jugar y la minería de datos no remplazará tales análisis pero, en vez de ello, pueden actuar sobre análisis más directos basados en los resultados de la minería de datos. 2.2.3 Máquinas de aprendizaje
La máquina de aprendizaje es la automatización de un proceso de aprendizaje, equivalente a la construcción de reglas basadas en observaciones de los diferentes estatus y transiciones. Este es un campo que incluye no sólo el aprendizaje a partir de ejemplos, sino también el que está reforzado con un “profesor”. Un algoritmo de aprendizaje toma el conjunto de datos y su información relacionada como entrada y regresa una sentencia, en este caso un concepto y muestra los resultados del aprendizaje. Una máquina de aprendizaje examina los ejemplos previos y sus resultados, con la finalidad de aprender la manera de reproducirlos y hacer generalizaciones acerca de nuevos casos. Por lo general, un sistema de este tipo no utiliza observaciones simples de su ambiente sino un conjunto completo y finito llamado el conjunto de entrenamiento, que contiene ejemplos y debe ser finito, ya que no todos los conceptos pueden aprenderse con exactitud. 2.2.4 Diferencias entre minería de datos y máquinas de aprendizaje
La minería de datos y las máquinas de aprendizaje se complementan en los algoritmos utilizados y los problemas en los que se enfocan. Las principales diferencias son: •
•
38
La minería de datos se enfoca en el encuentro de conocimiento entendible, mientras las máquinas de aprendizaje en el mejoramiento del rendimiento de un agente. Así, entrenar una red neuronal para equilibrar un polo es parte de la máquina de aprendizaje, pero no de la minería de datos. Sin embargo, existen esfuerzos para extraer conocimiento de las redes neuronales que son muy relevantes para la minería de datos. La minería de datos trabaja con grandes bases de datos, mientras que una máquina de aprendizaje, la mayoría de las veces (no siempre), busca en
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
conjuntos pequeños de datos, en ese sentido, las preguntas de eficiencia son mucho más importantes en la minería de datos. •
La máquina de aprendizaje tiene un amplio campo que incluye, no sólo el aprendizaje a partir de ejemplos, sino también el reforzamiento del aprendizaje con un “profesor”.
La minería de datos es parte de la máquina de aprendizaje, cuyo objetivo es encontrar conocimiento entendible en grandes conjuntos de ejemplos del mundo real. Cuando se integran técnicas de las máquinas de aprendizaje a los sistemas de bases de datos para implementar minería de datos, estas bases de datos requieren: •
•
Algoritmos más eficientes de aprendizaje, debido a que las bases de datos normalmente son muy grandes y confusas. Es común que la base de datos sea diseñada para propósitos diferentes a la minería de datos, de manera que las propiedades o atributos que pudieran simplificar la tarea de aprendizaje no están presentes y tampoco pueden ser requeridas del exterior. Las bases de datos normalmente son contaminadas con errores, de manera que el algoritmo de minería de datos tiene que lidiar con “basura” mientras que la máquina de aprendizaje tiene un tipo de laboratorio con ejemplos que son lo más perfectos posibles. Un mayor número de representaciones expresivas para ambos datos: las tuplas en las bases de datos relacionales (las cuales representan instancias de un problema de dominio) y reglas en un sistema basado en reglas, las cuales pueden usarse para resolver problemas de usuarios en el dominio.
Se espera que los sistemas de minería de datos incluyan tres fases interconectadas: •
•
•
La traducción de información estándar de la base de datos en una forma adecuada para emplearla en el aprendizaje. El uso de las técnicas de las máquinas de aprendizaje para producir bases de conocimiento a partir de las bases de datos. Interpretar el conocimiento producido para la solución de problemas y/o reducir espacios de datos, siendo éstos últimos el número de ejemplos.
2.3 Modelos de minería de datos IBM ha identificado dos tipos de modelos o modos de operación que pueden utilizarse para desenterrar información de interés para el usuario. 2.3.1 Modelo de verificación
El modelo de verificación toma una hipótesis del usuario y prueba su validez contra los datos. El énfasis se da con el usuario responsable de formular la hipótesis y emitir la consulta sobre los datos para afirmar o negar la hipótesis. En una división de mercadotecnia, por ejemplo, con un presupuesto limitado para una campaña de correo
39
Mary Karina Ruiz Torres
destinada a lanzar un nuevo producto sería importante identificar la sección de la población con mayor tendencia a comprar el nuevo producto. El usuario formula una hipótesis para identificar clientes potenciales y las características que éstos comparten. Los datos históricos acerca de las compras de los clientes y la información demográfica pueden consultarse para obtener datos comparables y las características compartidas por aquellos compradores que, en su momento, pueden usarse como objetivo de la campaña. La operación completa puede refinarse por una búsqueda más detallada (drill down), de manera que la hipótesis reduce el conjunto, continuando hasta llegar al límite requerido. El problema con este modelo es el hecho de que no se crea nueva información en el proceso de recuperación pero, en su lugar, las consultas siempre regresarán registros para verificar o negar la hipótesis. El proceso de búsqueda es iterativo, la salida es revisada y un nuevo conjunto de consultas o hipótesis pueden formularse para refinar la búsqueda y el proceso completo se repite. El usuario va descubriendo los hechos acerca de los datos mediante una variedad de técnicas como las consultas, el análisis multidimensional y la visualización que permiten guiar la exploración de los datos analizados. 2.3.2 Modelo de descubrimiento
En este modelo, el sistema descubre de manera automática la información escondida en los datos. El dato se refina en la búsqueda de patrones cuya ocurrencia es frecuente, tendencias y generalizaciones acerca de los datos sin intervención o guía por parte del usuario. Las herramientas de minería de datos tienden a revelar grandes números de hechos acerca de los datos en el menor tiempo posible. Un ejemplo de este tipo de modelo es una base de datos que es minada para descubrir los grupos de clientes a quienes se orientará una campaña de mercadotecnia. Los datos se buscan sin ninguna hipótesis, de manera que el sistema agrupe a los clientes de acuerdo con las características comunes que ha encontrado.
2.4 Problemas de la minería de datos Cuando los sistemas de minería de datos se alimentan de sistemas operacionales, surgen problemas debido a que este tipo de sistemas tienden a ser dinámicos, incompletos y grandes. Otros problemas surgen como resultado de la suficiencia y relevancia de la información almacenada. 2.4.1 Información limitada
A menudo, una base de datos es diseñada con diferentes propósitos a la minería de datos y, en ocasiones, las propiedades o atributos que podrían simplificar la tarea de aprendizaje no están presentes o no pueden obtenerse del mundo real. Los datos inconclusos causan problemas debido a que si algunos atributos esenciales para el conocimiento acerca del dominio de la aplicación no están presentes en los datos, esto
40
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
puede hacer imposible el descubrimiento de conocimiento significativo acerca de cierto tema de estudio. Por ejemplo, no puede diagnosticarse malaria en una base de datos de pacientes, cuando no contiene el conteo de células rojas en la sangre de los pacientes. 2.4.2 Valores faltantes y ruido
Las bases de datos generalmente son contaminadas por errores, por lo que no puede asumirse que los datos que contienen son completamente correctos. Los atributos que representan juicios subjetivos pueden originar errores, de manera que algunos ejemplos pueden clasificarse de forma errónea. Los errores en valores de atributos son conocidos como ruido. Obviamente, cuando sea posible, es deseable eliminar ese ruido de la información clasificada conforme afecta la exactitud de las reglas generadas. La información faltante puede tratarse por sistemas de descubrimiento en las siguientes formas: •
Ignorar los valores faltantes.
•
Omitir los registros correspondientes.
•
Inferir la información faltante a partir de valores conocidos.
•
Tratar los valores faltantes como un valor especial para incluirlos en el dominio.
•
Prorratear los valores faltantes.
Los datos ruidosos, en el sentido de ser imprecisos, son una característica de todas las colecciones de datos y, generalmente, caen dentro de una distribución estadística tal como la de Gauss, mientras los valores faltantes son entradas completamente erróneas. Los métodos estadísticos pueden tratar problemas de datos ruidosos y separarlos dependiendo del tipo de ruido. 2.4.3 Incertidumbre
La incertidumbre se refiere a la severidad del error en el nivel de ruido en los datos. La precisión es una consideración importante en el sistema de descubrimiento de información.
Las bases de datos tienden a ser grandes y dinámicas en el sentido de que su contenido cambia de manera constante conforme se agrega, modifica o elimina información. Desde la perspectiva de la minería de datos el problema es cómo asegurar que las reglas estén al día y sean consistentes con la mayoría de la información actual. Además, el sistema de aprendizaje debe ser sensitivo al tiempo conforme los datos varíen en el transcurso del tiempo, ya que el sistema de descubrimiento es afectado por la “puntualidad” de los datos. Otro factor es la relevancia o irrelevancia de los campos en la base de datos para el objetivo de descubrimiento, por ejemplo, los códigos postales son fundamentales para
41
Mary Karina Ruiz Torres
cualquier estudio que intenta establecer una conexión geográfica con un elemento de interés como ocurre con las ventas de un producto.
2.5 Usuarios de la minería de datos Los usuarios clave en perspectiva de la minería de datos son los analistas empresariales, los peritos en estadística y los profesionales en tecnología de la información que auxilian a los analistas. Quienes obtienen beneficios de los resultados de minería de datos son, por ejemplo, los analistas de negocio que desean entender los factores de éxito del negocio, con base en datos completos del cliente y utilizan posteriormente este conocimiento para afinar las estrategias de producción, precios y comercialización; mejorar el nivel de éxito de las estrategias e impulsar el balance. Conducida por el analista
Auxiliada por el analista
Procesamiento informático
Procesamiento analítico
−
−
Consultas Reportes
−
OLAP MDDBMS
−
OLAP Relacional
Conducida por los datos
Análisis estadístico de datos
Descubrimiento de conocimiento
Ilustración 15. Función del analista de negocio y de los datos.
Hasta hace poco, las empresas dependían del procesamiento informático y analítico para medir y comprender la estabilidad de un negocio. El procesamiento informático (consultas y reportes) es más sencillo de usar pero requiere de una estrecha dirección de los analistas, quienes preguntan cuestiones específicas y verifican las cuestiones o hipótesis con los datos. Para este fin, los datos deben estar bien organizados. El procesamiento analítico (OLAP) requiere de menos dirección del analista, aunque los datos deben organizarse de una forma especial (base de datos multidimensional). En ocasiones, se utiliza una combinación de técnicas de consulta y OLAP para comprender el comportamiento del cliente o construir perfiles de segmentos de mercado; pero el proceso de aplicar estas técnicas es conducido, esencialmente, por el analista de negocio. En estos casos, el proceso también se conoce como minería de datos. La minería de datos auxilia a los analistas de negocio en el procesamiento de considerables cantidades de información para descubrir relaciones insospechadas, como podrían ser entre productos y clientes o patrones de compra de los clientes. La meta es descubrir revelaciones estratégicas competitivas para controlar la participación en el mercado y las utilidades. Los analistas tienen un conjunto de necesidades; la primera es comprender qué está sucediendo en el negocio, la siguiente es por qué está sucediendo y la última es qué puede hacerse.
42
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
El valor de un análisis para los gerentes es más alto cuando se genera una recomendación factible, comprender el comportamiento y los pronósticos de clientes y mercados, y lo que puede hacerse son retos para las técnicas tradicionales de análisis. Las consultas, reportes y análisis multidimensionales tradicionales se concentran en lo que sucede y, en menor medida, el porqué. La minería de datos se concentra en llenar la necesidad de descubrir el porqué, para luego predecir y pronosticar las posibles acciones con cierto factor de confianza para cada predicción. NECESIDADES EMPRESARIALES ¿ACCIÓN? ¿PORQUÉ
¿QUÉ QUÉ?? COMPLEJIDAD
Ilustración 16. Minería de datos y el apoyo a la toma de decisiones.
2.6 Aplicaciones La minería de datos tiene muchos y variados campos de aplicación, algunos de los cuales se mencionan a continuación: 2.6.1 Ventas/mercadotecnia •
Identificar patrones de compra de los clientes.
•
Encontrar asociaciones de los clientes por sus características demográficas.
•
Predecir la respuesta a las campañas de mercadotecnia.
•
Análisis de la canasta básica. 2.6.2 Actividades bancarias
•
Identificar patrones de fraudes en el uso de tarjetas de crédito.
•
Identificar clientes leales.
•
Predecir cuáles clientes podrían cambiar de institución crediticia.
•
Encontrar relaciones ocultas entre los diferentes indicadores financieros.
•
Identificar las reglas de negociación a partir de datos históricos del mercado.
43
Mary Karina Ruiz Torres
2.6.3 Seguros y salud •
Análisis de reclamos, esto es, identificar qué procedimientos médicos son reclamados en conjunto.
•
Predecir qué clientes comprarán nuevas pólizas.
•
Identificar patrones de comportamiento en clientes riesgosos.
•
Reconocer comportamientos fraudulentos. 2.6.4 Transporte
•
•
Determinar la distribución de horarios entre terminales. Analizar patrones de carga. 2.6.5 Medicina
•
Caracterizar el comportamiento de los pacientes para predecir visitas.
•
Identificar terapias médicas exitosas para diferentes enfermedades.
2.7 Funciones de la minería de datos Los métodos de minería de datos pueden clasificarse por la función que realizan o considerando la clase de aplicación en que son utilizados. Algunas de las técnicas principales empleadas en la minería de datos se describen en esta sección. 2.7.1 Clasificación
Las herramientas de minería de datos tienen que inferir un modelo a partir de la base de datos y, en caso del aprendizaje supervisado, se requiere que el usuario defina una o más clases. La base de datos contiene uno o más atributos que denotan la clase de una tupla y se les conoce como atributos predichos (predicted attributes) mientras que los restantes son llamados atributos predecibles (predicting attributes). A la combinación de valores para los atributos predichos se le denomina clase. Cuando se aprenden las reglas de clasificación, el sistema tiene que encontrar las que predicen la clase a partir de los atributos predecibles, de manera que lo primero que debe hacer el usuario es definir las condiciones para cada clase y, entonces, el sistema minero construye descripciones para las clases. Básicamente, el sistema debe dar un caso o tupla con ciertos valores de atributos conocidos con la finalidad de predecir la clase a la que pertenece. Una vez que las clases son definidas, el sistema debe inferir reglas que gobiernen la clasificación, por lo tanto, el sistema debe ser capaz de encontrar la descripción de cada clase. Las descripciones deben referirse únicamente a los atributos predecibles del conjunto de entrenamiento, de manera que los ejemplos positivos deben satisfacer la
44
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
descripción y no lo contrario. Se dice que una regla es correcta si su descripción abarca todos los ejemplos positivos y ninguno de los ejemplos negativos de la clase. Una regla generalmente se presenta de la siguiente forma: si el lado de la mano izquierda (LHS – Left Hand Side) entonces el lado de la mano derecha (RHS – Right Hand Side), de manera que en todas las instancias donde LHS es verdadero, también RHS sea
verdadero, por lo que son muy probables. Las categorías de las reglas son: •
•
no permiten excepciones, de manera que cada objeto de LHS debe ser un elemento de RHS. permiten algunas excepciones, aunque tienen un límite definido.
•
probabilidad P(RHS). •
relacionan la probabilidad condicional P (RHS|LHS) con la
LHS es una condición suficiente para clasificar objetos que pertenecen al concepto referido en el RHS. 2.7.2 Asociaciones
Dada una colección de elementos y un conjunto de registros, donde cada uno contiene un número de elementos de una colección dada, una función de asociación es una operación contra este conjunto de registros que regresa afinidades o patrones que existen entre la colección de elementos. Estos patrones pueden expresarse por reglas tales como “72% de todos los registros que contienen elementos A, B y C también contienen los elementos D y E”. El porcentaje específico de ocurrencias (en este caso 72), es llamado factor de confianza de la regla. Además, en esta regla, se dice que A, B y C están en el lado opuesto de la regla a D y E. Las asociaciones pueden involucrar cualquier número de elementos en diferentes lados de la regla. Una aplicación típica, identificada por IBM, que puede construirse a través de una función de asociación es el Análisis de la Canasta Básica de Mercado. Aquí es donde un minorista corre un operador de asociación sobre el log de transacciones del punto de venta, que contiene entre otros datos, identificadores de transacciones y de productos. El conjunto de identificadores de productos listados bajo el mismo identificador de la transacción constituye un registro. La salida de la función de asociación es, en este caso, una lista de afinidades de productos. Así, invocando una función de asociación, la aplicación de análisis de la canasta básica puede determinar afinidades tales como “20% de las veces que una marca de tostadoras es vendida, los clientes también compran guantes de cocina y aditamentos para cubrir el aparato”. Otro ejemplo del uso de asociaciones es el análisis de las formas de reclamo ingresadas por pacientes a una compañía de seguros médicos. Cada forma de reclamo contiene un conjunto de procedimientos médicos que fueron realizados sobre un paciente determinado durante una visita. Al definirse el conjunto de elementos que están en la colección de todos los procedimientos médicos que pueden ser realizados en un paciente y los registros correspondientes a cada forma de reclamo, la aplicación puede encontrar,
45
Mary Karina Ruiz Torres
mediante la función de asociación, relaciones entre los procedimientos médicos que a menudo se realizan juntos. 2.7.3 Patrones secuenciales/temporales
Las funciones de patrones secuenciales/temporales analizan una colección de registros sobre un periodo determinado, por ejemplo, para identificar tendencias. Si la identidad de un cliente que hizo una compra es conocida, puede hacerse un análisis de la colección de registros relacionados con la misma estructura. Los registros son relacionados por la identificación de un cliente que hizo compras repetidas, tal situación es típica de una aplicación de correo donde, por ejemplo, un catálogo del comercio tiene la información para cada cliente del conjunto de productos que el cliente compra en cada orden. Una función de patrones secuencial analizará tales conexiones de registros relacionados y detectará los patrones que ocurren con mayor frecuencia en el transcurso del tiempo. Un operador de patrones secuenciales puede además usarse para descubrir, por ejemplo, el conjunto de compras que precede con frecuencia a la compra de un horno de microondas. Las funciones de minería de patrones secuenciales son poderosas y pueden emplearse para detectar el conjunto de clientes asociados con algunos patrones de clientes frecuentes. Usar estas funciones, por ejemplo, sobre un conjunto de reclamos de seguro puede llevar a la identificación de secuencias de procedimientos médicos que ocurren con frecuencia y se aplican a pacientes y, en este sentido, puede ayudar a la identificación de buenas prácticas médicas así como a detectar fraudes. 2.7.4 Agrupación/segmentación
La agrupación y segmentación son los procesos de creación de particiones, de manera que todos los miembros de cada conjunto de la partición son similares de acuerdo con algunas métricas. Un grupo es un conjunto de objetos agrupados debido a su similitud o proximidad. A menudo, los objetos pueden descomponerse en conjuntos de grupos exhaustivos y/o mutuamente exclusivos. Agrupar de acuerdo con la similitud es una técnica poderosa y la llave para ello es traducir algunas medidas intuitivas similares en medidas cuantitativas. Cuando el aprendizaje no se supervisa, el sistema tiene que descubrir sus propias clases, esto es, agrupa los datos en la base de datos. El sistema tiene que descubrir subconjuntos de objetos relacionados en el conjunto de entrenamiento y entonces tiene que encontrar descripciones que definen cada uno de estos subconjuntos. Un enfoque para la formación de grupos consiste en definir reglas que dicten cuál elemento debe ser miembro del grupo basado en el nivel de similitudes existente.
2.8 Técnicas de minería de datos 2.8.1 Análisis cluster
En un ambiente de aprendizaje no supervisado, el sistema tiene que descubrir sus propias clases y una forma de hacerlo es agrupando los datos de la base de datos, tal y como se
46
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
muestra en el siguiente diagrama. El primer paso es descubrir subconjuntos de objetos relacionados y posteriormente encontrar descripciones D1, D2, D3, etcétera, que describen cada uno de estos subconjuntos.
Ilustración 17. Análisis cluster.
La agrupación y la segmentación, básicamente, particionan la base de datos de manera que cada partición o grupo es similar con base en ciertos criterios o métricas. Agrupar de acuerdo con similitudes es un concepto que aparece en varias disciplinas. Si una medida de similitud se encuentra disponible, existe un número de técnicas para formar los grupos. La membresía de los grupos puede basarse en el nivel de similitud entre los miembros y a partir de estas reglas la membresía puede definirse. Otro enfoque permite construir un conjunto de funciones que midan algunas propiedades de particiones, esto es, grupos o subconjuntos como funciones de algún parámetro de la partición. Este último enfoque logra lo que se conoce como particionamiento óptimo. Muchas aplicaciones de minería de datos emplean el agrupamiento de acuerdo con similitudes, por ejemplo, para segmentar una base de clientes. La agrupación donde se considera la optimización de funciones definidas, se utiliza en el análisis de datos, por ejemplo, cuando se ajustan las tarifas de seguros, los clientes pueden ser segmentados con base en un número de parámetros y la tarifa óptima alcanzada en la segmentación. Agrupación/segmentación en bases de datos son los procesos de separación de conjuntos de datos en componentes que reflejen un patrón de comportamiento consistente. Una vez que los patrones son establecidos pueden usarse para “dividir” datos en subconjuntos más entendibles y, además, proveen subgrupos de una población para análisis posteriores, los cuales son importantes cuando se trata con bases de datos de gran tamaño. Por ejemplo, una base de datos puede emplearse para la generación de perfiles de mercados objetivo, donde la respuesta a las campañas previas puede utilizarse para generar un perfil de la gente que respondió y este perfil permite predecir la respuesta y filtrar las listas de correo de las personas que tendrán una mejor respuesta. 2.8.2 Inducción
Una base de datos es un almacén de información, pero lo más importante es la información que puede ser inferida a partir de ésta. Hay dos técnicas principales de inferencia disponibles, la inducción y deducción. 47
Mary Karina Ruiz Torres
•
•
La deducción es una técnica para inferir información que es una consecuencia lógica de la información en la base de datos, por ejemplo, el operador de unión aplicado a dos tablas relacionales donde la primera trata de empleados y departamentos, mientras que la segunda de departamentos y gerentes infiere una relación entre empleados y gerentes. La inducción está descrita como la técnica de inferencia de información generalizada para la base de datos. Se refiere a información del más alto nivel o conocimiento, ya que es una sentencia general acerca de objetos en una base de datos, por lo que se buscan patrones dentro de la base de datos.
La inducción se ha utilizado en la minería de datos en las siguientes formas:
Los árboles de decisión representan el conocimiento de forma simple y pueden clasificar los ejemplos en un número de clases finito, los nodos son etiquetados con nombres de atributos, las ramas son etiquetadas con los valores posibles para ese atributo y las hojas son etiquetadas con diferentes clases. Los objetos son clasificados siguiendo una ruta por el árbol mediante las ramas correspondientes. El siguiente es un ejemplo de objetos que describen el clima en un tiempo determinado. Los objetos contienen información como perspectiva, humedad, etcétera. Algunos objetos son ejemplos positivos denotados por P y otros son negativos denotados por N. La clasificación es, en este caso, la construcción de una estructura de árbol, ilustrada en el siguiente diagrama que puede usarse para clasificar todos los objetos de forma correcta.
Ilustración 18. Árboles de decisión.
Un sistema de minería de datos tiene que inferir un modelo a partir de una base de datos, esto es, puede especificar clases tales que la base de datos contenga uno o más atributos que denotan la clase de una tupla, esto es, los atributos predichos, mientras los restantes son los predecibles. Las clases pueden, entonces, definirse por la condición en los atributos, y cuando esto ocurre el sistema debe ser capaz de inferir las reglas que gobiernan la clasificación, en otras palabras, el sistema debe encontrar la descripción de cada clase.
48
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Las reglas de producción han sido ampliamente usadas para representar el conocimiento en sistemas expertos y tienen la ventaja de ser fácilmente interpretadas por expertos humanos debido a su modularidad, esto es, una regla simple puede entenderse por sí misma y no necesita referencia a otras reglas. 2.8.3 Redes neuronales
Las redes neuronales representan un enfoque computacional que involucra el desarrollo de estructuras matemáticas con la habilidad de aprender. Los métodos son el resultado de investigaciones académicas que se usan para modelar el aprendizaje del sistema nervioso. Las redes neuronales tienen la habilidad de derivar significados a partir de datos complicados e imprecisos, por lo que pueden emplearse para extraer patrones y detectar tendencias demasiado complejas para ser entendidas por humanos u otras técnicas computacionales. Una red neuronal entrenada puede tomarse como un “experto” en la categoría de información que se le ha definido para analizar. Este experto puede utilizarse para proveer proyecciones dando nuevas situaciones de interés y preguntas “qué pasa si” que responder. Las redes neuronales tienen un campo amplio de aplicación en problemas de negocios reales y han sido aplicadas con éxito en varias industrias. Desde que las redes neuronales son mejores para identificar patrones o tendencias en datos, son adecuadas para necesidades de predicción o pronóstico que incluyen: •
•
•
•
•
•
Pronóstico de ventas. Control de procesos industriales. Investigación de clientes. Validación de datos. Administración del riesgo. Y mercadotecnia, entre otras. Ilustración 19. Estructura de una red neuronal.
Las redes neuronales usan un conjunto de elementos de procesamiento (o nodos) análogos a las neuronas en el cerebro. Estos elementos se encuentran interconectados en una red que puede identificar patrones en datos, esto es, la red aprende de la experiencia tal y como lo hace la gente. Esto distingue a las redes neuronales de los programas de cómputo tradicional que, simplemente, siguen instrucciones en una secuencia fija. El nivel inferior representa la capa de entrada, en este caso con cinco entradas etiquetadas de la X1 a X5. Enmedio está algo llamado capa oculta, con un número variable de nodos. Ésta es la capa oculta que realiza mucho del trabajo de la red. La capa de salida tiene, en este caso, dos nodos: Z1 y Z2 que representan los valores de salida que se intentan determinar a partir de las entradas. Por ejemplo, la predicción en ventas (la salida) a partir de ventas pasadas, precio y temporada (entrada).
49
Mary Karina Ruiz Torres
Cada nodo en la capa oculta está completamente conectado con las entradas, lo que significa que lo aprendido en el nodo oculto se basa en todas las entradas juntas. Los estadísticos sostienen que la red puede recoger las interdependencias en el modelo. El siguiente diagrama muestra con mayor detalle lo que existe dentro de un nodo oculto.
Ilustración 20. Interior de un nodo.
De forma sencilla, se realiza una suma ponderada: X1 veces W1 más X2 veces W2 y así de forma sucesiva, hasta X5 y W5. Esta suma se lleva a cabo por cada nodo oculto, además de que cada nodo de entrada y sus interacciones son representados en la red. Saber de dónde obtiene la red los pesos que se utilizan en la ponderación es importante, aunque es suficiente decir que la red aprende a reducir los errores en la predicción de eventos ya conocidos (en la historia). El problema de las redes neuronales se resume en lo siguiente: han sido utilizadas con éxito para la clasificación, pero el resultado es visto como una caja negra y la falta de explicaciones inhibe la confianza, aceptación y resultados de la aplicación. Otro problema es el tiempo de aprendizaje que se vuelve más largo conforme el volumen de datos aumenta. Otro ejemplo de red neuronal se resume en el siguiente diagrama, donde se muestra una red entrenada para identificar el riesgo de cáncer a partir de ciertos factores.
Ilustración 21. Ejemplo de red neuronal.
50
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
2.8.4 Procesamiento analítico en línea
Una actividad importante en el procesamiento de información es cómo procesar grandes bases de datos, que contienen datos cada vez más complejos, sin sacrificar tiempos de respuesta. La arquitectura cliente/servidor ofrece a las organizaciones la oportunidad de desarrollar servicios especializados, que son optimizados para el manejo de problemas de información específicos. Hasta ahora, las organizaciones han intentado utilizar RDBMSs para el conjunto completo de aplicaciones de bases de datos. Sin embargo, en apariencia, existen otras categorías de aplicaciones de bases de datos, que no son atendidas de manera conveniente por los manejadores de bases de datos relacionales. Una categoría de aplicaciones, comentada en el apartado anterior, es la llamada OLAP (On-Line Analytical Processing) que se define como de síntesis dinámica, análisis y consolidación de grandes volúmenes de datos multidimensionales.
2.9 Herramientas para minería de datos Estas herramientas fueron especialmente diseñadas para identificar las relaciones significativas existentes entre las variables. Las herramientas son útiles cuando existe un grupo de posibles relaciones, por ejemplo, una compañía puede tener 200 variables acerca de cada cliente y esta herramienta ayudará a identificar las relaciones significativas. Aira ALICE d’Isoft AnswerTree AT Sigma Data Chopper Athena Knowledge Server Atlas Bayesia Lab BusinessMiner Capri Castenada DMS CCM Data Correlation Model C5.0 Clementine Clustan D-Miner Data Mining Components DataBase Mining Marksman DataDetective DataEngine
GoDigital Alice SPSS Advanced Technologies Triada Sofresud Bayesia Business Objects, Inc. Mine IT Software Ltd Girgese Applied Technical Systems RuleQuest Research SPSS Clustan Ltd. Dialogis Numerical Algorithms Group HNC Software Inc. Sentient Machine Research MIT GmbH
www.godigital.com.br www.alice-soft.com www.spss.com www.atsigma.com www.triada.com www.sofresud.com www.bayesia.com www.businessobjects.com www.mineit.com www.girgese.com www.apptechsys.com www.rulequest.com www.spss.com www.clustan.com www.dialogis.com www.nag.com www.hncs.com www.smr.nl www.mitgmbh.de
51
Mary Karina Ruiz Torres
DataLogic/R
REDUCT & Lobbe Technologies Inc.
DataMite DataX DBMiner Decision Force Decision List Learner Decision Series Enterprise Miner Galvano Genio Miner GhostMiner Heatseeker iData Analyzer Insightful Miner Intellix Analyzer Intelligent Miner iUnderstand Kensington Knowledge Access Suite Knowledge Miner Knowledge STUDIO kTree Knowledge Suite KXEN Components MineLogic ModelMAX Plus ModelQuest Enterprise NGram Transform-DB Nuggets ODBCMINE Omega Oracle Data Mining Suite ORESME Pattern PolyAnalyst prudsys Discoverer Rough Set Data Mining System PV/FutureView Scenario
Logic Programming Associates Zaptron DBMiner Technology Pro-Action Schenley Park Research Accrue Software SAS PMSI Hummingbird Communications FQS Poland WhiteCross Systems Information Acumen Insightful Intellix IBM BioComp Systems InforSense Information Discovery Script Software ANGOSS Software International Kbase KXEN Crusader Systems Advanced Software Application AbTech Corporation Triada Data Mining Technologies, Inc. Intelligent Systems Research KiQ Oracle The Galileo Company Magnify, Inc. Megaputer Intelligence Ltd. Prudential Systems Software GmbH Sand Technology Continuum Software, Inc. Cognos
52
ourworld.compuserve.com/ho mepages/reduct/ www.lpa.co.uk www.zaptron.com www.dbminer.com www.proaction.gr www.schenley.com www.accrue.com www.sas.com www.pmsi.fr www.hummingbird.com www.fqspl.com.pl www.whitecross.com www.infoacumen.com www.insightful.com www.intellix.com www1.ibmlink.ibm.com www.biocompsystems.com www.inforsense.com www.datamining.com www.scriptsoftware.com/km www.angoss.com www.angoss.com www.kxen.com www.crusader.co.za www.asacorp.com www.abtech.com www.triada.com www.data-mine.com www.intsysr.com www.kiq.com www.oracle.com www.terraresearch.com www.magnify.com www.megaputer.ru www.prudsys.com www.sandtechnology.com www.continuumsi.com www.cognos.com
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Shih SmartMiner SphinxVision SuperQuery Syllogic Data Mining Tool TeraMiner Stats ThinkBase
Shih BVBA GRIMMER Logiciels ASOC AG Azmy Thinkware Inc. Syllogic NCR Science in Finance
To-The-Point
Bennely Software
VisiRex watson WizWhy Xaffinity Xeno XML Miner Xpert Rule Analyser, Profiler Zoom 'n View
CorMac Technologies Xanalys WizSoft, Inc. Exclusive Ore Infocentricity Scientio Attar Software SkyGate Development ApS
www.shih.be www.grimmersoft.com www.asoc.de www.azmy.com www.syllogic.nl www.ncr.com www.thinkbase.com www.topsoft.com/main/1025/ 1487292.asp www.cormactech.com www.xanalys.com www.wizsoft.com www.exclusiveore.com www.infocentricity.com www.metadatamining.com www.attar.com www.skygate.dk
53
Mary Karina Ruiz Torres
3.1 Concepto Es un sistema manejador de bases de datos (DBMS) que realiza validación y procesamiento de datos, que de forma tradicional se ejecuta por programas aplicativos. La mayoría de los DBMSs proveen algún tipo de validación de datos, por ejemplo: rechazando fechas inválidas o datos alfanuméricos que intentan ser ingresados en campos de tipo monetario pero, en su mayoría, el procesamiento se realiza por aplicaciones. Sin embargo, no existe un límite en el monto de procesamiento que puede efectuarse por una base de datos inteligente, mientras el proceso sea una función estandarizada para los datos. Una definición más simple: base de datos que administra información de forma natural, haciendo que la información sea fácil de almacenar, acceder y utilizar . Se utiliza el término información en lugar de dato, debido a que este tipo de base de datos no solo trata con aplicaciones como la administración de inventarios, sino también con bases de conocimiento, sistemas de descubrimiento automático, datos textuales, imágenes, entre otros. Las bases de datos inteligentes tienen componentes de inteligencia artificial que proveen ayuda con la operación intelectual de la búsqueda. Tienen formas de representar el conocimiento y están basadas en modelos de redes neuronales1.
1
Un modelo que asocia nueva información con una similar ya existente.
54
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Algunos autores coinciden en que el futuro de las bases de datos son las bases de datos inteligentes, donde las que están orientadas a objetos se incluyen como un subconjunto. El énfasis en las bases de datos inteligentes se da más en la información que en los datos, debido a que incluyen no solo aplicaciones tradicionales como la administración de inventarios sino que también consideran bases de conocimiento, sistemas de descubrimiento, etcétera. Las bases de datos inteligentes proveen un enfoque común para el acceso y uso de la información en su análisis y toma de decisiones. Un sistema de base de datos inteligente tiene como elementos un motor de base de datos y su modelo. El motor de la base de datos con su modelo de datos deductivo, es el repositorio que integra aplicaciones y productos a través de herramientas e interfaz de usuario de alto nivel. Los constraints, triggers y procedimientos almacenados son ejemplo de algunas técnicas que se usan para implementar bases de datos inteligentes.
3.2 Componentes Existen tres componentes que hacen a una base de datos inteligente: 1. Inteligencia en herramientas de alto nivel. 2. Inteligencia en la interfaz de usuario. 3. Inteligencia en el motor de la base de datos. 3.2.1 Inteligencia en herramientas de alto nivel
Una de las características principales de las bases de datos inteligentes es que contienen una serie de tecnologías que, comúnmente, se consideran de forma aislada, esto es, de forma adicional a las tecnologías integradas dentro de la arquitectura básica de una base de datos inteligente, existen otras herramientas de alto nivel que complementan la funcionalidad de la base de datos. Estas herramientas pueden usarse por los usuarios de la base de datos y los desarrolladores; proveen un menú consistente de varias herramientas apoyado en el hecho de que cada aplicación tiene diferentes necesidades y es innecesario cargar a los usuarios y aplicaciones con herramientas que no requieren. Como herramientas de alto nivel se distinguen las siguientes: •
Esta categoría incluye herramientas para el análisis de datos, análisis estadístico y máquina de aprendizaje. Permiten al usuario descubrir de forma automática (y en ocasiones de manera totalmente inesperada) relaciones que existen en una gran base de datos (VLDB). Por ejemplo, en una base de datos que almacena reportes de problemas de autos, un fabricante puede descubrir que para un problema presentado, la razón se encuentra en el cableado. Ahora bien, mediante una herramienta de aprendizaje llamada IXL, el sistema puede descubrir que un gran
55
Mary Karina Ruiz Torres
número de problemas se deben a un error específico que se ha presentado en repetidas ocasiones por un operador en el proceso. De esta manera, estas herramientas descubren relaciones que los usuarios no habrían esperado. •
•
•
•
•
•
Son necesarias por los efectos colaterales que conllevan la cantidad y tamaño de las bases de datos, esto hace referencia al hecho de que en las organizaciones cada vez existe una mayor dependencia hacia los datos almacenados en la bases de datos y, por otro lado, mientras mayor información se almacene y el número de bases de datos se incremente, el riesgo en la aparición de errores también aumenta. Por lo anterior, la función de las herramientas de integridad es detectar de manera automática los errores en las bases de datos. Ofrecen a los desarrolladores y usuarios la posibilidad de construir sistemas de información hipermedia que combinan textos, datos, imágenes, sonidos, entre otros. Esta categoría refleja el hecho de que la información puede expresarse de diferentes maneras y que los métodos son necesarios para organizar y acceder estas diferentes formas de información. Proveen gráficos, formas y otros tipos de presentación de datos. Aunque esta categoría de herramientas está separada lógicamente de la anterior, en la práctica, las herramientas de desplegado a menudo serán una extensión de las hipermedia. Proveen un tipo especial de administración, recuperación y uso de información, donde ésta última se organiza de manera que apoye las actividades de toma de decisiones. Permiten la transformación de datos entre diferentes formatos. De esta manera, favorece que los desarrolladores y administradores de sistemas puedan diseñar y mantener bases de datos inteligentes. En el pasado han estado separados el diseño de bases de datos, diseño de sistemas de información y diseño de sistemas expertos, sin embargo, la integración de estos tres tipos de diseño es esencial para una base de datos inteligente. Así, estas herramientas le permiten a los desarrolladores diseñar y mantener bases de datos inteligentes de una mejor manera. 3.2.2 Inteligencia en la interfaz de usuario
La interfaz de usuario es la parte del sistema con la que el usuario interactúa y normalmente se distinguen dos niveles: •
El nivel físico.
•
El nivel cognitivo.
El nivel físico de la interfaz está formado por dispositivos de entrada y salida (por ejemplo: teclado, mouse, etcétera), mientras que el nivel cognitivo lo compone el modelo
56
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
utilizado para presentar la información y, por lo tanto, es lo que guía la interpretación del usuario y las consultas que éste formula. La interfaz es satisfactoria cuando el usuario se sienta frente a la computadora para realizar alguna tarea, y en cada paso del programa es obvio lo que se tiene que hacer después y, cuando esto sucede, la concentración del usuario se enfoca completamente a la tarea. Idealmente, una interfaz es transparente, para el usuario las funciones fluyen con naturalidad y facilidad, motivo por el cual los diseñadores de interfaz se refieren con el término cognitivamente compatible. De esta manera, el término cognitivamente compatible puede definirse como el grado en el que el modelo de la tarea presentada por las características de entrada y salida de la interfaz cubre las expectativas del usuario. La tecnología de diseño de interfaz busca desarrollar interfaces más naturales y compatibles a través de imágenes y sonido, voz, respuestas asociativas y deductivas, entre otros. Ahora bien, la palabra natural en este contexto significa que la base de datos inteligente se comporta, tanto como sea posible, de la misma manera que nosotros. En este sentido, algunas estrategias para incrementar la naturalidad son: •
•
•
•
•
•
Uso de sonidos y otros medios (así como texto). Normalmente, a la gente le es más comprensible ver diagramas acompañando al texto. Permitirle al usuario intercambiar vistas de los temas entre generales y particulares (zoom-in y zoom-out). Permitirle al usuario llevar a cabo búsquedas asociativas cuando esté estudiando un tema y desee consultar temas relacionados. De ser posible, diseñar la interfaz de manera que contenga objetos y conceptos familiares para el usuario. No solo es presentar el material, el usuario busca información (respuestas) sumarizadas de acuerdo con sus necesidades e intereses. Permitirle al usuario operar sobre objetos presentados directamente en la interfaz, más que hacerlo indirectamente a través de algún comando.
Además de la naturalidad, una interfaz también puede ser inteligente, esto es, utiliza algoritmos deductivos para interpretar lo que realmente busca el usuario o deducir la información que no puede obtenerse de forma directa. 3.2.3 Inteligencia en el motor de la base de datos
La interfaz de usuario está sumamente ligada con un conjunto de capacidades de la base de datos. Estas capacidades son los mecanismos que permiten a un sistema manejador de bases de datos (DBMS) funcionar como lo hacen. Ejemplos de funciones especiales de bases de datos son el procesamiento de consultas y la habilidad de realizar razonamiento deductivo.
57
Mary Karina Ruiz Torres
La inteligencia de la interfaz de usuario está determinada, en gran parte, por la inteligencia de la aplicación que está atrás. Existe un número de características de un sistema de bases de datos que mejora toda la inteligencia del sistema: •
Modelo de datos orientado a objetos, basado en el conocimiento.
•
Base de datos integrada y un motor de inferencia.
•
Búsqueda sensitiva al contexto o sensitiva a la estructura.
•
Soporte de múltiples medios de almacenamiento.
•
Administración y recuperación de versiones inteligentes.
•
Soporta la concurrencia.
•
Optimización de consultas.
Un modelo de datos orientado a objetos y basado en el conocimiento permite la representación de los datos de una forma que refleja la percepción del usuario del mundo real. Una vez formulada, la información puede servir como base de conocimiento para un sistema experto. Las bases de datos integradas y motores de inferencia surgen a partir del uso de modelos de datos basados en el conocimiento, permiten la recuperación deductiva en un ambiente donde la búsqueda de información y la inferencia se encuentran integradas. La búsqueda sensitiva a la estructura comprende la recuperación del conocimiento basado en la forma. La búsqueda sensitiva al contexto se refiere a la búsqueda de información relevante basada en el contenido. Los medios de almacenamiento múltiple permiten que la información de varios tipos como son mapas, pinturas, gráficas, sonidos, etcétera, sean almacenados y recuperados con eficiencia en la base de datos. La administración de versiones inteligente asegura que las versiones actuales y anteriores de las bases de datos puedan recuperarse de forma eficiente. Además, el motor de una base de datos inteligente realiza una extensiva optimización de consultas, con la finalidad de proveer las respuestas en tiempo real para consultas complejas que involucran bases de conocimiento orientadas a objetos.
3.3 Características Una base de datos inteligente puede tener algunas de las siguientes características: •
58
Una base de datos inteligente se adapta a la retroalimentación del usuario a través de ejemplos de lo que el usuario busca y no. El sistema permite al usuario copiar y pegar texto desde otro documento como un ejemplo de lo que requiere, el cual se almacena como perfil de búsqueda.
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
•
•
•
•
La interfaz está compuesta de ventanas organizadas de forma jerárquica, de manera que el usuario puede ver las búsquedas realizadas previamente, además de las palabras, documentos y frases utilizados como términos de búsqueda. . La ayuda se ofrece en distintas formas y niveles. Si el sistema no entiende una consulta, cuestiona al usuario hasta que ambos están satisfechos con lo que se entiende. Un sistema experto está disponible para conducir al usuario a través de procedimientos y solución de preguntas. El sistema utiliza un tutor inteligente para monitorear la interacción con el usuario con objeto de detectar cuándo necesita ayuda. Si el usuario repite comandos o términos de búsqueda, el tutor mostrará sugerencias. El usuario puede reformular o expandir una consulta a través de palabras relevantes en búsquedas previas. Un catálogo de términos en línea se encuentra disponible para el sistema y el usuario, aunque la base de datos inteligente permite al usuario seleccionar términos alternativos de búsqueda, en lugar de que el sistema utilice algoritmos de selección de alternativas. Después de una búsqueda, el sistema no sólo despliega los hits sino también el porcentaje de relevancia de cada uno de ellos, de forma que el usuario sabrá cuáles documentos se encuentran más cerca de su perfil de búsqueda. Los párrafos más relevantes se indican en los documentos con las palabras de la búsqueda resaltadas. Si el usuario lo desea, el sistema puede justificar sus resultados, esto es, puede mostrar cómo llegó o qué condiciones utilizó para acceder a esos documentos como los más cercanos al perfil de búsqueda.
3.4 Tipos de bases de datos Existen varios tipos de bases de datos entre las que se encuentran: full text, indexed keywords e hypertext links. 3.4.1 Bases de datos full text
Estas bases de datos emplean búsquedas de cadenas de caracteres2 que coincidan con los términos de búsqueda ingresados por el usuario. Si la cadena no coincide exactamente con alguna cadena en la base de datos, no regresará información. El usuario tendrá que intentar variaciones de la cadena como puede ser plural, singular, tiempo pasado, tiempo presente, etcétera, para ver si esa variación existe en la base de datos.
2
Cadena de caracteres: combinación de letras y números.
59
Mary Karina Ruiz Torres
3.4.2 Indexed keywords
Algunas bases de datos utilizan palabras clave indexadas para catalogar sus registros. Cuando un elemento se ingresa a la base de datos, éste se identifica por claves que el autor o administrador de la base de datos diseñó. Si el usuario conoce las abreviaciones o claves apropiadas, entonces es sumamente fácil la búsqueda en esta base de datos, pero si las desconoce tiene que refinar su búsqueda. 3.4.3 Hypertext links
Este tipo de base de datos provee ligas en la información, semejantes a un índice de referencias cruzadas disponibles dentro del texto. Este tipo de base de datos es mejor que las dos anteriores, sin embargo, el usuario tiene que seguir las ligas que el autor de la base de datos ha creado, las cuales pueden o no coincidir con las ligas que el usuario tiene en mente.
3.5 Funcionamiento El término “ansiedad de información” se refiere al sentimiento producido por la distancia existente entre lo que entendemos y lo que creemos que debemos entender. Existen distintas situaciones que tienden a volvernos ansiosos: no entender la información, sentirse saturado por la cantidad de información que debe entenderse, desconocer si cierta información existe, ignorar en dónde encontrar la información o bien, saber en dónde encontrar los datos pero no tener la clave para acceder a ellos. Existen dos formas de reducir esta ansiedad, la primera es encontrar la información y la segunda, entender los datos que se han encontrado. A este respecto, las bases de datos inteligentes ayudan en el primer punto y quizá, en el futuro, sean capaces de contribuir a su entendimiento. Para ejemplificar lo mencionado hasta ahora, comparemos los siguientes casos: •
Un estudiante necesita encontrar artículos y libros acerca de “ansiedad de información”, de manera que acude a la biblioteca y utiliza un catálogo en línea para llevar a cabo su búsqueda. Inicia con el ingreso de la frase “ansiedad de información” y la búsqueda no regresa resultado alguno. El siguiente paso es ingresar únicamente la palabra “información” como tema y observa una lista de categorías que contienen dicha palabra. El estudiante elige una categoría que dice “administración de información” como la más adecuada, esta categoría arroja una amplia lista de libros y artículos, algunos de ellos podrían contener algo acerca de “ansiedad de información”, pero tendrá que revisar cada sinopsis para encontrarlo, sin embargo, puede ser que no todos los elementos tengan una sinopsis, por lo que tendrá que deducirlo únicamente por el título.
60
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
El estudiante concluye que necesita limitar su búsqueda. Decide realizar su búsqueda por palabras clave en vez de por por tema, de manera que ingresa las palabras “ansiedad de información”, en esta ocasión la búsqueda arroja 5,153 elementos que contienen la palabra “información” y 3,996 elementos que contienen la palabra “ansiedad”. Después de revisar algunos de estos elementos, el estudiante solicita ayuda al sistema, que le muestra una serie de comandos que puede utilizar y el estudiante decide incluir un información”; esta búsqueda produce condicional, ingresando: “ansiedad resultados que contienen ambas palabras pero no necesariamente contiene ambas como un concepto único. De manera que para su sexta búsqueda, ingresa “ansiedad información”; haciendo que el sistema despliegue únicamente los términos que contengan la palabra “información” adyacente a la palabra “ansiedad”. Esta búsqueda finalmente es exitosa pero solamente se muestran dos elementos, de manera que puede ser que tenga que realizarse una nueva búsqueda con base en sinónimos si es que puede existir alguno. Para este momento, la búsqueda ya ha tomado al menos 45 minutos y lo que tiene son dos elementos posibles, por lo que la decisión posiblemente sea anotar la ubicación de los elementos encontrados e intentarlo posteriormente. •
Un segundo estudiante cuya biblioteca tiene un catálogo en línea diferente, requiere encontrar información acerca del mismo término que nuestro estudiante del caso #1: “ansiedad de información”. Esta vez, el sistema le permite realizar la búsqueda no solo en el catálogo local sino en las bases de datos de otras universidades. Mediante la búsqueda por palabras relevantes ingresa “ansiedad de información”. El sistema muestra algunos elementos que contienen ambas palabras “información” y “ansiedad” e incluso algunos otros elementos que contienen ambas palabras juntas. Para limitar la búsqueda, el estudiante indica que ambas palabras deben estar juntas, de esta forma, el sistema no solo despliega los elementos filtrados sino que también muestra una lista de sinónimos o temas relacionados que pudieran usarse en una búsqueda futura. En este punto, podría ser que algunos de los sinónimos no son útiles, por lo que el estudiante solicita ayuda al sistema. El sistema experto, componente de la base de datos, simula entonces las decisiones de un buscador de información y sugiere que se refine la búsqueda cuestionando a la base de datos para que justifique sus elecciones. Ahora bien, debido a que la búsqueda ha arrojado unos cuantos elementos relacionados con el tema, el estudiante desea que se muestren las reglas, palabras y pesos utilizados para encontrar esos elementos. El sistema indica que utilizó las palabras empleadas en la búsqueda sin artículos o conjunciones y que las colocó en orden de ocurrencia; entonces comparó las palabras con todos los documentos en la base de datos y desplegó aquellos que tenían un alto número de coincidencias. En este punto, el estudiante decide modificar las reglas utilizadas en la búsqueda para que elimine aquellos temas que no están directamente relacionados con la búsqueda, además, incrementa el peso a ciertas frases y solicita al sistema que busque de nuevo. Esta vez, la búsqueda despliega elementos que encajan en mayor porcentaje con lo deseado. De esta manera, el estudiante está seguro de que los elementos encontrados hacen referencia al tema buscado y además tiene la opción de
61
Mary Karina Ruiz Torres
guardar la historia de su búsqueda, de forma tal que no tendrá que empezar de cero cuando realice una búsqueda posterior. En cuanto a tiempo, esta búsqueda ha sido más rápida que la mencionada en el caso #1. La diferencia entre ambos casos es que en el primero, se empleó una base de datos full texto y en la segunda, una base de datos inteligente.
3.6 Representación del conocimiento Conocimiento es información seleccionada, interpretada y transformada en un entorno de experiencia. En el entorno computacional para almacenar, manipular y recuperar información, se debe guardar de forma precisa con reglas, marcos de referencia, redes semánticas y árboles de decisión heurísticos. 3.6.1 Reglas
Las reglas son utilizadas para representar estrategias, recomendaciones, directivas y otros modelos para la solución de problemas. Consta de dos partes: una sección IF que especifica una condición, y una sección then que define la acción a tomar si la condición ocurre. Ambas partes de la regla pueden contener objetos, valores y atributos. Por ejemplo, una regla para girar a la derecha en la luz roja podría ser: si no hay autos acercándose por la derecha del conductor, entonces gira a la derecha. Las reglas pueden ser medidas/evaluadas con un valor de confianza, donde se indica qué tan cerca está la regla de ser verdadera. 3.6.2 Marcos de referencia
Los marcos de referencia son usados para representar el conocimiento relacionado ya sea con un tema específico, conceptos o eventos. Un marco es una estructura de datos que contiene relaciones con toda la información asociada a un objeto o evento. Las ligas o relaciones pueden incluir valores por default, apuntadores a otras estructuras, conjuntos de reglas o conjuntos de procedimientos aplicables a ciertos valores. También puede contener categorías tales como nombre, definición, ejemplos, especialización y analogías. 3.6.3 Redes semánticas
Las redes semánticas fueron creadas como un modelo de memoria asociativa humana. Estas redes muestran relaciones entre objetos, que pueden ser cosas, conceptos o eventos. Cada objeto es representado en la red por un nodo y la relación entre ellos se denota por una línea que los conecta. Por ejemplo, un nodo en la red es Luna y otro nodo es Marte; ambos nodos están conectados por una flecha etiquetada como “tiene”. Otras flechas están etiquetadas como “contiene”, “es una”, “está contenida en” . La relación entre los dos nodos es “Marte tiene una Luna”. Las redes semánticas, por lo general, son jerárquicas, ya que sin algún tipo de organización, la red se vuelve enredada y difícil de descifrar. Por esta razón, una flecha se utiliza para indicar la jerarquía de la relación, esto es, indica quién es el padre y quién el hijo. Decir “La Luna tiene Marte” no haría ningún sentido.
62
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Las redes semánticas se convierten fácilmente en árboles de decisión con los nodos representando objetivos, y las ligas representando decisiones que resultan de relacionar un objetivo que se relaciona con otro. 3.6.4 Árboles de decisión heurística
Los árboles de decisión son utilizados en inteligencia artificial para mostrar las posibles consecuencias de una situación inicial. Si un problema es demasiado complejo, un árbol de decisión podría no ser la representación adecuada debido a que el número de posibles ramas podría ser muy grande.
3.7 Inferencia Una de las habilidades de la inteligencia artificial es la inferencia, donde la computadora dibuja conclusiones a partir de los hechos y reglas representados en formas que la computadora puede utilizar. Durante el proceso de inferencia, la computadora puede derivar nuevos hechos o reglas, es decir, la inferencia es el proceso de derivar nuevos hechos y reglas a partir de información conocida. Los programas computacionales que realizan inferencia son llamados motores de inferencia. Los motores utilizan el conocimiento presentado y la información que se ingresa para dibujar conclusiones y hacer recomendaciones acerca de un problema presentado al sistema. El motor de inferencia debe decidir qué reglas (contenidas en la base de conocimiento) son importantes y cómo utilizarlas, además del orden en que deben aplicarse. Los motores de inferencia pueden usarse con alguno de los métodos de representación del conocimiento mencionados con anterioridad. Con los árboles de decisión, la inferencia procede a lo largo de varias rutas lineales establecidas por el desarrollador del sistema. La información de la base de datos debe coincidir con alguna de las ramas del árbol de decisión para que el sistema pueda procesarlo. En una base de conocimiento orientada a objetos (por ejemplo, una red semántica) los patrones preestablecidos de herencia 3 disparan ciertas acciones o eventos a ocurrir; por lo que una vez invocados, esos objetos pueden llamar funciones específicas o reglas para alcanzar un resultado o conclusión específica. El proceso de probar o disparar reglas en una secuencia óptima se apoya por dos técnicas de inferencia: forward chaining y backward chaining. 3.7.1 Forward chaining
Es un ejemplo de razonamiento deductivo, es decir, permite construir una conclusión a partir de datos. Cuando el motor de inferencia utiliza esta técnica, compara la 3
Un nodo en una red semántica ligado con otro nodo con una liga de tipo “es un(a)” hereda todas las propiedades de su precursor. “Marte es un planeta” significa que Marte hereda la propiedad de ser un planeta.
63
Mary Karina Ruiz Torres
información en la base de datos con una parte IF de la primera regla activa en la base de conocimiento. Si la información coincide con la regla, la parte THEN de la regla se dispara, esto es, se integra información a la base de datos acerca de ese problema particular y las flechas de búsqueda. Una vez que la regla se añade a la base de datos, ésta se inhabilita por esa sesión y dicho procedimiento continúa hasta que el motor de inferencia ha pasado por todas las posibles conclusiones. Un ejemplo de este tipo de encadenamiento es un juego de computadora llamado ANIMAL, donde la computadora realiza algunas preguntas al jugador que intenta descubrir en cuál animal está pensando. El motor de inferencia realiza preguntas como ¿el animal tiene aletas?, si el jugador responde “no”, entonces el motor busca la regla que aplica a “aletas”: “SI una criatura tiene aletas ENTONCES es un pez”, ahora, ya que la respuesta fue “no”, la parte THEN de la regla no se dispara y el motor de inferencia realiza otra pregunta ¿el animal tiene alas?, si a esta pregunta el jugador responde “sí”, el motor de inferencia encuentra la regla que aplica para “alas” (SI un animal tiene alas ENTONCES es un ave) y descubre que la parte THEN de la regla aplica, de manera que almacena la regla en la base de datos y busca preguntas pertenecientes a aves. Eventualmente, el sistema adivina el animal del que se trata o se rinde preguntando al jugador el nombre del animal, este dato se agrega entonces a la base de datos de manera que la base de conocimiento crece y la siguiente vez, el motor de inferencia tendrá la capacidad de adivinar ese animal en particular. 3.7.2 Backward chaining
Esta técnica se usa cuando el número de consultas a la base de datos se reduce y es poca la información, lo cual se debe a que la parte THEN de la regla (objetivo) es el punto de inicio y la sección IF (el dato) el punto final. Backward chaining es un ejemplo de razonamiento deductivo que inicia con una conclusión y trata de descubrir cuáles son sus componentes. Toma como ejemplo el juego “ANIMAL” descrito anteriormente, por lo que la técnica de backward chaining iniciaría con un animal conocido e intentaría descubrir las reglas para describirlo.
3.8 Problemas de las bases de datos inteligentes •
•
•
Encontrar el primer artículo o resultado puede consumir mucho tiempo. Problemas con el uso de palabras ambiguas y aquellas que tienen múltiples significados. Construir la base de conocimiento con la amplitud que abarque todos los contextos.
3.9 Ejemplo de bases de datos inteligentes 3.9.1 DowQuest
La base de datos descrita en el caso de estudio #2 es DowQuest. Es un ejemplo de una base de datos inteligente que utiliza palabras, frases y documentos del usuario como elementos de
64
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
comparación contra lo que existe en la base de datos. Primero, la computadora pregunta al usuario por palabras importantes o frases para crear un perfil de la información deseada. Después, intenta igualar el perfil con los existentes en los documentos de la base de datos. Cada palabra en cada documento de la base de datos es analizado. Después de eliminar palabras comunes (por ejemplo los artículos, preposiciones y conjunciones), los cientos de palabras que con mayor ocurrencia en el documento son utilizadas para armar un perfil, el cual es comparado con el perfil ingresado por el usuario. La comparación se lleva a cabo mediante ocurrencias de palabras, combinación de conteos de diferentes palabras (utilizando básicamente un “or” entre las palabras consultadas) y tamaño de los documentos. Posteriormente, DowQuest ordena los documentos por sus conteos y despliega los encabezados en este orden. Aquellos que contengan la mayoría de las palabras consultadas tendrán un significado mayor, además, los que tengan frases en donde aparecen con mayor cercanía las palabras consultadas, se asignan a un rango mayor que aquellos donde las palabras consultadas se encuentran dispersas. El usuario observa los documentos desplegados por la computadora y decide si alguno de ellos contiene la información que está siendo buscada. De ser así, el usuario indica el artículo más apropiado y la computadora lo utiliza como ejemplo para mejorar el perfil de la información que el usuario desea. Si ninguno de los artículos es adecuado, el usuario puede agregar o cambiar palabras del perfil para que la búsqueda se realice nuevamente. Algunas veces, al menos uno de los documentos desplegados es similar a lo que el usuario desea, de manera que puede usarse para retroalimentar al sistema mejorando el perfil mediante la delimitación más certera del perfil. Sin embargo, como ocurre con cualquier base de datos, encontrar ese primer ejemplo puede tomar un tiempo considerable. DowQuest es un modelo de red neuronal porque permite la alimentación a través de ejemplos y realiza clasificaciones asociativas 4 y adaptativas. 3.9.2 Topic
Es otro tipo de base de datos inteligente desarrollado por Verity Inc. Este programa difiere del DowQuest porque utiliza un enfoque más estructurado conocido como concept hierarchies , que se define como: construir un tema a partir de otros temas y patrones de palabras... definir un concepto o la gramática de un tema (por ejemplo “eventos terroristas”) mediante el descubrimiento de componentes (por ejemplo: quién, qué, quiénes, cuándo, dónde, cómo —“ataques”, “víctimas”, “armas ”—) y sus detalles en términos de palabras específicas, conectores boleanos, y pesos o factores relevantes. 5
Este enfoque permite al usuario limitar la búsqueda de forma manual enfocándose en atributos específicos.
4
Clasificación asociativa. Comparación de palabras en documentos ejemplo contra palabras en documentos
5
Concept hierarchy. Definir un concepto o tema por
similares.
sus componentes y detalles.
65
Mary Karina Ruiz Torres
Glosario Agent
An application that searches data and sends an alert when a certain situation occurs. (See ALERT)
Aggregate data
Individual data items, data groups, arrays, tables etc. that can be assembled to form a whole.
Alerts and alarms Messages sent automatically by a computer system when an AGENT identifies a certain situation. For example, if stock of an item in a warehouse drops to a certain level, key personnel can be immediately informed. Algorithm
A set of statements organized to solve a problem in a finite number of steps
Analytical processing
The usage of the computer to produce an analysis for management decision, usually involving trend analysis, drill down analysis, demographic analysis, profiling, etc.
Architecture phase
The establishment of the framework, scope and standards and procedures for a Data Warehouse at the enterprise level.
Atomic level data Data with the lowest level of granularity. Atomic level data sits in a Data Warehouse and is time variant (i.e., accurate as of some moment in time now passed). Attribute
66
A property or characteristic of an application entity. For example, the attributes of an EMPLOYEE entity in a business application may be: IDFirstname Lastname Job_Title Email_ID An attribute usually represents a column in a table in a relational database, or a field in a file.
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Audit trail
Recording of any changes made to specific data. Details can include date and time of change, how the change was detected, reason for the change and before-and-after data values.
Binary search
A dichotomizing search with steps in which the sets of remaining items are partioned into two equal parts.
Bit map
A specialized form of an index indicating the existence or non-existence of a condition for a group of blocks or records.
Bus
The hardware connection that allows data to flow from one component to another.
Business intelligence tools
Software that allows business users to see and use large amounts of complex data.
Canonical model A data model that represents the inherent structure of data without regard to either individual use or hardware or software implementation. Cell
A single point in a CUBE.
Conceptual schema
A consistent collection of data structures expressing the data needs of the organization. This schema is a comprehensive, base level, and logical description of the environment in which an organization exists, free of physical structure and application system considerations.
Condensation
The process of reducing the volume of data managed without reducing the logical consistency of the data.
Connector
A symbol used to indicate that one occurrence of data has a relationship with another occurrence of data. Connectors are used in conceptual data base design and can be implemented hierarchically, relationally, in an inverted fashion, or by a network.
Contention
The condition that occurs when two or more programs try to access the same data at the same time.
Cooperative processing
The ability to distribute resources (programs, files and data bases) across the network.
Corporate information warehouse (CIF)
The architectural framework that houses the ODS, Data Warehouse, data marts, i/t interface, and the operational environment. The cif is held together logically by metadata and physically by a network such as the Internet.
Cube – (also The fundamental structure for information in an OLAP system. A structure hypercube, multi- that stores multi-dimensional information, having one CELL for each possible dimensional cube) combination of dimensions. Data
Facts, concepts, or instructions that a computer records, stores and processes. Used in conjunction with INFORMATION SYSTEMS, “raw data” is organized in such a way that people can understand the results.
Data cleansing
Removing errors and inconsistencies from data being imported to a Data Warehouse.
67
Mary Karina Ruiz Torres
Data dictionary
A software tool for recording the definition of data, the relationship of one category of data to another, the attributes and keys of groups of data, and so forth.
Data driven development
The approach to development that centers around identifying the commonality of data through a data model and building programs that have a broader scope than the immediate application.
Data driven process
A process whose resource consumption depends on the data on which it operates.
Data mart
A Department-Specific Data Warehouse. A) Independent – fed from legacy systems within the department. B) Dependent – fed from the enterprise Data Warehouse (preferred).
Data mining
The process of finding hidden patterns and relationships in data. For instance, a consumer goods company may track 200 variables about each consumer. There are scores of possible relationships among the 200 variables. Data mining tools will identify the significant relationships.
Data scrubbing
Removing errors and inconsistencies from data being imported into a Data Warehouse.
Data transformation
The modification or alteration of data as it is being moved into the Data Warehouse.
Data type
A data type defines the type of data stored in a specific database column, such as date, numeric or character data. Significant differences in data types exist between different platforms’ databases.
Data warehouse
A Data Warehouse is a subject oriented, integrated, non volatile, time variant collection of data. The Data Warehouse contains atomic level data and summarized data specifically structured for querying and reporting.
Data warehousing
An enterprise-wide implementation that replicates data from the same publication table on different servers/platforms to a single subscription table. This implementation effectively consolidates data from multiple sources.
Database schema The logical and physical definition of a database structure. Date/Time stamp A stamp added by an application that identifies a task or activity by the date and time it was initiated and/or completed. This can appear as part of a transaction log, message queue content in job logs. Decentralized database
A centralized database that has been partitioned according to a business or end-user defined subject area. Typically ownership is also moved to the owners of the subject area.
Decentralized warehouse
A remote data source what users can query/access via a central gateway that provides a logical view of corporate data in terms that users can understand. The gateway parses and distributes queries in real time to remote data sources and returns result sets back to users.
Decision support systems (DSS)
Software that supports exception reporting, stop light reporting, standard repository, data analysis and rule-based analysis. A database created for end-user ad-hoc query processing.
Denormalization
The technique of placing normalized data in a physical location that optimizes the performance of the system.
68
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Derived Data
Data whose values are determined by equations or algorithms.
Drill down/up
The ability to move between levels of the hierarchy when viewing data with multiple levels. A) Drill down–changing a view to a greater level of detail B) Drill up – changing a view to a greater level of aggregation.
EDI (Electronic Is a standard format for exchanging business data. Data Interchange) Encryption
The transformation of data from a recognizable format to a form unrecognizable without the algorithm used for the transformation.
ETL (Extract, Transform and Load)
ETL refers to the process of getting data out of one data store (extract), modifying it (transfer), and inserting it into a different data store (load).
Executive/Enterpri Tools programmed to provide canned reports or briefing books to top-level se Information executives. They offer strong reporting and drill-down capabilities. Today Systems (EIS) these tools allow ad-hoc querying against a multi-dimensional database, and most offer analytical applications along functional lines such as sales or financial analysis. (Also known as Decision Support System.) Extendibility
The ability to easily add new functionality to existing services without major software rewrites or without redefining the basic architecture.
External schema
A logical description of a user's method of organizing and structuring data.
Fact table
The tables which are extracted from heterogeneous sources and used in the Data Warehouse
Flat file
A collection of records containing no data aggregates, nested repeated data items, or groups of data items.
Functional decomposition
The division of operations into hierarchical functions that form the basis for procedures.
Global business models
Provides access to information scattered throughout an enterprise under the control of different divisions or departments with different databases and data models. This type of Data Warehouse is difficult to build because it requires users from different divisions to come together to define a common data model for the warehouse.
Granularity
The level of detail of the data stored in a Data Warehouse.
Heterogeneous environment
Within an enterprise, a network of different types of servers and databases.
Heuristic
The mode of analysis in which the next step is determined by the results of the current step of analysis.
Hierarchy
The organization of data into a logical tree structure.
69
Mary Karina Ruiz Torres
Homogeneous environment
Within an enterprise, a network consisting of the same type of servers and databases.
Horizontal distribution
The splitting of a table across different sites by rows. With horizontal distribution rows of a single table residing at different sites in a distributed data base network.
Hub and spoke configuration
A configuration of interconnected systems where a single system (the hub) acts as the central point for exchanging data with and between the other systems (spokes).
Huffman code
A code for data compaction in which frequently used characters are encoded with fewer bits than infrequently used characters.
HyperCube
See CUBE.
Information
Data that has been processed in such a way that it can increase the knowledge of the person who receives it.
Information systems The authoritative definition of the business rules, systems structure, technical architecture framework, and product backbone for business information systems. Instance
A set of values representing a specific entity belonging to a particular entity type.
Integrity
A set of values representing a specific property of a data base that ensures that the data contained in the data base in accurate and consistent as possible.
Intelligent data base
A data base that contains shared logic as well as shared data and automatically invokes that logic when the data base is accessed. Logic, constraints, and controls relating to the use of data are represented in an intelligent data model.
Interleaved data
Data from different tables mixed into a simple table space where is commonality of physical collocation based on a common key value.
Iterative analysis
The mode of processing in which the next step of processing depends on the results obtained by the existing step in execution.
Join
An operation that takes two relations as operands and produces a new relation by concatenating the tuples and matching the corresponding columns when a stated condition holds between the two.
Key compression
A technique for reducing the number of bits in keys; used in making indexes occupy less space.
Latency
Is often used to mean any delay or waiting that increases real or perceived response time beyond the response time desired.
Lockup
The event that occurs when update is done against a data base record and the transaction has not yet reached a commit point.
Logging
The automatic recording of data with regard to the access of the data, the updates to the data, etc.
70
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Logical representation
A data view or description that does not depend on a physical storage device or a computer program.
Main Storage A data base that resides entirely in main storage. Such data bases are very Data Base (msdb) fast to access, but require special handling at the time of update. MSDB's can only manage a small amounts of data. Maximum Transaction Arrival Rate (MTAR)
The rate of arrival of transactions at the moment of peak period processing.
Metadata or Meta Data
Metadata is data about data. Examples of metadata include data element descriptions, data type descriptions, attribute/property descriptions, range/domain descriptions, and process/method descriptions. The repository environment encompasses all corporate metadata resources: database catalogs, data dictionaries, and navigation services. Metadata includes things like the name, length, valid values, and description of a data element. Metadata is stored in a data dictionary and repository. It insulates the Data Warehouse from changes in the schema of operational systems.
Metadata synchronization
The process of consolidating, relating and synchronizing data elements with the same or similar meaning from different systems. Metadata synchronization joins these differing elements together in the Data Warehouse to allow for easier access.
Metalanguage
A language used to specify other languages.
Methodology
A system of principles, practices, and procedures applied to a specific branch of knowledge.
Mid-Tier Data Warehouses
To be scalable, any particular implementation of the data access environment may incorporate several intermediate distribution tiers in the Data Warehouse network. These intermediate tiers act as source Data Warehouses for geographically isolated sharable data that is needed across several business functions.
Middleware
A communications layer that allows applications to interact across hardware and network environments.
Migration
The process by which frequently used items of data are moved to more readily accessible areas of storage and infrequently used items of data are moved to less readily accessible areas of storage.
Multilist organization
A chained file organization in which the chains are divided into fragments and each fragment is indexed. This organization of data permits faster access to the data.
Natural join
A join in which the redundant logic components generated by the join are removed.
Network model
A data model that provides data relationships on the basis of records or groups of records (ie. sets) in which one record is designated as the set owner, and a single member record can belong to one or more sets.
Nonprocedural language
Syntax that directs the computer as to what to do, not how to do it. Typical nonprocedural languages include RAMIS,FOCUS, NOMAD, and SQL.
71
Mary Karina Ruiz Torres
Normalization
Normalization is a step-by-step process of removing redundancies and dependencies of attributes in a data structure. The condition of the data at completion of each step is described as a "normal form." Thus, when normalizing we talk about data as being in the first normal form, the second normal form, etc. Normalization theory identifies normal forms up to at least the fifth normal form, plus an adjunct form known as Boyce-Codd Normal Form (BCNF). The first three forms are sufficient to meet the needs of warehousing data models.
OLAP (On-Line Analytical Processing)
Describes the systems used not for application delivery, but for analyzing the business, e.g., sales forecasting, market trends analysis, etc. These systems are also more conducive to heuristic reporting and often involves multidimensional data analysis capabilities.
OLTP (OnLine Transaction Processing)
Describes the activities and systems associated with a company's day-to-day operational processing and data (order entry, invoicing, general ledger, etc.).
Operational Data The form that Data Warehouse takes in the operational environment. Store (ODS) Operational data stores can be updated, do provide rapid and consistent time, and contain only a limited amount of historical data. Overflow
The condition in which a record or a segment cannot be stored in its home because the address is already occupied.
Parallel data organization
An arrangement of data in which the data is spread over independent storage devices and is managed independently.
Parallel search storage
A storage device in which one or more parts of all storage locations are queried simultaneously for a certain condition or under certain parameters.
Parsing
The algorithm that translates syntax into meaningful machine instructions. Parsing determines the meaning of statements issued in the data manipulation language.
Partition
A segmentation technique in which data is divided into physically different units. Partioning can be done at the application or the system level.
Performance
The length of time from the moment a request is issued until the first of the results of the request are received.
Periodic discrete A measurement or description of data taken at a regular time interval. data Prefix data
Data in a segment or a record used exclusively for system control, usually unavailable to the user.
Primitive data
Data whose existence depends on only a single occurrence of a major subject area of the enterprise.
Privilege descriptor A persistent object used by a DBMS to enforce constraints on operations. Projection
72
An operation that takes one relation as an operand and returns a second relation that consists of only the selected attributes or columns, with duplicate rows eliminated.
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
Proposition
A statement about entities that asserts or denies that some condition holds for those entities.
Query language
A language that enables an end user to interact directly with a DBMS to retrieve and possibly modify data managed under the DBMS.
Record
An aggregation of values of data organized by their relation to a common key.
Recovery
The restoration of the database to an original position or condition, often after major damage to the physical medium.
Redundancy
The practice of storing more than one occurrence of data.
Referential integrity
The facility of a DBMS to ensure the validity of a predefined relationship.
Replication
The physical copying of data from one database to another.
Rolling summary
A form of storing archival data where the most recent data has the lowest level of details stored and the older data has higher levels of details stored.
Schema
The logical organization of data in a database.
Scope of integration The formal definition of the boundaries of the system being modeled. Sequential file
A file in which records are ordered according to the values of one or more key fields.
Serial file
A sequential file in which records are physically adjacent, in sequential order.
Snowflake schema
A snowflake schema is a set of tables comprised of a single, central fact table surrounded by normalized dimension hierarchies. Each dimension level is represented in a table. Snowflake schema implement dimensional data structures with fully normalized dimensions. Star schema are an alternative to snowflake schema.
Star schema
A star schema is a set of tables comprised of a single, central fact table surrounded by de-normalized dimensions. Each dimension is represented in a single table. Star schema implement dimensional data structures with denormalized dimensions. Snowflake schema are an alternative to star schema.
Table
A relation that consists of a set of columns with a heading and a set of rows.
Time variant data Data whose accuracy is relevant to some one moment in time. Transaction processing
The activity of executing many short, fast running programs, providing the end user with consistent two or three second response time.
Transition data
Data possessing both primitive and derived characteristics; usually very sensitive to the running of the business.
73
Mary Karina Ruiz Torres
Data Warehouse y minería de datos •
Jiawei Han, Micheline Kamber. The Morgan Kaufmann Series in Data Management Systems, Jim Gray, Series Editor August 2000.
•
.
W. J. Frawley, G. Piatestky-Shapiro, P. Smyth.
W. J. Frawley, G. Piatestky-Shapiro, P. Smyth and Uthurusamy (eds.), AAAI Press 1996. •
R. Agrawal,
pp.207-216, Washington DC, 1993. •
W. H. Inmon, John Willey and Sons Inc. 1996.
•
W. H. Inmon J. D. Welch K. Glassey, John Willey and Sons Inc. 1997.
74
Dirección General de Servicios de Cómputo Académico
DATA WAREHOUSE y minería de datos
•
S. Zdonik y D. Maier, Morgan Kaufmann, San Mateo, California, 1991.
•
Número especial en Temporal and Real-Time Databases vol. 7, nº4, 1995.
Bases de datos inteligentes •
Bielawski, L. & Lewand, R. (1991). .
John Wiley & Sons, New York. •
Parsaye, K., M. Chignell, S. Khoshafian and H. Wong (1989). John Wiley and Sons, New York.
•
Bates, M. (1991). In Interfaces for Information Retrieval and Online Systems: the State of the Art, ed. M. Dillon. Greenwood Press, New York.
•
Dillon, M., ed. (1991). Greenwood Press, New York.
•
.
Fallows, J. (1992). May 1992, pp. 114-117.
•
Gibbons, H. (1990). In CBT Directions, February 1990, Weingarten Publications, Boston.
•
Glossbrenner, A. (1987). St. Martin's Press, New York.
75
Mary Karina Ruiz Torres
•
Harter, S. (1986). Academic Press, Inc., New York.
•
.
Hawkins, D. (1988). .
Online, Vol. 12:1, pp. 31-44. •
McFarland, T. and Parker, R. (1990). Educational Technology Publications, Englewood Cliffs, NJ.
•
Wurman, R. (1989). Bantam Books, New York, New York.
•
Zuboff, S. (1988). Basic Books, Inc., Publishers, New York.
Referencias electrónicas •
•
•
•
•
76
“Alpert Sleight, Deborah (1993). Michigan State University” [en línea] [Consulta: noviembre de 2003] [Consulta: noviembre de 2003] “Oracle” [Consulta: noviembre de 2003] “IBM” [Consulta: noviembre de 2003] “@Simon Fraser University-. Computing Science” < http://www.cs.sfu.ca> [Consulta: noviembre de 2003]
Dirección General de Servicios de Cómputo Académico