Articulo de referencia

Procesamiento analítico en línea

En informática , el procesamiento analítico en línea (OLAP) ( / ˈ oʊ l æ p / ), es un enfoque para responder rápidamente a consultas analíticas multidimensionales (MDA). [ 1 ] E...

En informática , el procesamiento analítico en línea (OLAP) ( / ˈ l æ p / ), es un enfoque para responder rápidamente a consultas analíticas multidimensionales (MDA). [ 1 ] El término OLAP se creó como una ligera modificación del término tradicional de bases de datos, procesamiento de transacciones en línea (OLTP). [ 2 ] OLAP forma parte de la categoría más amplia de inteligencia empresarial , que también abarca bases de datos relacionales , redacción de informes y minería de datos . [ 3 ] Las aplicaciones típicas de OLAP incluyen informes empresariales para ventas, marketing , informes de gestión, gestión de procesos empresariales (BPM), [ 4 ] presupuestos y pronósticos , informes financieros y áreas similares, con nuevas aplicaciones emergentes, como la agricultura . [ 5 ]

Las herramientas OLAP permiten a los usuarios analizar datos multidimensionales de forma interactiva desde múltiples perspectivas. OLAP consta de tres operaciones analíticas básicas: consolidación (agregación), desglose y segmentación. [ 6 ] : 402–403 La consolidación implica la agregación de datos que se pueden acumular y calcular en una o más dimensiones. Por ejemplo, todas las oficinas de ventas se agregan al departamento de ventas o división de ventas para anticipar las tendencias de ventas. Por el contrario, el desglose es una técnica que permite a los usuarios navegar por los detalles. Por ejemplo, los usuarios pueden ver las ventas por productos individuales que componen las ventas de una región. La segmentación es una función mediante la cual los usuarios pueden extraer (segmentar) un conjunto específico de datos del cubo OLAP y ver (segmentar) las secciones desde diferentes puntos de vista. Estos puntos de vista a veces se denominan dimensiones (como ver las mismas ventas por vendedor, o por fecha, o por cliente, o por producto, o por región, etc.).

Las bases de datos configuradas para OLAP utilizan un modelo de datos multidimensional, lo que permite realizar consultas analíticas y ad hoc complejas con un tiempo de ejecución rápido. [ 7 ] Toman prestados aspectos de las bases de datos de navegación , las bases de datos jerárquicas y las bases de datos relacionales.

OLAP se suele contrastar con OLTP (procesamiento de transacciones en línea), que generalmente se caracteriza por consultas mucho menos complejas, de mayor volumen, para procesar transacciones en lugar de para fines de inteligencia empresarial o generación de informes. Mientras que los sistemas OLAP están optimizados principalmente para la lectura, OLTP debe procesar todo tipo de consultas (lectura, inserción, actualización y eliminación).

Descripción general de los sistemas OLAP

En el núcleo de cualquier sistema OLAP se encuentra un cubo OLAP (también llamado «cubo multidimensional» o hipercubo ). Este consta de datos numéricos denominados medidas , categorizados por dimensiones . Las medidas se ubican en las intersecciones del hipercubo, que está definido por las dimensiones como un espacio vectorial . La interfaz habitual para manipular un cubo OLAP es una interfaz matricial, similar a las tablas dinámicas de una hoja de cálculo, que realiza operaciones de proyección a lo largo de las dimensiones, como agregación o cálculo de promedios.

Los metadatos del cubo se crean normalmente a partir de un esquema de estrella , un esquema de copo de nieve o una constelación de tablas de hechos en una base de datos relacional . Las medidas se derivan de los registros de la tabla de hechos y las dimensiones se derivan de las tablas de dimensiones .

Cada medida puede considerarse como si tuviera un conjunto de etiquetas o metadatos asociados. Una dimensión es lo que describe estas etiquetas ; proporciona información sobre la medida .

Un ejemplo sencillo sería un cubo que contiene las ventas de una tienda como medida y la fecha/hora como dimensión . Cada venta tiene una etiqueta de fecha/hora que describe con más detalle dicha venta.

Por ejemplo:

Tabla de datos de ventas +-------------+----------+ | importe_de_venta | ID_de_tiempo | +-------------+----------+ Dimensión del tiempo | 930.10| 1234 |----+ +---------+-------------------+ +-------------+----------+ | | time_id | marca_de_tiempo | | +---------+-------------------+ +---->| 1234 | 20080902 12:35:43 | +---------+-------------------+

Bases de datos multidimensionales

