2.2 · Esquema estrella: hechos y dimensiones

Nivel 2 · Modelo y DAX

2.2Esquema estrella: hechos y dimensiones

Objetivo: Reconocer hechos y dimensiones en sus datos y remodelar una «tabla única» en estrella — la arquitectura que soportará todo el DAX.
Tiempo estimado: 18 min · lectura autónoma · Si solo tienes 5 min: lee «Lo esencial en 30s» + el esquema.

Lo esencial en 30 segundos

  • Hechos = lo que se mide (ventas, pedidos: muchas filas, importes); dimensiones = por lo que se analiza (productos, clientes, fechas: rótulos).
  • El esquema estrella coloca la tabla de hechos en el centro y las dimensiones alrededor, vinculadas en 1:* — es LA regla de arquitectura de Power BI.
  • No es estética: la estrella hace el DAX más simple, el rendimiento mejor y los informes más fiables; la tabla única es un antimodelo.

Mini-caso continuo — Zineb rompe su tabla única en estrella

Zineb, controladora de gestión en una pyme agroalimentaria de Argel, ha amontonado todo en una sola tabla grande «Ventas»: ciudad, comercial, producto e importes mezclados. Aplica la regla: distingue los hechos (importe, cantidad) de las dimensiones (ciudad, comercial, producto), y luego fabrica en Power Query la dimensión Comerciales (duplicar la consulta, quedarse con la columna, eliminar los duplicados) y lo mismo con Ciudades y Productos. En los hechos, solo conserva las claves y las medidas, vincula cada dimensión en 1:* y dispone su estrella en la vista Modelo. Anota el reflejo: definir y mantener la granularidad (una fila = una venta, en todas partes).

Caso autónomo de esta sección: reaparece en el curso, el esquema, el guion y el reto de 48 h de la sección 2.2.

1. Hechos y dimensiones

El esquema estrella es LA regla de arquitectura de Power BI, martilleada por Microsoft: en el centro, la tabla de hechos (los acontecimientos medibles — ventas, pedidos; muchas filas, importes); alrededor, las dimensiones (los ejes de análisis — productos, clientes, fechas; pocas filas, rótulos). Cada dimensión apunta a los hechos en uno a varios: el dibujo forma una estrella. Zineb retiene la frase clave: hechos = lo que se mide; dimensiones = por lo que se analiza.

2. Por qué la estrella

No es estética: la estrella hace el DAX más simple, el rendimiento mejor y los informes más fiables. Al contrario, la tabla única — todo en una tabla grande — «funciona» al principio, y luego el DAX y el rendimiento se degradan. Zineb invierte una hora de modelado que le ahorrará días.

3. Fabricar las dimensiones

Una dimensión tiene una fila por elemento, sin duplicado; Power Query las fabrica en tres clics (duplicar la consulta, quedarse con la columna, eliminar los duplicados). También se define la granularidad de los hechos — una fila = una venta, en todas partes — y nunca se mezcla. Zineb solo conserva en los hechos las claves hacia las dimensiones y las medidas.

Error frecuente de interpretación: «Mi tabla única funciona muy bien, mantengo los rótulos en los hechos y una dimensión puede contener duplicados». No, triple error. La tabla única es un antimodelo: complica el DAX, degrada el rendimiento y fragiliza los informes — la estrella es el remedio. Se separan hechos y dimensiones en lugar de mezclar todo. Y una dimensión tiene una fila por elemento, sin duplicado, o la relación 1:* se rompe.
El esquema estrella Hechos en el centro, dimensiones alrededor, cada dimensión vinculada en 1:*. Tabla de hechosAcontecimientos medibles (ventas) — claves + valores+DimensionesEjes de análisis (productos, clientes, fechas)+Relaciones 1:*Cada dimensión → los hechos DAX simple, rendimiento y fiabilidad dependen de ella: la estrella no es opcional.
Hechos en el centro, dimensiones alrededor, cada dimensión vinculada en 1:*.
Versión en texto del esquema (SEO / lectores de pantalla / traducción): 1) Zineb, controladora de gestión en Argel, distingue los hechos (lo que se mide: importe, cantidad) de las dimensiones (por lo que se analiza: ciudad, comercial, producto), porque todo el modelado cabe en esa frase. 2) Fabrica las dimensiones en Power Query — duplicar la consulta, quedarse con la columna, eliminar los duplicados — y solo deja en los hechos las claves y las medidas. 3) Dispone su estrella: hechos en el centro, dimensiones alrededor, cada dimensión vinculada en 1:*, manteniendo la granularidad (una fila = una venta, en todas partes). Lección: la estrella no es opcional — DAX simple, rendimiento y fiabilidad dependen de ella.

