Inicio
 > Informes e investigaciones > Blog de TEC > Análisis en-memoria: un estudio multi-dimensiona...

Análisis en-memoria: un estudio multi-dimensional

Escrito por: Anna Mallikarjunan
Publicado: octubre 6 2010

En mayo de 2010, El Economista publicó una nota sobre el anuncio de SAP de su compra de Sybase y la introducción de la tecnología en-memoria (in-memory) de su próxima versión de Business ByDesign. Aunque el principal mercado del Economista sigue siendo la política y las noticias del mundo, se orienta –por medio de sus lectores– a los más influyentes hombres de negocios. Con los años, esta publicación ha analizado algunas de las tendencias más significativas en los negocios y la tecnología, y es interesante observar que la tecnología en-memoria es ahora una de ellas. La tecnología en-memoria se está extendiendo hacia las superficies de varios sistemas empresariales, ampliando los almacenes de datos, la aplicaciones analíticas, los sistemas de gestión de las bases de datos, los sistemas de middle-tier caching (aplicaciones que recuerdan los datos utilizados con frecuencia en los sistemas distribuidos), y los sistemas de procesamiento de eventos de diferentes fuentes (aplicaciones que manejan múltiples fuentes de datos sobre eventos, como el comercio automatizado en los servicios financieros). La tecnología en-memoria esta minimizando, o incluso eliminando, la posibilidad de un almacén de datos. De hecho, toda aplicación de software que trabaja con grandes volúmenes de datos o realiza intensivos procesos en la memoria se beneficiaría de esta tecnología.

La analítica es la rama de la lógica que se relaciona o usa el análisis. Consecuentemente, el análisis en-memoria constituye todo el análisis realizado con la tecnología en-memoria. Ello puede incluir el análisis multidimensional o los procesos analíticos en línea (OLAP), el análisis estadístico, la minería de datos y de textos. Las aplicaciones analíticas son construidas con frecuencia sobre grandes volúmenes de datos y ello representa una gran presión sobre la memoria. Dichas aplicaciones están ancladas además en complejas estructuras de datos que emulan los modelos empresariales. En la medida en que los modelos empresariales cambian, las estructuras correspondientes de datos deben cambiar también. Todos los cambios estructurales requieren de costosos esfuerzos y tiempo para rediseñar y re-optimizar la estructura. Esta artículo examina como la tecnología en-memoria está transformando OLAP por medio de la convergencia de hardware de bajo costo y alto rendimiento e ideas recursivas en cuanto a software.

Rocas de silicio

La parte de la memoria de la tecnología en-memoria se refiere a los semiconductores basados en silicio que constituyen el material de la memoria de acceso aleatorio (RAM) de los sistemas computacionales. Toda la revolución en-memoria está construida bajo el hecho de que RAM es mucho más rápido que los discos que estan fabricados con material magnético. El acceso a los datos es directo con una memoria basada en semiconductores, mientras el almacenamiento en discos sufre de los embotellamientos inevitables asociados con la velocidad de rotación del disco magnético.

El hardware de bajo costo y alto rendimiento esta posibilitando el movimiento de los sistemas empresariales hacia la arquitectura en-memoria. Una arquitectura 64-bit es fundamental para obtener los beneficios de una solución analítica en-memoria. En teoría, la arquitectura 64-bit apoya hasta 16 exabytes (EB) o 16x106 terabytes (TB); en realidad, sin embargo, la cantidad realmente disponible de memoria es mucho menor. Esto está determinado por el balanceo de los requisitos de la aplicación contra aquellos de entidades de sistemas que son necesarios para la gestión de la memoria. La siguiente tabla ilustra las principales medidas de los sistemas operativos 64-bit de Microsoft:

Funcionalidad de memoria Descripción Limite
Espacio direccionable   La memoria total accesible al sistema operativo. 16TB
Espacio por proceso Memoria disponible para cada aplicación o proceso. Este es el límite aplicable a la aplicación analítica/OLAP 8TB
RAM fisica Memoria basada en semiconductores.  Esto, en adición a la memoria virtual (sobre el disco), constituye el espacio localizable de un sistema.  El RAM físico está limitado por el espacio en el tablero madre. 2TB (Sistema basado en itanium)
1TB (sistema basado en x64)
128GB y menos (la mayoría de las ediciones de Vista, servidor 2003, algunas ediciones del servidor 2008)

