Investigacion Modelo OLAP

13
OLAP El procesamiento analítico en línea OLAP (On Line Analytic Processing), es la componente más poderosa del Data Warehousing, ya que es el motor de consultas especializado del depósito de datos. Las herramientas OLAP, son una tecnología de software para análisis en línea, administración y ejecución de consultas, que permiten inferir información del comportamiento del negocio. Su principal objetivo es el de brindar rápidas respuestas a complejas preguntas, para interpretar la situación del negocio y tomar decisiones. Cabe destacar que lo que es realmente interesante en OLAP, no es la ejecución de simples consultas tradicionales, sino la posibilidad de utilizar operadores tales como drill-up, drill-down, etc, para explotar profundamente la información. Además, a través de este tipo de herramientas, se puede analizar el negocio desde diferentes escenarios históricos, y proyectar como se ha venido comportando y evolucionando en un ambiente multidimensional, o sea, mediante la combinación de diferentes perspectivas, temas de interés o dimensiones. Esto permite deducir tendencias, por medio del descubrimiento de relaciones entre las perspectivas que a simple vista no se podrían encontrar sencillamente. Las herramientas OLAP requieren que los datos estén organizados dentro del depósito en forma multidimensional, por lo cual se utilizan cubos multidimensionales. Además de las características ya descritas, se pueden enumerar las siguientes: Permite recolectar y organizar la información analítica necesaria para los usuarios y disponer de ella en diversos formatos, tales como tablas, gráficos, reportes, tableros de control, etc. Soporta análisis complejos de grandes volúmenes de datos. Complementa las actividades de otras herramientas que requieran procesamiento analítico en línea. Presenta a los usuarios una visión multidimensional de los datos (matricial) para cada tema de interés del negocio. Es transparente al tipo de tecnología que soporta el DW, ya sea ROLAP, MOLAP u HOLAP.

description

OLAP

Transcript of Investigacion Modelo OLAP

OLAPEl procesamiento analtico en lnea OLAP (On Line Analytic Processing), es la componente ms poderosa del Data Warehousing, ya que es el motor de consultas especializado del depsito de datos.Las herramientas OLAP, son una tecnologa de software para anlisis en lnea, administracin y ejecucin de consultas, que permiten inferir informacin del comportamiento del negocio.Su principal objetivo es el de brindar rpidas respuestas a complejas preguntas, para interpretar la situacin del negocio y tomar decisiones. Cabe destacar que lo que es realmente interesante en OLAP, no es la ejecucin de simples consultas tradicionales, sino la posibilidad de utilizar operadores tales como drill-up, drill-down, etc, para explotar profundamente la informacin.Adems, a travs de este tipo de herramientas, se puede analizar el negocio desde diferentes escenarios histricos, y proyectar como se ha venido comportando y evolucionando en un ambiente multidimensional, o sea, mediante la combinacin de diferentes perspectivas, temas de inters o dimensiones. Esto permite deducir tendencias, por medio del descubrimiento de relaciones entre las perspectivas que a simple vista no se podran encontrar sencillamente.Las herramientas OLAP requieren que los datos estn organizados dentro del depsito en forma multidimensional, por lo cual se utilizan cubos multidimensionales.Adems de las caractersticas ya descritas, se pueden enumerar las siguientes: Permite recolectar y organizar la informacin analtica necesaria para los usuarios y disponer de ella en diversos formatos, tales como tablas, grficos, reportes, tableros de control, etc. Soporta anlisis complejos de grandes volmenes de datos. Complementa las actividades de otras herramientas que requieran procesamiento analtico en lnea. Presenta a los usuarios una visin multidimensional de los datos (matricial) para cada tema de inters del negocio. Es transparente al tipo de tecnologa que soporta el DW, ya sea ROLAP, MOLAP u HOLAP. No tiene limitaciones con respecto al nmero mximo de dimensiones permitidas. Permite a los usuarios, analizar la informacin basndose en ms criterios que un anlisis de forma tradicional. Al contar con muestras grandes, se pueden explorar mejor los datos en busca de respuestas. Permiten realizar agregaciones y combinaciones de los datos de maneras complejas y especficas, con el fin de realizar anlisis ms estratgicos.Un sistema OLAP se puede entender como la generalizacin de un generador de informes. Las aplicaciones informticas clsicas de consulta, orientadas a la toma de decisiones, deben ser programadas. Atendiendo a las necesidades del usuario, se crea una u otra interfaz.Sin embargo, muchos desarrolladores se dieron cuenta de que estas aplicaciones eran susceptibles de ser generalizadas y servir para casi cualquier necesidad, esto es, para casi cualquier base de datos. Los sistemas OLAP evitan la necesidad de desarrollar interfaces de consulta, y ofrecen un entorno nico vlido para el anlisis de cualquier informacin histrica, orientado a la toma de decisiones. A cambio, es necesario definir dimensiones, jerarquas y variables, organizando de esta forma los datos.Una vez que se ha decidido emplear un entorno de consulta OLAP, se ha de elegir entre R-OLAP y M-OLAP.R-OLAP.Es la arquitectura de base de datos multidimensional en la que los datos se encuentran almacenados en una base de datos relacional, la cual tiene forma de estrella (tambin llamada copo de nieve o araa). En R-OLAP, en principio la base de datos solo almacena informacin relativa a los datos en detalle, evitando acumulados (evitando redundancia).M-OLAP.Consigue consultas muy rpidas a costa de mayores necesidades de almacenamiento, y retardos en las modificaciones (que no deberan producirse salvo excepcionalmente), y largos procesos batch de carga y clculo de acumulados. En R-OLAP, al contener solo las combinaciones de valores de dimensin que representan detalle, es decir, al no haber redundancia, el archivo de base de datos es pequeo. Los procesos batch de carga son rpidos (ya que no se requiere agregacin), y sin embargo, las consultas pueden ser muy lentas, por lo que se aplica la solucin de tener por lo menos algunas consultas pre calculadas. H-OLAP.Es una combinacin de R-OLAP y M-OLAP, que son otras posibles implementaciones de OLAP. HOLAP permite almacenar una parte de los datos como en un sistema M-OLAP y el resto como en uno R-OLAP. El grado de control que le operador de la aplicacin tienen sobre este particionamiento varia de unos productos a otros.