🔎 Ejemplo concreto — 🔎 Ejemplo concreto — Crear una dimensión

Zineb extrae la dimensión Comerciales en tres clics:

En Power Query, a partir de Ventas:
  duplicar la consulta → quedarse con Comercial → Eliminar los duplicados
→ dimensión Comerciales (una fila por comercial)
Hechos: solo conservar las claves + medidas; vincular en 1:*.

Lectura: una dimensión = una fila por elemento (un comercial una vez), sin duplicado.

Lección: las dimensiones se fabrican en Power Query, no se introducen a mano.

Vocabulario de la sección

Tabla de hechos
Los acontecimientos que medir: una fila = una transacción, con las claves hacia las dimensiones y los valores numéricos.

Ejemplo sencillo: Zineb conserva la tabla Ventas con los importes y las claves.

Lo que no es: un catálogo de rótulos sin acontecimiento.

Reflejo: muchas filas + importes → hechos.

Tabla de dimensión
Un eje de análisis: una fila = un elemento único, con sus atributos descriptivos.

Ejemplo sencillo: Zineb fabrica las dimensiones Productos, Ciudades y Comerciales.

Lo que no es: acontecimientos repetidos con importes.

Reflejo: rótulos + una fila por elemento → dimensión.

Esquema estrella
Hechos en el centro, dimensiones alrededor, relaciones 1:*: la arquitectura de referencia de los modelos Power BI.

Ejemplo sencillo: Zineb dispone Ventas en el centro y sus dimensiones alrededor.

Lo que no es: todo en una sola tabla grande.

Reflejo: modelar → pensar en estrella.

Granularidad
El nivel de detalle de una fila de hechos (¿la venta? ¿la línea de pedido? ¿el día?).

Ejemplo sencillo: Zineb decide: una fila = una venta, en todas partes.

Lo que no es: filas con niveles de detalle mezclados.

Reflejo: definir la granularidad conscientemente y mantenerla.

Tabla única (antimodelo)
Todo en una sola tabla grande: «funciona» al principio, y luego el DAX y el rendimiento se degradan.

Ejemplo sencillo: Zineb rompe su tabla única para transformarla en estrella.

Lo que no es: hechos rodeados de dimensiones vinculadas.

Reflejo: tabla única = deuda que saldar rápido.

En la práctica — En la práctica — Remodelar sus ventas en estrella

  1. Analice su tabla de ventas: ¿qué columnas son HECHOS (importe, cantidad) y cuáles describen DIMENSIONES (ciudad, comercial, producto)?
  2. En Power Query, cree la dimensión Comerciales: duplique la consulta Ventas → quédese con la columna Comercial → Eliminar los duplicados. Haga lo mismo con Ciudades si es pertinente.
  3. En la tabla de hechos, solo conserve las claves y las medidas; vincule cada dimensión en 1:*.
  4. Vista Modelo: disponga los hechos en el centro, las dimensiones alrededor — su primera estrella. Compruebe que un visual Comercial × Importe sigue funcionando.
Un modelo en estrella limpio — la arquitectura que soportará el DAX del resto de la guía.

Guion paso a paso — construir una estrella como Zineb (10 min)

