Almacenamiento en SSAS 08 R2 Rubén Pertusa López SolidQ Data Platform Engineer – Business Intelligence Area Microsoft Certified Technology Specialist rpertusa@solidq.com
Agenda ¿Qué vamos a ver? Introducción al almacenamiento en SSAS Conceptos previos Demostración: Modificando nuestro modo de almacenamiento Tipos de almacenamiento: MOLAP, ROLAP, HOLAP Demostración: Modos de almacenamiento en SSAS Comparativa Caché Proactiva Demostración: Implementando la Caché Proactiva Conclusiones Preguntas
Objetivos de la sesión ¿Qué vamos a aprender? Conocer cada uno de los modos de almacenamiento que nos ofrece Analysis Services 2008 R2 y cómo funcionan. Plantear las ventajas e inconvenientes para decidir los que mejor se ajustan a nuestro escenario.
Introducción Diseñando equilibradamente Tiempo de resolución de consultas vs Tiempo de actualización de los datos Espacio necesario para el almacenamiento de datos
Arquitectura General de SSAS Aplicación Cliente Consulta MDX Administrador de sesión Motor de consultas Motor de almacenamiento Analysis Services 2008 R2
Conceptos previos Agregaciones Latencia Información pre-calculada de los datos Mejora el rendimiento de las consultas Aprovecha las relaciones naturales de los atributos de la dimensión Latencia Tiempo que tarda en estar visible la información para los usuarios Fundamental para la elección de nuestro modo de almacenamiento
Conceptos previos Particiones Unidad de almacenamiento físico de SSAS Mejoras en rendimiento Mejora eficientemente la gestión de nuestros cubos Permite la asignación de un diseño de agregaciones específico Permite la asignación de un modo de almacenamiento específico Grupo de medidas Ventas por Internet Ventas 2008 Ventas 2009 Ventas 2010 Ventas 2011
Modificando los modos de almacenamiento de nuestras particiones
Modos de almacenamiento Particiones MOLAP ROLAP HOLAP Dimensiones
MOLAP Multidimensional OLAP (MOLAP) Almacenamiento en la BD Multidimensional de: Agregaciones Información de detalle Arquitectura optimizada para consultas, cálculos complejos y compresión Modo de almacenamiento por defecto
MOLAP Funcionamiento Data Warehouse SQL SERVER 08 R2 SSAS 08 R2 Procesamiento Detalle + Agregaciones Resultado Consulta MDX Agregaciones Detalle Nuevos datos Acceso de Usuarios
MOLAP Ventajas Inconvenientes: No necesita de una conexión continua con el Data Warehouse Permite comprobar la integridad de la información en el momento del procesado Consultas más rápidas Inconvenientes: Duplicidad de la información ( en Relacional y en Multidimensional) Incremento del espacio necesario para el almacenamiento Latencia muy alta
ROLAP Relational OLAP (MOLAP) Almacenamiento en la BD Relacional de: Agregaciones Información de detalle Arquitectura orientada a las transacciones. Escrituras y modificaciones Las agregaciones se forman mediante vistas indexadas
ROLAP Funcionamiento Data Warehouse SQL SERVER 08 R2 SSAS 08 R2 Resultado Consulta MDX Agregaciones Detalle Nuevos datos Acceso de Usuarios
ROLAP Ventajas Inconvenientes: Latencia muy baja Información no duplicada Inconvenientes: Identificación manual de la propiedad «Slice» Complejidad a la hora de crear agregaciones (vistas indexadas) e incremento de espacio No aprovecha agregaciones existentes sobre atributos relacionados de forma natural No se puede comprobar la integridad de la información Conexión continua al sistema transaccional Rendimiento bajo (necesidad de un performance tuning)
HOLAP Hybrid OLAP (MOLAP) Almacenamiento en la BD Multidimensional de: Agregaciones Almacenamiento en la BD Relacional de: Información de detalle
HOLAP Funcionamiento Data Warehouse SQL SERVER 08 R2 SSAS 08 R2 Resultado Procesamiento Agregaciones Consulta MDX Agregaciones Detalle Nuevos datos Acceso de Usuarios
HOLAP Ventajas Inconvenientes: Rendimiento de consultas sobre agregaciones Decremento del espacio necesitado Inconvenientes: Rendimiento de consultas sobre información detallada Necesaria una conexión continua al sistema relacional Información errónea si no se actualizan las agregaciones con respecto a la información detallada.
Utilizando los diferentes modos de almacenamiento
Comparativa Escenario de ejemplo MOLAP Año Actual Año Anterior HOLAP Modo Detalle Agregaciones Espacio requerido Procesamiento de las consultas Tiempo de procesamiento Latencia MOLAP BD MultiDim. Medio Rápido Alta HOLAP BD Relacional Pequeño Media ROLAP Grande Lento Baja Escenario de ejemplo Año Actual MOLAP Año Anterior HOLAP Histórico 10 años ROLAP
Caché Proactiva ¿Pensando en tiempo real? Combinando dos mundos: Mejorando la latencia, BI en tiempo real Para Dimensiones y Particiones (MOLAP, ROLAP, HOLAP) Orientado a escenarios donde la frecuencia de actualización no es fácilmente previsible o de intervalos cortos Detección automática de cambios en datos mediante notificaciones. NO cambios de estructura
Caché Proactiva Parámetros Intervalo de Silencio (Silence Interval o SI): Intervalo de tiempo que espera SSAS desde que le llega la primera notificación de cambio de datos hasta que actualiza la caché, siempre y cuando no lleguen nuevos cambios (se resetea el contador).
Caché Proactiva Parámetros Anulación del Intervalo de Silencio (Silence Override Interval o SOI): Tiempo máximo que puede estar reseteándose el contador del Intervalo de Silencio desde la primera notificación de cambio. Latencia (L): Tiempo máximo para considerar la caché desactualizada. Se dirigen las consultas al sistema relacional mientras se recrea la caché.
Caché Proactiva Configuraciones por defecto Latencia Modo Especificación Parámetros Tiempo Real ROLAP Con notificaciones de cambios. Las consultas reflejan el estado real del dato. SI: -1 SOI: NA L: 0s Forzar: -1 HOLAP SI: 0s SOI: NA L: -1 Forzar: -1 Bajo MOLAP Con notificaciones de cambios. Caché obsoleta a los 30 min. SI: 10s SOI: 10m L: 30m Forzar: -1 Medio Con notificaciones de cambios. Caché obsoleta a las 4h. L: 4h Forzar: -1 Automático Con notificaciones de cambios. Procesado automático cuando hay cambio. Agendado Sin notificaciones de cambios. Procesado automático cada 24h. SI: -1 SOI: -1 L: -1 Forzar:24h Indefinido Sin notificaciones de cambios. Procesado manual necesario. - SI: Intervalo de Silencio L: Latencia SOI: Anulación del Intervalo de Silencio Forzar: Forzar reconstrucción de cache
Implementando Caché Proactiva
Conclusiones En resumen Analysis Services soporta múltiples mecanismos para gestionar los datos, desde los históricos casi no consultados hasta datos actuales Necesidad de conocer al detalle los requisitos de nuestros usuarios Necesidad de conocer internamente Analysis Services 2008 R2 Ajustar nuestro proyecto de Analysis Services con esa información para conseguir el mejor rendimiento en el menor tiempo de consulta.
Rubén Pertusa López SolidQ Data Platform Engineer – Business Intelligence Area Microsoft Certified Technology Specialist rpertusa@solidq.com
Rubén Pertusa López SolidQ Data Platform Engineer – Business Intelligence Area Microsoft Certified Technology Specialist rpertusa@solidq.com