Proceso de consulta y anlisis.Existen diferentes tipos de herramientas de consulta y anlisis, y de acuerdo a la necesidad, tipos de usuarios y requerimientos de informacin, se debern seleccionar las ms propicias al caso. Entre ellas se destacan las siguientes: Reportes y Consultas. OLAP. Dashboards. Data Mining. EIS.A travs de una interfaz grfica y una serie de pasos, los usuarios generan consultas que son enviadas desde la herramienta de consulta anlisis al Query Manager, este a su vez realiza la extraccin de informacin al DW Manager y devuelve los resultados obtenidos a la herramienta que se los solicito. Luego, estos resultados son expuestos ante los usuarios en formatos que le son familiares.Este proceso se puede comprender al observar la siguiente figura:

1. Los usuarios seleccionan o establecen que datos desean obtener del DW, mediante las interfaces de la herramienta que utilice.2. La herramienta recibe el pedido de los usuarios, construye la consulta (utilizando la metadata) y la enva al Query Manager.3. El Query Manager ejecuta la consulta sobre la estructura de datos con la que se est trabajando (cubo multidimensional, Business Model, etc.).4. El Query Manager obtiene los resultados de la consulta.5. El Query Manager enva los datos a la herramienta de consulta y anlisis.6. La herramienta presentan a los usuarios la informacin requerida.Las herramientas de consulta y anlisis son sistemas que permiten a los usuarios realizar la exploracin de datos del DW. Bsicamente constituyen el nexo entre el depsito de datos y los usuarios.Utilizan la metadata de las estructuras de datos que han sido creadas previamente (cubos multidimensionales, Business Models, etc.) para trasladar a travs de consultas SQL los requerimientos de los usuarios, para luego, devolver el resultado obtenido.Estas herramientas tambin pueden emplear simples conexiones a bases de datos (JNDI, JDBC, ODBC), para obtener la informacin deseada.A travs de una interfaz grfica y una serie de pasos, los usuarios generan consultas que son enviadas desde la herramienta de consulta y anlisis al Query Manager, este a su vez realiza la extraccin de informacin al DW Manager y devuelve los resultados obtenidos a la herramienta que se los solicit. Luego, estos resultados son expuestos ante los usuarios en formatos que le son familiares.Una de las principales ventajas de utiizar estas herramientas, es que los usuarios no tienen que preocuparse por conocer cules son las caractersticas y funcionalidades de las estructuras de datos utilizadas, ni por saber emplear el lenguaje SQL, solo se deben enfocar en el anlisis.Las herramientas de consulta y anlisis, en general, comparten las siguientes caractersticas: Accesibilidad a la informacin: permiten el acceso a la informacin a travs de las diferentes estructuras de datos de forma transparente a los usuarios finales, para que estas solo se enfoquen en el anlisis y no en el origen y procedencia de los datos. Apoyo en la toma de decisiones: permiten la exploracin de los datos, a fin de seleccionar, filtrar y personalizar los mismos, para la obtencin de informacin oportuna, relevante y til, para apoyar el proceso de toma de decisiones. Orientacin los usuarios finales: permiten a travs de entornos amigables e intuitivos, que los usuarios puedan realizar anlisis y consultas, sin poseer conocimientos tcnicos. Si bien lo realmente importante son los datos mismos, que estos puedan ser interpretados y analizados por los usuarios depender en gran medida de cmo se presenten y dispongan.