La estructura multidimensional se define como "una variación del modelo relacional que utiliza estructuras multidimensionales para organizar datos y expresar las relaciones entre ellos". [ 6 ] : 177 La estructura se divide en cubos, y estos pueden almacenar y acceder a los datos dentro de sus límites. "Cada celda dentro de una estructura multidimensional contiene datos agregados relacionados con elementos a lo largo de cada una de sus dimensiones". [ 6 ] : 178 Incluso cuando los datos se manipulan, siguen siendo de fácil acceso y constituyen un formato de base de datos compacto. Los datos permanecen interrelacionados. La estructura multidimensional es muy popular para bases de datos analíticas que utilizan aplicaciones de procesamiento analítico en línea (OLAP). [ 6 ] Las bases de datos analíticas utilizan estas bases de datos debido a su capacidad para ofrecer respuestas rápidas a consultas empresariales complejas. Los datos pueden verse desde diferentes ángulos, lo que proporciona una perspectiva más amplia de un problema, a diferencia de otros modelos. [ 8 ]

Agregaciones

Se ha afirmado que, para consultas complejas, los cubos OLAP pueden producir una respuesta en aproximadamente el 0,1 % del tiempo requerido para la misma consulta en datos relacionales OLTP . [ 9 ] [ 10 ] El mecanismo más importante en OLAP que le permite lograr tal rendimiento es el uso de agregaciones . Las agregaciones se construyen a partir de la tabla de hechos cambiando la granularidad en dimensiones específicas y agregando datos a lo largo de estas dimensiones, utilizando una función de agregación . El número de agregaciones posibles está determinado por cada combinación posible de granularidades de dimensión.

La combinación de todas las agregaciones posibles y los datos base contiene las respuestas a todas las consultas que pueden responderse a partir de los datos. [ 11 ]

Debido a que generalmente hay muchas agregaciones que se pueden calcular, a menudo solo se calcula completamente un número predeterminado; el resto se resuelve bajo demanda. El problema de decidir qué agregaciones (vistas) calcular se conoce como el problema de selección de vistas. La selección de vistas puede estar restringida por el tamaño total del conjunto de agregaciones seleccionadas, el tiempo para actualizarlas a partir de cambios en los datos base, o ambos. El objetivo de la selección de vistas es típicamente minimizar el tiempo promedio para responder consultas OLAP, aunque algunos estudios también minimizan el tiempo de actualización. La selección de vistas es NP-completa . Se han explorado muchos enfoques para el problema, incluidos algoritmos voraces , búsqueda aleatoria, algoritmos genéticos y el algoritmo de búsqueda A* .

Algunas funciones de agregación se pueden calcular para todo el cubo OLAP precalculando valores para cada celda y luego calculando la agregación para un resumen de celdas agregando estos agregados, aplicando un algoritmo de divide y vencerás al problema multidimensional para calcularlos de manera eficiente. [ 12 ] Por ejemplo, la suma total de un resumen es simplemente la suma de las subsumas en cada celda. Las funciones que se pueden descomponer de esta manera se llaman funciones de agregación descomponibles , e incluyen COUNT, MAX, MIN, y SUM, que se pueden calcular para cada celda y luego agregar directamente; estas se conocen como funciones de agregación autodescomponibles. [ 13 ]

En otros casos, la función agregada se puede calcular calculando números auxiliares para las celdas, agregando estos números auxiliares y, finalmente, calculando el número total al final; ejemplos incluyen AVERAGE(suma y recuento, división al final) y RANGE(máximo y mínimo, resta al final). En otros casos, la función agregada no se puede calcular sin analizar todo el conjunto a la vez, aunque en algunos casos se pueden calcular aproximaciones; ejemplos incluyen DISTINCT COUNT, MEDIAN, y MODE; por ejemplo, la mediana de un conjunto no es la mediana de las medianas de los subconjuntos. Estos últimos son difíciles de implementar de manera eficiente en OLAP, ya que requieren calcular la función agregada en los datos base, ya sea calculándolos en línea (lento) o precalculándolos para posibles despliegues (gran espacio).

Tipos

Los sistemas OLAP se han categorizado tradicionalmente utilizando la siguiente taxonomía. [ 14 ]

OLAP multidimensional (MOLAP)

MOLAP (procesamiento analítico en línea multidimensional) es la forma clásica de OLAP y a veces se le denomina simplemente OLAP. MOLAP almacena estos datos en un sistema de almacenamiento de matriz multidimensional optimizado, en lugar de en una base de datos relacional.