1) Enumere sus columnas y clasifíquelas: importes/cantidades = hechos, rótulos = dimensiones. 2) Duplique la consulta Ventas en Power Query, quédese con la columna Comercial, elimine los duplicados: la dimensión Comerciales está creada. 3) Repita para Ciudades y Productos. 4) En Ventas, solo conserve las claves y las medidas. 5) Vista Modelo: hechos en el centro, dimensiones alrededor, cada enlace en 1:*; luego compruebe un visual Comercial × Importe.

Una dimensión debe tener una fila por elemento: si subsiste un duplicado, el 1:* se rechazará.

Plantilla copiar-pegar — mi plan de estrella

Hechos (lo que se mide): ___ (ej. Ventas: importe, cantidad — claves + medidas)
Dimensiones (por lo que se analiza): ___ (Productos, Ciudades, Comerciales, Fechas)
Granularidad de los hechos: una fila = ___ (ej. una venta), en todas partes
Cada dimensión → hechos en 1:*
Estrella: hechos en el centro, dimensiones alrededor. Antimodelo: la tabla única.

Extraer Comerciales

Zineb duplica Ventas, se queda con Comercial y elimina los duplicados: una dimensión limpia en tres clics.

Extraer Ciudades

Zineb repite la extracción para Ciudades: cada eje de análisis se vuelve una dimensión distinta.

Romper la tabla única

Una sola tabla grande lo mezclaba todo: Zineb la separa en hechos + dimensiones para un DAX simple.

Mantener la granularidad

Zineb fija una fila = una venta y se atiene a ello: los acumulados y ratios siguen siendo fiables.

✓ Buenas prácticas

  • Pensar hechos = lo que se mide, dimensiones = por lo que se analiza.
  • Fabricar las dimensiones en Power Query (duplicar → quedarse con la columna → eliminar los duplicados).
  • Definir y mantener la granularidad de los hechos (una fila = una venta, en todas partes).

✗ Errores frecuentes

  • Quedarse en tabla única (el DAX y el rendimiento se degradan).
  • Mezclar las granularidades en la tabla de hechos.
  • Dejar duplicados en una dimensión.

Puntos clave

  • Hechos = lo que se mide; dimensiones = por lo que se analiza.
  • La estrella no es opcional: DAX simple, rendimiento y fiabilidad dependen de ella.
  • Una dimensión = una fila por elemento, sin duplicados — Power Query las fabrica en tres clics.
  • Defina la granularidad de los hechos y manténgala: una fila = una venta, en todas partes.

Reto de 48 h — aplíquelo mañana

Remodele una tabla de Zineb en estrella: clasifique sus columnas en hechos y dimensiones, cree al menos una dimensión en Power Query (duplicar → quedarse con la columna → eliminar los duplicados) y disponga hechos en el centro y dimensiones alrededor en la vista Modelo.

Lista de salida de la sección
  • Distingo una tabla de hechos de una tabla de dimensión.
  • Fabrico una dimensión en Power Query sin duplicado.
  • Dispongo hechos y dimensiones en estrella con relaciones 1:*.
Autoevaluación 1-5: ¿clasifico hechos y dimensiones sin dudar?Autoevaluación 1-5: ¿he construido una estrella con al menos una dimensión extraída?

Preguntas frecuentes

Mi tabla única funciona muy bien: ¿por qué cambiar?

Funciona hasta los primeros cálculos sofisticados (inteligencia de tiempo, ratios por dimensión) y los primeros millones de filas. Una tabla única complica el DAX, degrada el rendimiento y fragiliza los informes (riesgos de doble conteo). La estrella cuesta una hora ahora y ahorra días después — el consejo unánime de los profesionales y de Microsoft.

¿Dónde va la tabla de fechas en este esquema?

Es una dimensión por derecho propio — tan importante que tiene su sección (2.5): vinculada a los hechos por la fecha (Fechas[Fecha] → Ventas[Fecha] en 1:*), alimenta todo el análisis temporal. Debe ser continua (una fila por día), marcada oficialmente y única para todo el modelo.

Comprueba tu comprensión

¿Qué es el esquema estrella?

Recursos adicionales (opcional, para ir más allá)

Examen del nivel 2Preguntas inéditas y más difíciles para validar tus conocimientos