Reportes y ConsultasSe han desarrollado muchas herramientas para la produccin de consultas y reportes, que ofrecen a los usuarios, a travs de pantallas grficas intuitivas, la posibilidad de generar informes avanzados y detallados del tema de inters de inters que se est analizando. Los usuarios solo deben seguir una serie de simples pasos, como por ejemplo seleccionar opciones de un men, presionar tal o cual botn para especificar los elementos de datos, sus condiciones, criterios de agrupacin y dems atributos que se consideren significativos.Actualmente las herramientas de generacin de reportes y consultas cuentan con muchas prestaciones, las cuales permiten dar variadas formas y formatos a la presentacin de la informacin. Entre las opciones ms comunes se encuentran las siguientes: Parametrizacin de los datos devueltos. Seleccin de formatos de salida (planilla de clculo, HTML, PDF, etc.). Inclusin de grficos de tortas, barras, etc. Utilizacin de plantillas de formatos de fondos. Inclusin de imgenes. Formatos tipogrficos. Links a otros reportes.

Los sistemas de bases de datos relacionales actuales normalmente incluyen algunas herramientas como procesadores de consultas, componentes de minera de datos y de procesamiento analtico en lnea (OLAP). Estas herramientas permiten a los desarrolladores construir aplicaciones robustas de Inteligencia de Negocios (BI) por sus siglas en ingles de Business Inteligence, que no slo permiten recuperar registros eficientes, sino que tambin permite un anlisis sofisticado tal como clasificacin de los clientes y segmentacin del mercado. Una comprensin adecuada de las diferencias entre todas estas herramientas es bsico para su mejor desarrollo a partir del entendimiento real de los alcances de cada uno de las herramientas.Prcticamente todos los sistemas comerciales modernos estn basados en el modelo relacional formalizado por Codd [10] y el lenguaje SQL que permite al usuario una manipulacin adecuada y efectiva de una BD. En este modelo una BD es una representacin de una relacin matemtica, esto es, un conjunto de objetos que comparten unas propiedades o caractersticas. Las BD relacionales no slo permiten la creacin de tablas, tambin permiten la manipulacin de ellas y de los datos que la componen. La operacin fundamental de una BD es la consulta. Esta operacin permite al usuario obtener datos de las tablas de la BD al obtener toda la informacin que cumpla con ciertos criterios especificados en la consulta. Vamos a suponer que dentro del mismo ejemplo que se ha manejado, se quiere obtener la informacin de todos los productos que cuesten ms de $1000 pesos. La siguiente consulta traera esta informacin:SELECT * FROM Productos WHERE precio > 1000;Esta consulta regresara todas las instancias de la BD donde el valor del atributo "precio "sea mayor que 1000. Como este ejemplo ilustra, la consulta en su concepcin ms simple sirve como un filtro que permite al usuario seleccionar instancias desde una tabla basada en ciertos valores de los atributos. No importa que tan grande o pequea sea la tabla de la BD, una consulta regresara como resultado todas las instancias que cumplen con la condicin que se le haya indicado. Suponiendo entonces que sea una tabla muy grande, digamos con miles de productos, entonces la respuesta puede sobrepasar las capacidades de anlisis que como usuarios se puede tener.A partir de estas dificultades es que surge el concepto de minera de datos y la diferencia con una base de datos. Al consultar una BD simplemente se obtienen los valores que cumplen ciertas condiciones, en cambio la minera de datos busca construir modelos de datos. Estos modelos pueden ser vistos como resmenes de alto nivel de las capas de informacin obtenida en un nivel ms bajo y en la mayora de los casos son ms tiles que los datos crudos, ya que en la orientarse al negocio se ha buscado que sean datos comprensibles y procesables. Dependiendo de las preguntas de inters, los modelos de minera de datos pueden tomar diferentes formas. Esto incluye desde rboles y reglas de decisin para tareas de clasificacin, asociacin de reglas, as como agrupamientos de mercado entre otros modelos posibles. Siguiendo con el ejemplo de la consulta SQL, un algoritmo de minera de datos que construye reglas de decisin debe regresar el siguiente conjunto de reglas para productos que tienen un precio de ms de mil pesos:IF Departamento = Perfumera AND Proveedor = Perfumera Francesa THEN Precio > 1000oIF Proveedor = Chocolates BelgasEsta informacin como se observa ya es de otro estilo a diferencia de los datos crudos. En este caso es un resumen de los datos obtenidos. Nos dice que cuando el departamento es Perfumera, los productos comprados a "Perfumera Francesa siempre tienen un precio mayor de 1000. Por otro lado, nos podemos dar cuenta que los chocolates que son ofrecidos por Chocolates Belgas siempre son de un costo mayor a mil pesos. Esta pequea pero sutil diferencia nos puede indicar varias cosas, en primero puede que Perfumera Francesa ofrezca artculos de bao y entonces cuando estn en ese departamento sus precios no superan los mil pesos. En cambio Chocolates Belgas puede ser que slo ofrezca en un departamento o que ofrezca en varios y que siempre sean sus precios mayores a mil pesos.Es importante destacar que las reglas siempre tienen un fin y presentan una informacin relevante al negocio, por ejemplo, puede ser que tengan una noche de promocin y los precios de perfumera deban reducirse a menos de mil pesos. Por lo tanto deben comunicarse con "Perfumera Francesa" para negociar. O tal vez decidan eliminar del inventario los productos de Chocolates Belgas" por su alto costo. Es decir todas estas reglas tienen aplicacin de una u otra forma. Es aqu entonces donde se puede observar la principal diferencia entra las BD y sus consultas a una minera de datos. Que la minera de datos no regresa datos crudos, ms bien obtiene modelos de los datos que se trabajan. Estos modelos son benficos porque en general son entendibles y pueden generar acciones concretas.

