En la práctica, cuando normalizamos un modelo de datos tendemos a dejar la información que va a permitirnos calcular métricas de negocio (aquella información que va a determinar la evolución de la empresa) en tablas específicas para ello, y a llevar la información que nos va a permitir segmentar dichas métricas a otras tablas. Las primeras son las llamadas tablas de hechos, y las segundas, tablas de dimensiones.
Ejemplos de tablas de hechos pueden ser aquellas tablas con información sobre las ventas que realizamos, sobre las entradas y salidas de material de nuestros almacenes, o sobre las llamadas que el equipo de soporte de nuestra empresa recibe de los clientes. Estas son tablas que, normalmente, van a cambiar con mucha frecuencia.
Por el contrario, ejemplos de tablas de dimensiones pueden ser la tabla de fechas (que nos permitirá segmentar nuestras ventas por períodos temporales), la tabla de clientes (que nos permitirá segmentar las llamadas que recibe el equipo de soporte según el estado civil del cliente, de su sexo, de su edad…) o la tabla con información geográfica, que nos permitirá desagregar las llegadas de material a nuestros almacenes por país, o por región, por ejemplo.
En el modelo de datos normalizado al que hemos llegado tenemos una tabla de hechos (la de ventas) y dos tablas de dimensiones: la de clientes y la de productos.
Obsérvese que la tendencia natural es que en las tablas de hechos haya información numérica, y en las tablas de dimensiones información categórica o textual.
Las tablas de dimensiones no tienen por qué ser estrictamente estáticas. Se califica de Slow Changing Dimensions a aquellas dimensiones que pueden cambiar lentamente.