Componentes del modelado dimensional – Hechos

Antes, y como inicio de esta serie sobre Modelado Dimensional, vimos algunas definiciones de Data Warehouse como centro del Modelado dimensional.

Para ilustrar esta serie, voy a apoyarme en la familia de Bases de datos AdventureWorks de Microsoft, en algunos casos trabajaremos con el modelo relacional transaccional y en otros, como ahora con el multidimensional. La diferencia está en que el último termina en DW, que significa Data Warehouse, así que les propongo entrar en materia.

Vamos a resumir, y mucho !!! :), sobre este tema, apenas diremos que  para el Modelado dimensional contamos con dos componentes fundamentales: hechos y dimensiones. Hoy vamos a hablar un poco sobre el primer componente.

Los hechos son los elementos que contienen medidas asociadas con un proceso de negocio específico. Las medidas numéricas cuantifican la magnitud del evento dentro de ese proceso de negocio. Estos números son hechos (o medidas si hablamos de SSAS), la mayoría son en mayor o menor cuantía agregables. Los hechos son números; pero no todos los números son hechos, hay números descriptivos que se encuentran en las dimensiones, como pueden ser: edad, tamaño, peso.

Por ejemplo, veamos qué columnas contiene una tabla de hechos de AdventureWorksDW. Esta tabla, FactInternetSales, contiene los hechos de las ventas.

Vamos a centrarnos en los distintos grupos de columnas .

Métricas del negocio

En primer lugar, nos quedamos con el grupo que está integrado por aquellas columnas que guardan los hechos del negocio. En la tabla, con la excepción de 3 columnas, el resto son columnas numéricas, aunque todas las numéricas no son necesariamente de negocio. Nos referimos en este caso a las columnas que representan las cantidades, las métricas del proceso que estamos diseñando. En el caso de la tabla FactInternetSales son:

En el proceso de modelado veremos si podemos obtener los hechos del origen de datos o si hay que obtenerlos mediante expresiones de cálculo. Veamos algunas de las múltiples opciones de obtención de columnas derivadas o cálculos adicionales que podemos encontrar, por ejemplo con herramientas de Modelado Multidimensional, Tabular o de Modelado y consumo, específicamente MS Excel.

Hechos derivados de las métricas de negocio

Estos hechos derivados podemos calcularlos en el momento del diseño del Data Warehouse o dejarlo para más adelante en algún momento del diseño del Modelo Multidimensional.

  • Puede ser la creación de cubos OLAP con SSAS, en la Vista de origen de datos.

  • Es posible obtener Expresiones de Medida para crear cálculos adicionales que incrementen las funcionalidades, más allá de los agregados integrados. Aunque existen determinadas limitaciones para crear estas expresiones, lo importante es que existe esta posibilidad desde la ventana Propiedades de las Medidas en la ficha Estructura del cubo del Diseñador de cubo OLAP en un proyecto SSAS Multidimensional con Data Tools de SQL Server 2012

 

  • Puede ser también, a través de cálculos MDX, en la ficha Cálculos del Diseñador de cubo OLAP en un proyecto SSAS Multidimensional con Data Tools de SQL Server 2012

  • Otra posibilidad es emplear DAX desde PowerPivot con MS Excel o Modelo Tabular con un proyecto SSAS Multidimensional con Data Tools de SQL Server 2012 .

  • Como es lógico siempre quedará la posibilidad de emplear las funcionalidades de la herramienta que se utilice para la creación de informes que consuman el modelo, ya sea Dimensional o Multidimensional.
  • Desde la Lista de campos de PowerPivot en MS Excel, para una tabla dinámica, vemos aquellas columnas que son medidas o Indicadores Clave de Rendimientos, KPIs.

  • Desde el menú de MS Excel, específicamente la ficha PowerPivot, tenemos dos grupos Medidas y KPI para permitirnos obtener hechos derivados, en forma de Medidas y KPIs.

Aunque todas estas opciones existen y son válidas, lo recomendado es realizar todas las modificaciones posible en el proceso de creación del DW, ya que cuanto antes en el modelo tengamos previsto y calculado los hechos derivados, mejor para el modelo y para su posterior mantenimiento y utilización. Un DW bien diseñado es un excelente orígen de datos para cubos OLAP, MS Excel tablas dinámicas y PowerPivot y cualquier herramienta de informes que consuma datos relacionales SQL Server como puede ser SQL Server Reporting Services.

Entonces, durante el modelado del Data Warehouse, para los hechos seleccionamos columnas numéricas que contengan las medidas. Estos elementos se modelan, agregados a un determinado nivel. Sobre el nivel de agregación de los hechos o Granularidad, hay opiniones para todos los gustos, según sea el caso debemos crear tablas con nivel más bajo, atómico de detalle, lo que nos permite subir al resto de los niveles.

Claves de acceso a Dimensiones

Además de las medidas, otro grupo de columnas que encontramos son, las claves de acceso a las dimensiones asociadas, a las que nos dedicaremos en otro momento, aunque hoy vamos a mostrarlas.

Las relaciones que se deben crear entre las tablas de hecho y de dimensiones tienen que quedar correctamente definidas en la Base de datos Data Warehouse. Veamos ejemplos de estas restricciones en la tabla FactInternetSales .

Columnas descriptivas no numéricas

El tercer, y último grupo de columnas, las que no son de tipo numérico, son columnas descriptivas que constituyen una excepción prevista dentro de estos Modelos dimensionales, ya lo detallaremos

Las tablas de hecho, por tanto son muy eficientes, altamente normalizadas, sin redundancias, son las más largas del modelo, pueden ocupar hasta el 95%.

En la próxima entrada vamos a comentar aspectos de las Dimensiones como segundo componente fundamental del Data Warehouse y Modelado Dimensional.

Deja una respuesta

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Salir /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Salir /  Cambiar )

Conectando a %s

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.