Sistemas OLAP.Los sistemas OLAP son una propuesta para la toma de decisiones, la cual ayuda a extraer conocimiento de un almacn de datos, o ms especficamente de un mercado de datos. Su principal idea es proveer navegacin a travs de los datos a los usuarios inexpertos, para que sean capaces de generar interactivamente consultas que no estuvieran previamente definidas o ad hoc sin la intervencin de algn tipo de profesional. El nombre se contrapone a los sistemas OLTP ya que refleja requerimientos y caractersticas totalmente diferentes. Ambos son parte del rea de BI.El anlisis de datos fue un uso para las computadoras que fue inmediatamente resaltado por parte de las empresas. Sin embargo las herramientas de anlisis requeran directamente el uso por parte de algn especialista en el rea de las tecnologas de la informacin que ayudara a hacer consultas a los datos, en especfico las de tipo ad-hoc, adems de que el software y hardware era caro y prohibitivo para empresas pequeas. Es as como surge el concepto de OLAP. En 1993 Codd, define el trmino aunque se vena trabajando con este desde tiempo antes, buscando sistemas que fueran lo suficientemente rpidas para soportar consultas interactivas, que ayudaran a las tareas de anlisis al proveer flexibilidad en el uso de herramientas estadsticas, que ofrecieran seguridad, que permitieran vistas multidimensionales y que finalmente manejaran grandes volmenes de datos y metadatos.Como se dijo los sistemas OLAP se contraponen a los sistemas OLTP en sus requerimientos. En la figura 3.1 se muestran algunas diferencias sobresalientes. En primer lugar, su uso es diferente. Mientras que los sistemas OLTP son creados para solucionar problemas concretos y son usados en el trabajo diario de las compaas, los sistemas OLAP son usados en la toma de decisiones. Es fcil notar entonces que la carga de trabajo est claramente definida para los sistemas OLTP, mientras que por otro lado los sistemas de toma de decisiones resuelven nuevos problemas cada da. Es ms los sistemas OLAP son considerados de slo lectura porque la toma de decisiones no afecta directamente a los datos, mientras que los OLTP s llegan a modificar estos. Sobre el tipo de consultas que ejecutan cada uno, se tiene que los sistemas OLAP son mucho ms complejas y manejan un gran nmero de datos, requiriendo operaciones de tipo join entre algunas tablas, junto a algunas agrupaciones de datos y funciones de clculo; los sistemas OLTP en cambio no trabajan grandes volmenes de datos al menos no de la magnitud de OLAP, ni tantas tablas, agrupaciones y clculos. El nmero de registros en operaciones OLTP puede ser estimado en decenas o miles a lo mucho, mientras que las consultas OLAP requieren de miles o de millones de registros. Finalmente, el nmero de usuarios es tambin diferente en ambos tipos de sistemas. Los sistemas OLTP pueden tener miles o millones de usuario pensemos en algn sistema de compras en lnea, mientras que los sistemas OLAP tiene decenas o miles tal vez de usuarios.Despus de este completo anlisis es posible identificar que OLAP es un cambio en las definiciones de los datos de BD relacionales de una manera que se permite el pre-cmputo de ciertas consultas. OLAP en s es una manera de mirar estos resultados de consultas pre-agregadas en tiempo real. Sin embargo, por s mismo OLAP no es ms que una forma de evaluar consultas que es diferente a construir modelos de datos como en la minera de datos. As, no es posible considerar por s mismo a los sistemas OLAP como minera de datos.