Algunas herramientas MOLAP requieren el preprocesamiento y almacenamiento de datos derivados, como consolidaciones (operación conocida como procesamiento). Estas herramientas suelen utilizar un conjunto de datos precalculado, denominado cubo de datos . El cubo de datos contiene todas las posibles respuestas a un conjunto de preguntas determinado. Como resultado, ofrecen una respuesta muy rápida a las consultas. Por otro lado, la actualización puede llevar mucho tiempo, dependiendo del grado de preprocesamiento. El preprocesamiento también puede provocar lo que se conoce como explosión de datos.

Otras herramientas MOLAP, en particular las que implementan el modelo de base de datos funcional , no precalculan los datos derivados, sino que realizan todos los cálculos bajo demanda, excepto aquellos que se solicitaron previamente y se almacenaron en una caché.

Ventajas de MOLAP

  • Rendimiento de consulta rápido gracias al almacenamiento optimizado, la indexación multidimensional y el almacenamiento en caché.
  • El tamaño de los datos en disco es menor que el de los datos almacenados en una base de datos relacional gracias a las técnicas de compresión.
  • Cálculo automatizado de agregados de datos de nivel superior.
  • Es muy compacto para conjuntos de datos de baja dimensión.
  • Los modelos de matriz proporcionan una indexación natural.
  • La extracción eficaz de datos se logra mediante la preestructuración de los datos agregados.

Desventajas del MOLAP

  • En algunos sistemas MOLAP, el paso de procesamiento (carga de datos) puede ser bastante largo, especialmente con grandes volúmenes de datos. Esto suele solucionarse realizando un procesamiento incremental, es decir, procesando solo los datos que han cambiado (normalmente datos nuevos) en lugar de reprocesar todo el conjunto de datos.
  • Algunas metodologías MOLAP introducen redundancia de datos.

Productos

Algunos ejemplos de productos comerciales que utilizan MOLAP son Cognos Powerplay, Oracle Database OLAP Option , MicroStrategy , Microsoft Analysis Services , Essbase , TM1 , Jedox e icCube.

OLAP relacional (ROLAP)

ROLAP trabaja directamente con bases de datos relacionales y no requiere preprocesamiento. Los datos base y las tablas de dimensiones se almacenan como tablas relacionales, y se crean nuevas tablas para contener la información agregada. Depende de un diseño de esquema especializado. Esta metodología se basa en la manipulación de los datos almacenados en la base de datos relacional para simular la funcionalidad de segmentación y filtrado de OLAP tradicional. En esencia, cada acción de segmentación y filtrado equivale a agregar una cláusula "WHERE" en la sentencia SQL. Las herramientas ROLAP no utilizan cubos de datos precalculados, sino que realizan la consulta a la base de datos relacional estándar y sus tablas para obtener los datos necesarios para responder a la pregunta. Las herramientas ROLAP permiten realizar cualquier consulta, ya que la metodología no se limita al contenido de un cubo. ROLAP también permite profundizar hasta el nivel de detalle más bajo de la base de datos.

Si bien ROLAP utiliza una base de datos relacional, generalmente esta debe diseñarse cuidadosamente para su uso en ROLAP. Una base de datos diseñada para OLTP no funcionará correctamente como base de datos ROLAP. Por lo tanto, ROLAP aún implica la creación de una copia adicional de los datos. Sin embargo, al tratarse de una base de datos, se pueden utilizar diversas tecnologías para su llenado.

Ventajas de ROLAP

  • Se considera que ROLAP es más escalable para manejar grandes volúmenes de datos, especialmente modelos con dimensiones de cardinalidad muy alta (es decir, millones de miembros).
  • Gracias a la variedad de herramientas de carga de datos disponibles y a la posibilidad de ajustar el código de extracción, transformación y carga (ETL) al modelo de datos específico, los tiempos de carga suelen ser mucho más cortos que con las cargas automatizadas de MOLAP .
  • Los datos se almacenan en una base de datos relacional estándar y se puede acceder a ellos mediante cualquier herramienta de generación de informes SQL (la herramienta no tiene por qué ser una herramienta OLAP).
  • Las herramientas ROLAP manejan mejor los datos no agregables (por ejemplo, descripciones textuales). Las herramientas MOLAP suelen presentar un rendimiento lento al consultar estos elementos.
  • Al desacoplar el almacenamiento de datos del modelo multidimensional, es posible modelar con éxito datos que de otro modo no encajarían en un modelo dimensional estricto.
  • El enfoque ROLAP puede aprovechar los controles de autorización de la base de datos , como la seguridad a nivel de fila , mediante la cual los resultados de la consulta se filtran en función de criterios preestablecidos aplicados, por ejemplo, a un usuario o grupo de usuarios determinado ( cláusula SQL WHERE).