Pongan esto en contraste con los sistemas 32-bit que tienen un límite total de 4GB y un límite por proceso de 3GB. Una arquitectura 64-bit puede probablemente permitir a una base de datos 300GB OLAP o data mart residir completamente en la RAM física y un 8TB data mart y completamente direccionable. Es importante tener en cuenta que la memoria disponible para una aplicación analítica depende del espacio por proceso, y a pesar de que ello incluye el espacio para un almacén basado en un disco más lento, todo el espacio por proceso es direccionable y por ende disponible. La mayoría de los proveedores en-memoria incluyen técnicas sofisticadas de compresión para disminuir la brecha entre el volumen de los datos y la memoria física disponible. Ello incluye la escalabilidad (y por lo tanto la capacidad de adaptarse al creciente volumen de datos) y hace posible la opción de en-memoria dentro de ambientes donde aún no hay disponibilidad de grandes cantidades de memoria física.

En memoria multidimensional

La aplicaciones que funcionan con datos que residen completamente en la memoria son mucho más simples de escribir que aquellos que deben tomar la información del disco. Por ejemplo, los algoritmos de uso del caché (programas que permiten que los datos utilizados con frecuencia sean almacenados en la memoria física para mejorar el rendimiento) son algunas de las piezas de código más complejas de escribir, mantener e incluso de utilizar efectivamente. Por medio del almacenamiento de todos los datos relevantes en la memoria, la arquitectura en-memoria elimina la necesidad de dichos algoritmos.

La perspectiva en-memoria tiene en cuenta dos problemas importantes del OLAP convencional: Los requisitos de espacio del disco y la entrada/salida (input-output, I/O). Tradicionalmente, los datos multidimensionales para el análisis son almacenados en el disco duro como estructuras especiales, comúnmente conocidas como cubos. Los cubos presentan una perspectiva multidimensional de una empresa y normalmente están construidos para varias fuentes de datos. En la medida en que crece el volumen de los datos, los requisitos de almacenamiento de los cubos también crece. El rompecabezas de los cubos tiene dos piezas: Los procesos de actualizaciones (procesos periódicos para mantener los cubos actualizados bien sea por día, hora o incluso a una granularidad de tiempo mucho más pequeña dependiendo de los requisitos de latencia); y búsquedas (operaciones que permiten a los usuarios el análisis de datos en cubos). El procesamiento periódico de los cubos involucra costosas operaciones I/O que leen los datos de las fuentes y escriben los datos en el disco. Los motores de búsqueda de los sistemas tradicionales OLAP también incurren en costos de operaciones I/O para leer y cache. Una solución en-memoria, por el otro lado, elimina ambos completamente: los requisitos de espacio del disco y los cuellos de botella I/O.Todas las fuentes de datos necesarias para crear datos analíticos multidimensionales son traídas a la memoria principal o RAM. Las búsquedas complejas (ambas relacionales y multidimensionales) corren más rápido cuando los datos están en RAM.

El análisis en-memoria toma en cuenta otro aspecto importante de OLAP –las pre-agregaciones. El análisis multidimensional necesita que los datos estén disponibles a través de múltiples dimensiones empresariales. Por ejemplo, debe ser posible el análisis de las ventas por región, tiempo y vendedor (representante de ventas). Para reducir la sobrecarga que involucra la agregación de datos cada vez que se realiza un análisis, una base de datos OLAP incluye las pre-agregaciones. Un porcentaje importante del tiempo de procesamiento, particularmente con OLAP (MOLAP) multidimensional, se va en la computación de pre-agregados. Con el análisis en-memoria, la agregación se hace en el momento y no requiere ningún pre-procesamiento.

Existen dos tipos principales de OLAP y es importante comprender como la arquitectura en-memoria los afecta a ambos.

  1. OLAP (MOLAP) multidimensional: en los sistemas tradicionales MOLAP, los datos para el análisis son almacenados en el disco duro y están basados en un modelo dimensional. Cada cambio a la estructura implica una completa reconstrucción de los objetos (cubos y dimensiones) afectados por dicho cambio. Mientras aún está basado en los almacenes de datos o data mart construidos utilizando el modelado dimensional, el MOLAP en-memoria no necesita ningún procesamiento mientas los cubos están siendo construidos en el momento y subidos completamente en la memoria. La carga de datos es realizada utilizando una herramienta de integración/extracción-transformación-carga (ETL) de datos. Las agregaciones se calculan en base a las búsquedas presentadas el servidor MOLAP en-memoria. Las búsquedas se corren contra los datos en la memoria y consecuentemente, los tiempos de respuesta son muy bajos, mejorando la experiencia del usuario.

  2. OLAP (ROLAP) relacional: el ROLAP tradicional involucra una dimensión de almacenamiento, hechos y datos agregados en bases de datos relacionales. Una base de datos o ROLAP está diseñada para satisfacer las necesidades del análisis multidimensional. Las implementaciones de ROLAP en-memoria realmente combinan el poder de MOLAP en-memoria y ROLAP. No todos los datos son cargados en la memoria. En su lugar, grupos de datos son guardados (cached) basados en la frecuencia de uso. Los datos que no están disponibles en la memoria son recuperados de los almacenes relacionales y pueden ser guardados (cached) por el sistema de análisis en-memoria para su uso futuro.

