Los agregados se utilizan en modelos dimensionales del almacén de datos para producir efectos positivos en el tiempo que lleva consultar grandes conjuntos de datos . En la forma más simple, un agregado es una tabla de resumen simple que se puede derivar realizando una consulta Group by SQL. Un uso más común de los agregados es tomar una dimensión y cambiar la granularidad de esta dimensión. Al cambiar la granularidad de la dimensión, la tabla de hechos debe resumirse parcialmente para adaptarse al nuevo grano de la nueva dimensión , creando así una nueva dimensión.y tablas de hechos, que se ajustan a este nuevo nivel de grano. Los agregados a veces se denominan datos de resumen precalculados, ya que los agregados suelen ser datos precalculados, parcialmente resumidos, que se almacenan en nuevas tablas agregadas. Cuando los hechos se agregan, se hace eliminando la dimensionalidad o asociando los hechos con una dimensión acumulada. Las dimensiones enrolladas deben ser versiones reducidas de las dimensiones asociadas con los hechos base granulares. De esta forma, las tablas de dimensiones agregadas deben ajustarse a las tablas de dimensiones base. [1] Entonces, la razón por la que los agregados pueden lograr un aumento tan dramático en el rendimiento del almacén de datos es la reducción del número de filas a las que se accede cuando se responde a una consulta. [2]
Ralph Kimball , que es ampliamente considerado como uno de los arquitectos originales del almacenamiento de datos, dice: [3]
La forma más dramática de afectar el rendimiento en un gran almacén de datos es proporcionar un conjunto adecuado de registros agregados (resumidos) que coexistan con los registros de base primarios. Los agregados pueden tener un efecto muy significativo en el rendimiento, en algunos casos acelerando las consultas en un factor de cien o incluso mil. No existe ningún otro medio para cosechar ganancias tan espectaculares.
Tener agregados y datos atómicos aumenta la complejidad del modelo dimensional. Esta complejidad debe ser transparente para los usuarios del almacén de datos, por lo tanto, cuando se realiza una solicitud, el almacén de datos debe devolver los datos de la tabla con el grano correcto. Por lo tanto, cuando se realizan solicitudes al almacén de datos, se debe implementar la funcionalidad del navegador agregado para ayudar a determinar la tabla correcta con el grano correcto. El número de posibles agregaciones está determinado por cada combinación posible de granularidades de dimensión. Dado que generaría todas las agregaciones posibles generaría una gran sobrecarga, es una buena idea elegir un subconjunto de tablas en el que realizar las agregaciones. La mejor manera de elegir este subconjunto y decidir qué agregaciones construir es monitorear las consultas y diseñar agregaciones para que coincidan con los patrones de consulta. [4]
Tener datos agregados en el modelo dimensional hace que el entorno sea más complejo. Para hacer que esta complejidad adicional sea transparente para el usuario, la funcionalidad conocida como navegación agregada se utiliza para consultar las tablas de hechos y dimensiones con el nivel de grano correcto. La navegación agregada esencialmente examina la consulta para ver si se puede responder utilizando una tabla agregada más pequeña. [5]
Las implementaciones de navegadores agregados se pueden encontrar en una variedad de tecnologías:
- Motores OLAP
- Vistas materializadas
- Servicios OLAP relacionales ( ROLAP )
- Servidores de aplicaciones de BI o herramientas de consulta
En general, se recomienda utilizar cualquiera de las tres primeras tecnologías, ya que los beneficios en el último caso se limitan a una única herramienta de BI de interfaz de usuario [6]
Problemas / desafíos
- Dado que los modelos dimensionales solo se benefician de los agregados en grandes conjuntos de datos, ¿a qué tamaño de los conjuntos de datos debería uno comenzar a considerar el uso de agregados?
- De manera similar, ¿un almacén de datos siempre maneja conjuntos de datos que son demasiado grandes para consultas directas o, a veces, es una buena idea omitir las tablas agregadas al comenzar un nuevo proyecto de almacén de datos? Por lo tanto, ¿la omisión de agregados en la primera iteración de la construcción de un nuevo almacén de datos hará que la estructura del modelo dimensional sea más simple?
Referencias
- ^ Ralph Kimball; Margy Ross (2002). El kit de herramientas de almacenamiento de datos: la guía completa para el modelado dimensional (segunda edición). Wiley Computer Publishing. pag. 356. ISBN 0-471-20024-7.
- ^ Christopher Adamson, Mastering Data Warehouse Aggregates: Solutions for Star Schema Performance , Wiley Publishing, Inc., 2006 ISBN 978-0-471-77709-0 , página 23
- ^ "Navegación agregada sin (casi) metadatos" . 1995-08-15. Archivado desde el original el 11 de diciembre de 2010 . Consultado el 22 de noviembre de 2010 .
- ^ Kit de herramientas de Kimball & Data Warehouse , p. 355.
- ^ Kit de herramientas de Kimball & Data Warehouse , p. 137.
- ^ Kit de herramientas de Kimball & Data Warehouse , p. 354.