Desventajas de ROLAP

  • Existe consenso en el sector de que las herramientas ROLAP tienen un rendimiento inferior al de las herramientas MOLAP. Sin embargo, consulte el análisis sobre el rendimiento de ROLAP que se presenta a continuación.
  • La carga de tablas agregadas debe gestionarse mediante código ETL personalizado . Las herramientas ROLAP no facilitan esta tarea. Esto implica tiempo de desarrollo adicional y más código que mantener.
  • Cuando se omite el paso de crear tablas agregadas, el rendimiento de las consultas se ve afectado, ya que es necesario consultar las tablas detalladas de mayor tamaño. Esto puede solucionarse parcialmente añadiendo tablas agregadas adicionales; sin embargo, sigue sin ser práctico crear tablas agregadas para todas las combinaciones de dimensiones/atributos.
  • ROLAP se basa en una base de datos de propósito general para consultas y almacenamiento en caché, por lo que no dispone de varias técnicas especiales empleadas por las herramientas MOLAP (como la indexación jerárquica especial). Sin embargo, las herramientas ROLAP modernas aprovechan las últimas mejoras del lenguaje SQL , como los operadores CUBE y ROLLUP, las vistas de cubo DB2 y otras extensiones SQL OLAP. Estas mejoras en SQL pueden mitigar las ventajas de las herramientas MOLAP .
  • Dado que las herramientas ROLAP se basan en SQL para todos los cálculos, no son adecuadas cuando el modelo contiene muchos cálculos que no se traducen bien a SQL . Algunos ejemplos de estos modelos son la elaboración de presupuestos, la asignación de recursos, la elaboración de informes financieros y otros escenarios.

Rendimiento de ROLAP

En la industria OLAP, ROLAP suele percibirse como una plataforma escalable para grandes volúmenes de datos, pero con un rendimiento de consulta más lento en comparación con MOLAP . La encuesta OLAP , la mayor encuesta independiente sobre los principales productos OLAP, realizada durante 6 años (de 2001 a 2006), ha constatado sistemáticamente que las empresas que utilizan ROLAP reportan un rendimiento más lento que las que utilizan MOLAP, incluso teniendo en cuenta el volumen de datos.

Sin embargo, como ocurre con cualquier encuesta, existen una serie de cuestiones sutiles que deben tenerse en cuenta al interpretar los resultados.

  • La encuesta muestra que las herramientas ROLAP tienen siete veces más usuarios que las herramientas MOLAP dentro de cada empresa. Los sistemas con más usuarios tienden a sufrir más problemas de rendimiento en los momentos de mayor uso.
  • También surge la cuestión de la complejidad del modelo, medida tanto en número de dimensiones como en riqueza de cálculos. La encuesta no ofrece una buena manera de controlar estas variaciones en los datos analizados.

Desventaja de la flexibilidad

Algunas empresas eligen ROLAP porque pretenden reutilizar tablas de bases de datos relacionales existentes; estas tablas a menudo no están diseñadas de forma óptima para su uso en OLAP. La mayor flexibilidad de las herramientas ROLAP permite que este diseño subóptimo funcione, pero el rendimiento se ve afectado. Las herramientas MOLAP, en cambio, obligarían a recargar los datos en un diseño OLAP óptimo.

OLAP híbrido (HOLAP)

La indeseable disyuntiva entre el coste adicional de ETL y el rendimiento lento de las consultas ha hecho que la mayoría de las herramientas OLAP comerciales utilicen ahora un enfoque de "OLAP híbrido" (HOLAP), que permite al diseñador del modelo decidir qué parte de los datos se almacenará en MOLAP y qué parte en ROLAP.

No existe un consenso claro en la industria sobre qué constituye "OLAP híbrido", salvo que una base de datos dividirá los datos entre almacenamiento relacional y especializado. [ 15 ] Por ejemplo, para algunos proveedores, una base de datos HOLAP utilizará tablas relacionales para almacenar grandes cantidades de datos detallados y almacenamiento especializado para al menos algunos aspectos de las cantidades más pequeñas de datos más agregados o menos detallados. HOLAP aborda las deficiencias de MOLAP y ROLAP al combinar las capacidades de ambos enfoques. Las herramientas HOLAP pueden utilizar tanto cubos precalculados como fuentes de datos relacionales.

Particionamiento vertical

En este modo, HOLAP almacena las agregaciones en MOLAP para un rendimiento de consulta rápido y los datos detallados en ROLAP para optimizar el tiempo de procesamiento del cubo .