Consultas OLAP.Las consultas OLAP como se ha mencionado, presentan un grado de complejidad alto. Esto debido a distintas condiciones, desde el nmero de tuplas a procesar hasta la complejidad de las operaciones que lleva a cabo la consulta. Dentro de las caractersticas a notar de las consultas OLAP es que son de tipo ad-hoc que generalmente son de tipo estrella.Muchas de las aplicaciones de los SBD tienen a nivel de vista slo algunos mens acotados que realizan a nivel de capas inferiores un nmero limitado de consultas y reportes. Al estar de antemano acotadas las posibilidades y adems saber cules son, se permite que las consultas sean diseadas, pre-programadas y optimizadas para un mejor desempeo por parte de programadores expertos.En contraste existen sistemas que permiten a los usuarios crear consultas propias y personalizadas, a estas se les conoce precisamente como ad-hoc y generalmente se llevan a cabo mediante interfaces amigables para el usuario, que no necesariamente debe tener un conocimiento profundo de SQL o del esquema de la BD, aunque como es de deducirse, en las capas inferiores es donde se llevan a cabo las traducciones a SQL con la informacin del esquema de la BD.Las consultas estrella son las que realizan una operacin de tipo join entre una tabla fact y un nmero de tablas dimensiones, esto quiere decir que en su mayora son operaciones sobre la tabla fact. Un ejemplo de este tipo es la consulta nmero 9 del benchmark TPC-H, que se presentar a detalle ms adelante en la seccin de resultados:

SELECTnation;o_year;sum(amount) as sum_profitFROM( SELECT n_name as nation,extract(year from o_orderdate) as o_year,l_extendedprice * (1-1_discount) ps_supplycost * l_quality as amount FROMpart,supplier,lineitem,partsupp,orders,nation WHEREs_suppkey = l_suppkeyand ps_suppkey = l_suppkeyand ps_partkey = l_partkeyand p_partkey = l_partkeyand o_orderkey = l_orderkeyand s_nationkey = n_nationkeyand p_name like %:1 %) AS profit GROUP BYnation,o_yearORDER BYnation,o_year desc;En esta consulta, se ve que seis relaciones de la BD se ven involucradas al estar presentes en la parte FROM de la consulta interiory que las condiciones presentes en la parte WHERE, todas son sobre la tabla fact, que en este caso es la tabla "lineitem".La tabla fact en las consultas OLAP es la ms presente, ya sea siendo el centro de las consultas estrella o estando en consultas donde es la nica tabla accesada. Todo esto debido a que concentra la mayora de los datos.