Innovaciones en-memoria

La arquitectura en-memoria pavimenta el sendero para ingeniosos métodos en el análisis. Además de las perspectivas tradicionales en OLAP, la alternativa en-memoria ha llevado a varios paradigmas nuevos. El análisis en-memoria fue encabezado por la tecnología asociativa de QlikTech utilizada en su producto, QlikView. Las funcionalidades ETL permiten que los usuarios combinen datos desde varias fuentes en la memoria. QlikView descubre asociaciones entre entidades de datos al momento de preparar los datos para el análisis y crea una plataforma descentralizada donde cada usuario puede tomar control total sobre los datos necesarios para el análisis. Ello contrasta la aproximación tradicional de BI con su almacén de datos centralizado que sirve a toda la organización y fuerza la utilización de una sola definición de medidas y dimensiones en toda la organización. Sin embargo, la proliferación de fuentes de datos a través de la mayoría de las organizaciones y la demanda para tomar decisiones rápidas ha resultado en el costoso mantenimiento de los almacenes de datos y las bases de datos OLAP especializadas. Una solución pura de análisis en-memoria como QlikView provee una alternativa disponible y receptiva al OLAP tradicional.

PowerPivot de Microsoft también ofrece una solución OLAP descentralizada. Conocido como un sistema BI personal, es complementario al Servicio de Análisis, el cual representa un sistema BI organizacional. PowerPivot utiliza una instancia en-memoria del Servicio de Análisis para apoyar varias funciones de OLAP en el ordenador de escritorio del usuario. La base de datos PowerPivot está contenida dentro de un archivo Excel (.xlsx). El motor en-proceso PowerPivot importa datos de varias fuentes y puede descubrir automáticamente relaciones para ciertos tipos de fuentes de datos.

Aún en desarrollo, el motor de análisis empresarial en-memoria de SAP le apunta a proveer una poderosa combinación de herramientas (un motor de cálculos, herramientas de modelado de datos y herramientas de gestión de datos) para crear una sola plataforma en-memoria donde se puede realizar análisis en tiempo real de los datos de diferentes fuentes operacionales, almacenes de datos y los sistemas basados en la Web serán posibles. SAP intenta entregar dicho producto con hardware optimizado que se conectará con los sistemas TI para descubrir datos y prepararlos para un análisis en tiempo real, sin interrumpir ninguna operación en curso de los sistemas.

SAP además provee una solución que maximiza el uso de la tecnología de servidor apropiada. Utilizando la tecnología BladeSystem de HP, SAP provee una solución analítica en memoria donde se dedican servidores individuales a aplicaciones o procesos analíticos específicos. La solución está orientada hacia complejos ambientes computacionales donde las tareas pueden correr en paralelo para una mayor eficiencia.

Conclusión

Las organizaciones han invertido bastante tiempo y recursos en construir plataformas BI. ¿Cómo pueden ellos incrementar o remplazar sus soluciones existentes con las alternativas en-memoria? La respuesta depende enteramente en la naturaleza de la solución existente en la organización, de las opciones ofrecidas por los proveedores en el mercado, y la flexibilidad en términos de mezclar las soluciones de diferentes proveedores. También depende de las tecnologías dentro de la gama de BI, muchas de las cuales se están convirtiendo a en-memoria. El valor de los almacenes de datos tradicionales con estrategias de calidad de datos y una plataforma organizacional centralizada, es aún muy alto. Sin embargo, hay varias partes de la plataforma que migrar hacia una arquitectura en-memoria. Los informes que se deben realizar cerca del tiempo real y cálculos que requieren del uso intensivo de la memoria, obtendrán grandes beneficios de una solución de alto rendimiento en-memoria. La mayoría de los proveedores ofrecen formas de pasar de sus soluciones actuales a las soluciones en-memoria, pero las organizaciones deben examinar estas formas en términos de su impacto total. El auto-servicio o BI personal puede ser una poderosa adición a la plataforma de una organización, permitiendo a los usuarios realizar análisis de alto rendimiento sobre datos, en tiempos cercanos al real o realizar análisis de escenarios simulados a la velocidad del pensamiento.

 
comments powered by Disqus

Búsquedas recientes:
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z Others