Particionamiento horizontal

En este modo, HOLAP almacena una porción de datos, generalmente la más reciente (es decir, segmentada por dimensión temporal) en MOLAP para un rendimiento de consulta rápido, y los datos más antiguos en ROLAP . Además, podemos almacenar algunos dados en MOLAP y otros en ROLAP , aprovechando el hecho de que en un cuboide grande habrá subregiones densas y dispersas. [ 16 ]

Productos

El primer producto en ofrecer almacenamiento HOLAP fue Holos , pero la tecnología también estuvo disponible en otros productos comerciales como Microsoft Analysis Services , Oracle Database OLAP Option , MicroStrategy y SAP AG BI Accelerator. El enfoque OLAP híbrido combina las tecnologías ROLAP y MOLAP, aprovechando la mayor escalabilidad de ROLAP y la mayor velocidad de cálculo de MOLAP. Por ejemplo, un servidor HOLAP puede almacenar grandes volúmenes de datos detallados en una base de datos relacional, mientras que las agregaciones se mantienen en un almacén MOLAP independiente. Los servicios OLAP de Microsoft SQL Server 7.0 admiten un servidor OLAP híbrido.

Comparación

Cada tipo tiene ciertas ventajas, aunque existe desacuerdo sobre los detalles de dichas ventajas entre los proveedores.

  • Algunas implementaciones de MOLAP son propensas a la explosión de la base de datos, un fenómeno que provoca que las bases de datos MOLAP utilicen enormes cantidades de espacio de almacenamiento cuando se cumplen ciertas condiciones comunes: un elevado número de dimensiones, resultados precalculados y datos multidimensionales dispersos.
  • MOLAP generalmente ofrece un mejor rendimiento debido a la indexación especializada y las optimizaciones de almacenamiento. MOLAP también requiere menos espacio de almacenamiento en comparación con ROLAP porque el almacenamiento especializado normalmente incluye técnicas de compresión . [ 15 ]
  • ROLAP suele ser más escalable. [ 15 ] Sin embargo, el preprocesamiento de grandes volúmenes es difícil de implementar de manera eficiente, por lo que a menudo se omite. Por consiguiente, el rendimiento de las consultas ROLAP puede verse gravemente afectado.
  • Dado que ROLAP depende en mayor medida de la base de datos para realizar los cálculos, tiene más limitaciones en las funciones especializadas que puede utilizar.
  • HOLAP intenta combinar lo mejor de ROLAP y MOLAP. Generalmente, puede preprocesar rápidamente, escalar bien y ofrecer un buen soporte para funciones.

Otros tipos

Los siguientes acrónimos también se utilizan a veces, aunque no están tan extendidos como los anteriores:

  • WOLAP – OLAP basado en web
  • DOLAP – OLAP de escritorio
  • RTOLAP – OLAP en tiempo real
  • GOLAP – Gráfico OLAP [ 17 ] [ 18 ]
  • CaseOLAP – OLAP semántico sensible al contexto, [ 19 ] desarrollado para aplicaciones biomédicas. [ 20 ] La plataforma CaseOLAP incluye preprocesamiento de datos (por ejemplo, descarga, extracción y análisis de documentos de texto), indexación y búsqueda con Elasticsearch, creación de una estructura de documento funcional llamada Text-Cube, [ 21 ] [ 22 ] [ 23 ] [ 24 ] [ 25 ] y cuantificación de relaciones de categoría de frases definidas por el usuario utilizando el algoritmo central de CaseOLAP.

API y lenguajes de consulta

A diferencia de las bases de datos relacionales , que tenían SQL como lenguaje de consulta estándar y API ampliamente utilizadas como ODBC , JDBC y OLEDB , durante mucho tiempo no existió tal unificación en el mundo OLAP. La primera API estándar real fue la especificación OLE DB para OLAP de Microsoft , que apareció en 1997 e introdujo el lenguaje de consulta MDX . Varios proveedores de OLAP, tanto de servidor como de cliente, la adoptaron. En 2001, Microsoft e Hyperion anunciaron la especificación XML para análisis , que fue respaldada por la mayoría de los proveedores de OLAP. Dado que esta también utilizaba MDX como lenguaje de consulta, MDX se convirtió en el estándar de facto. [ 26 ] Desde septiembre de 2011, LINQ se puede utilizar para consultar cubos OLAP de SSAS desde Microsoft .NET. [ 27 ]

Productos

Historia

