Adrià Lisa

Proyecto

Notas de Data Warehousing

Resumen del primer tema del máster: modelos multidimensionales, OLAP y esquemas star / snowflake / galaxy.

OLAP Data Warehousing SQL

Apuntes del Máster en Ciencia de Datos de la FIB, asignatura Data Warehousing (otoño 2024).

Qué es el modelo de datos multidimensional?

El fundamento del modelo multidimensional es representar la información mediante la dicotomía fact / dimension.

  • El fact es el sujeto de análisis, por ejemplo: Ventas, Estado del pedido, Ratio, etc. Cada dato representa una celda en el interior del cubo.
  • Las dimensions son las diferentes perspectivas de análisis del sujeto, por ejemplo: Fecha, Localidad, Categoría, etc. Cada dimensión es una arista del cubo.

Visión multidimensional de datos

Las dimensiones suelen tener una jerarquía de niveles, por ejemplo: Barrio < Ciudad < País < Continente < TODOS. En el nivel más bajo se encuentran los facts como datos atómicos. Se puede subir de nivel agregando facts hasta alcanzar TODOS.

Comparación con el modelo relacional

Modelo RelacionalModelo Multidimensional
EstructuraTablas relacionadas.Cubos multidimensionales.
NormalizaciónDatos normalizados para reducir redundancia y asegurar integridad.Datos a menudo desnormalizados para mejorar el rendimiento de las consultas.
Operaciones de datosFacilita inserciones y modificaciones.Menos JOINs → consultas más rápidas y más sencillas para el usuario.
UsoTransaccional (OLTP)Análisis (OLAP)

Los DBMS usan internamente el modelo relacional, y después se implementa una capa OLAP intermedia con el modelo multidimensional.

Esquemas multidimensionales

Dos restricciones adicionales sobre el esquema relacional:

  1. Cada tabla contiene información de tipo fact (F) o de tipo dimension (D).
  2. Las relaciones D - F son siempre 1-* (one-to-many): primary keys en la dimensión, foreign keys en la fact.

Star schemas

Una única tabla fact central. Las dimensiones están desnormalizadas: todos los niveles jerárquicos en la misma tabla.

Ejemplo star schema

Snowflake schemas

También hay una fact central, pero las dimension están normalizadas. Se sacrifica rendimiento de consulta a cambio de menos redundancia.

Ejemplo snowflake schema

Galaxy schemas

Varios fact con dimension compartidas. Permite análisis más detallados mediante drill-across.

Ejemplo galaxy schema

Álgebra multidimensional

Siete operaciones fundamentales sobre el cubo de datos. Lo más interesante es cómo se realiza cada una en SQL.

Representación conceptual del álgebra multidimensional