
Modelado Dimensional
En esta etapa se debe pasar de un modelo Relacional de datos a un modelo dimensional, para lo cual se deben identificar las dimensiones, los hechos y el modelo a utilizar. Para determinar los campos contenidos en estas es recomendable considerar los siguientes ítems:
• Tabla de Dimensiones:
* Debe contener una clave simple no relacionada con la llave del negocio, normalmente se refiere a llaves auto numéricas.
* Sus campos deben ser descriptores que complementen la información y representan los niveles de agregación.
* Debe incluir las claves del negocio.
* Siempre debe existir una dimensión temporal.
* Deben ser claras y explicitas ya que representan la interfaz que tendrán los usuarios para navegar por la información.
* No se debe escatimar en cuanto al número de atributos para la tabla de dimensiones, ya que el numero de registros que contendrá es mínimo respecto al de la tabla de hechos.
* Las dimensiones de fechas pueden tener diversas formas de representarse.
* El numero de dimensiones depende del modelo dimensional adoptado, pero si se encuentra un numero muy elevado puede ser que algunas no son independientes y deberían agruparse.
* En algunos casos se requiere normalizar las dimensiones, generándose un modelo copo de nieve.
* Deberían ayudar a responder las siguientes preguntas: ¿qué?, ¿quién?, ¿por qué?, ¿dónde? y ¿cuándo?
• Tabla de Hechos
* Debe contener una clave propia, independiente de las claves de negocio.
* Los campos representan las métricas, por lo tanto son numéricos y aditivos (no se almacenan valores individuales, solo totales y subtotales)
* Contiene los campos de referencia hacia las tablas de dimensiones.
* Cada fila corresponde a una medida o Si se requiere calcular porcentajes y proporciones deben almacenarse el numerador y el denominador.
* No tienen valores nulos.
* Existen algunas tablas sin hechos (FactLess) que se utilizan para relacionar las dimensiones y deben contener un campo de hecho ficticio con valor por defecto igual a uno (1).
El nivel de detalle con el que se debe construir el modelo depende de las preguntas que se quieran responder, aunque lo mejor es utilizar el máximo nivel de detalle, teniendo en cuenta el espacio disponible en la bodega de datos, también es necesario considerar que cada nivel de agregación hace que se pierda parte de la información.