El primer producto que realizaba consultas OLAP fue Express, lanzado en 1970 (y adquirido por Oracle en 1995 de Information Resources). [ 28 ] Sin embargo, el término no apareció hasta 1993, cuando fue acuñado por Edgar F. Codd , a quien se ha descrito como "el padre de la base de datos relacional". El artículo de Codd [ 1 ] surgió de un breve trabajo de consultoría que Codd realizó para la antigua Arbor Software (más tarde Hyperion Solutions , y adquirida por Oracle en 2007), como una especie de golpe de marketing.

La empresa había lanzado su propio producto OLAP, Essbase , un año antes. Por consiguiente, las "doce leyes del procesamiento analítico en línea" de Codd hacían referencia explícita a Essbase. Esto generó cierta controversia y, cuando Computerworld se enteró de que Arbor le pagaba a Codd, retiró el artículo. El mercado OLAP experimentó un fuerte crecimiento a finales de la década de 1990, con docenas de productos comerciales que salieron al mercado. En 1998, Microsoft lanzó su primer servidor OLAP , Microsoft Analysis Services , lo que impulsó la adopción generalizada de la tecnología OLAP y la convirtió en una práctica común. 

Comparación de productos

clientes OLAP

Los clientes OLAP incluyen numerosos programas de hojas de cálculo como Excel, aplicaciones web, SQL, herramientas de paneles de control, etc. Muchos clientes permiten la exploración interactiva de datos, donde los usuarios seleccionan las dimensiones y medidas de interés. Algunas dimensiones se utilizan como filtros (para segmentar y analizar los datos), mientras que otras se seleccionan como ejes de una tabla dinámica o un gráfico dinámico. Los usuarios también pueden variar el nivel de agregación (para profundizar o consolidar) de la vista mostrada. Los clientes también ofrecen una variedad de widgets gráficos, como controles deslizantes, mapas geográficos, mapas de calor y más, que se pueden agrupar y coordinar en paneles de control. Una lista extensa de clientes aparece en la columna de visualización de la tabla de comparación de servidores OLAP .

Estructura del mercado

A continuación se muestra una lista de los principales proveedores de OLAP en 2006, con cifras en millones de dólares estadounidenses . [ 29 ]

Código abierto

  • Apache Pinot se utiliza en LinkedIn, Cisco, Uber, Slack, Stripe, DoorDash, Target, Walmart, Amazon y Microsoft para ofrecer análisis escalables en tiempo real con baja latencia. [ 30 ] Puede ingerir datos de fuentes de datos fuera de línea (como Hadoop y archivos planos) así como de fuentes en línea (como Kafka). Pinot está diseñado para escalar horizontalmente.
  • El servidor OLAP Mondrian es un servidor OLAP de código abierto escrito en Java . Admite el lenguaje de consulta MDX , XML para análisis y las especificaciones de interfaz olap4j .
  • Apache Doris es una base de datos analítica en tiempo real de código abierto basada en la arquitectura MPP. Puede soportar tanto escenarios de consultas puntuales de alta concurrencia como análisis complejos de alto rendimiento. [ 31 ]
  • Apache Druid es un popular sistema de almacenamiento de datos distribuidos de código abierto para consultas OLAP, utilizado a gran escala en entornos de producción por diversas organizaciones.
  • Apache Kylin es un sistema de almacenamiento de datos distribuido para consultas OLAP, desarrollado originalmente por eBay.
  • Cubes (servidor OLAP) es otra implementación ligera de código abierto de la funcionalidad OLAP en el lenguaje de programación Python con ROLAP incorporado.
  • ClickHouse es un sistema de gestión de bases de datos (DBMS) orientado a columnas, relativamente nuevo, que se centra en la rapidez de procesamiento y los tiempos de respuesta.
  • DuckDB [ 32 ] es un sistema de gestión de bases de datos SQL OLAP [ 33 ] en proceso .
  • MonetDB es un sistema de gestión de bases de datos relacionales SQL orientado a columnas, de código abierto y consolidado, diseñado para consultas OLAP.

Véase también

Referencias

Citas

  1. 1 2 Codd EF; Codd SB y Salley CT (1993). "Proveer OLAP (Procesamiento Analítico en Línea) a Usuarios-Analistas: Un Mandato de TI" (PDF) . Codd & Date, Inc. Recuperado el 5 de marzo de 2008 .
  2. "Libro Blanco del Consejo OLAP" (PDF) . Consejo OLAP. 1997. Consultado el 18 de marzo de 2008 .
  3. Deepak Pareek (2007). Inteligencia empresarial para las telecomunicaciones . CRC Press. 294 págs. ISBN  978-0-8493-8792-0. Consultado el 18 de marzo de 2008 .
  4. Apostolos Benisis (2010). Business Process Management: A Data Cube To Analyze Business Process Simulation Data For Decision Making . VDM Verlag Dr. Müller eK pp. 204 pp. ISBN  978-3-639-22216-6.
  5. Abdullah, Ahsan (noviembre de 2009). "Análisis de la incidencia de la cochinilla algodonosa en el cultivo de algodón utilizando la herramienta ADSS-OLAP (Procesamiento Analítico en Línea)". Computers and Electronics in Agriculture . 69 (1): 59– 72. Bibcode : 2009CEAgr..69...59A . doi : 10.1016/j.compag.2009.07.003 .
  6. ^ O'Brien , JA y Marakas, GM (2009) . Sistemas de información de gestión (9ª ed.). Boston, MA: McGraw-Hill/Irwin.
  7. Hari Mailvaganam (2007). "Introducción a OLAP: ¡Dividir, analizar y explorar!" . Data Warehousing Review. Archivado del original el 22 de mayo de 2013. Recuperado el 18 de marzo de 2008 .
  8. Williams, C., Garza, VR, Tucker, S, Marcus, AM (1994, 24 de enero). Los modelos multidimensionales amplían las opciones de visualización. InfoWorld, 16(4)
  9. MicroStrategy, Incorporated (1995). "Argumentos a favor de OLAP relacional" (PDF) . Consultado el 20 de marzo de 2008 .
  10. ^ Surajit Chaudhuri y Umeshwar Dayal (1997). "Una descripción general del almacenamiento de datos y la tecnología OLAP". Rec. SIGMOD . 26 (1): 65. CiteSeerX 10.1.1.211.7178 . doi : 10.1145/248603.248616 . S2CID 8125630 .  
  11. Gray, Jim ; Chaudhuri, Surajit; Layman, Andrew; Reichart, Don; Venkatrao, Murali; Pellow, Frank; Pirahesh, Hamid (1997). "Data Cube: {A} Relational Aggregation Operator Generalizing Group-By, Cross-Tab, and Sub-Totals" . J. Data Mining and Knowledge Discovery . 1 (1): 29– 53. arXiv : cs/0701155 . doi : 10.1023/A:1009726021843 . S2CID 12502175. Recuperado el 20 de marzo de 2008 . 
  12. Zhang 2017 , pág. 1.
  13. Jesús, Baquero & Almeida 2011 , 2.1 Funciones descomponibles, págs. error sfn: sin destino: CITEREFJesusBaqueroAlmeida2011 ( ayuda )
  14. Nigel Pendse (27 de junio de 2006). "Arquitecturas OLAP" . Informe OLAP. Archivado del original el 24 de enero de 2008. Consultado el 17 de marzo de 2008 .
  15. 1 2 3 Bach Pedersen, Torben; S. Jensen, Christian (diciembre de 2001). "Tecnología de bases de datos multidimensionales". Computer . 34 (12): 40– 46. Bibcode : 2001Compr..34l..40P . doi : 10.1109/2.970558 . ISSN 0018-9162 . 
  16. Kaser, Owen; Lemire, Daniel (2006). "Reordenamiento de valores de atributos para OLAP híbrido eficiente". Information Sciences . 176 (16): 2304– 2336. arXiv : cs/0702143 . doi : 10.1016/j.ins.2005.09.005 .
  17. "Esta semana en análisis de grafos y entidades" . Datanami . 7 de diciembre de 2016. Consultado el 8 de marzo de 2018 .
  18. "Cambridge Semantics anuncia la compatibilidad de AnzoGraph con Amazon Neptune y bases de datos de grafos" . Database Trends and Applications . 15 de febrero de 2018. Consultado el 8 de marzo de 2018 .
  19. ^ Tao, Fangbo; Zhuang, Honglei; Yu, Chi Wang; Wang, Qi; Cassidy, Taylor; Kaplan, lanza; Voss, Clara; Han, Jiawei (2016). "Resumen multidimensional basado en frases en cubos de texto" (PDF) .
  20. Liem, David A.; Murali, Sanjana; Sigdel, Dibakar; Shi, Yu; Wang, Xuan; Shen, Jiaming; Choi, Howard; Caufield, John H.; Wang, Wei; Ping, Peipei; Han, Jiawei (1 de octubre de 2018). "Minería de frases de datos textuales para analizar patrones de proteínas de la matriz extracelular en enfermedades cardiovasculares" . American Journal of Physiology. Heart and Circulatory Physiology . 315 (4): H910– H924. doi : 10.1152 / ajpheart.00175.2018 . ISSN 1522-1539 . PMC 6230912. PMID 29775406 .   
  21. Lee, S.; Kim, N.; Kim, J. (2014). "Análisis multidimensional y cubo de datos para texto no estructurado y redes sociales". Cuarta Conferencia Internacional IEEE de 2014 sobre Big Data y Computación en la Nube . págs. 761–764 . doi : 10.1109/BDCloud.2014.117 . ISBN  978-1-4799-6719-3. S2CID 229585 . 
  22. Ding, B.; Lin, XC; Han, J.; Zhai, C.; Srivastava, A.; Oza, NC (diciembre de 2011). "Búsqueda eficiente basada en palabras clave para las K celdas principales en un cubo de texto". IEEE Transactions on Knowledge and Data Engineering . 23 (12): 1795– 1810. Bibcode : 2011ITKDE..23.1795D . doi : 10.1109/TKDE.2011.34 . S2CID 13960227 . 
  23. Ding, B.; Zhao, B.; Lin, CX; Han, J.; Zhai, C. (2010). "TopCells: Búsqueda basada en palabras clave de los k documentos agregados principales en un cubo de texto". 2010 IEEE 26th International Conference on Data Engineering (ICDE 2010) . pp. 381–384 . CiteSeerX 10.1.1.215.7504 . doi : 10.1109/ICDE.2010.5447838 . ISBN   978-1-4244-5445-7. S2CID 14649087 . 
  24. Lin, CX; Ding, B.; Han, K.; Zhu, F.; Zhao, B. (2008). "Text Cube: Computing IR Measures for Multidimensional Text Database Analysis". Octava Conferencia Internacional IEEE sobre Minería de Datos de 2008. págs. 905–910 . doi : 10.1109/icdm.2008.135 . ISBN  978-0-7695-3502-9. S2CID 1522480 . 
  25. Liu, X.; Tang, K.; Hancock, J.; Han, J.; Song, M.; Xu, R.; Pokorny, B. (21 de marzo de 2013). Greenberg, AM; Kennedy, WG; Bos, ND (eds.). Computación social, modelado y predicción conductual-cultural: 6.ª Conferencia Internacional, SBP 2013, Washington, DC, EE. UU., 2-5 de abril de 2013, Actas (7812 ed.). Berlín, Heidelberg: Springer. págs. 321–330 . ISBN   978-3-642-37209-4.
  26. Nigel Pendse (23 de agosto de 2007). "Comentario: Guerras de API OLAP" . OLAP Report. Archivado del original el 28 de mayo de 2008. Recuperado el 18 de marzo de 2008 .
  27. "Proveedor de SSAS Entity Framework para LINQ to SSAS OLAP" . Archivado del original el 29 de septiembre de 2011.
  28. Nigel Pendse (23 de agosto de 2007). "Los orígenes de los productos OLAP actuales" . OLAP Report. Archivado del original el 21 de diciembre de 2007. Consultado el 27 de noviembre de 2007 .
  29. Nigel Pendse (2006). "Mercado OLAP" . Informe OLAP. Archivado del original el 30 de marzo de 1997. Recuperado el 17 de marzo de 2008 .
  30. Yegulalp, Serdar (11 de junio de 2015). "LinkedIn llena otro nicho de SQL en Hadoop" . InfoWorld . Recuperado el 19 de noviembre de 2016 .
  31. "Apache Doris" . Github . Comunidad Apache Doris . Consultado el 5 de abril de 2023 .
  32. "Un sistema de gestión de bases de datos SQL OLAP en proceso" . DuckDB . Consultado el 10 de diciembre de 2022 .
  33. Anand, Chillar (17 de noviembre de 2022). "Rastreo común en una computadora portátil: extracción de un subconjunto de datos" . Página de Avil . Recuperado el 10 de diciembre de 2022 .

Fuentes

  • Jesús, Paulo; Baquero, Carlos; Paulo Sergio Almeida (2011). "Una encuesta sobre algoritmos de agregación de datos distribuidos". arXiv : 1110.0725 [ cs.DC ].
  • Zhang, Chao (2017). Función agregada simétrica y asimétrica en computación masivamente paralela (Informe técnico).

Lecturas adicionales

  • Erik Thomsen. (1997). Soluciones OLAP: Creación de sistemas de información multidimensionales, 2.ª edición . John Wiley & Sons. ISBN 978-0-471-14931-6.
  • Ling Liu y Tamer M. Özsu (Eds.) (2009). « Enciclopedia de sistemas de bases de datos» , 4100 págs.,  60 ilustraciones. ISBN 978-0-387-49616-0.