(+351) 21 24 10006  ·  info@bconcepts.pt
Carnaxide, Lisboa
Power BI

Modelado en estrella en Power BI: buenas prácticas que marcan la diferencia

João Barros 28 de June de 2024 2 min de lectura

La calidad de un informe Power BI depende en un 80% del modelo de datos subyacente, no de los visuales. El modelado en estrella — una tabla de hechos central rodeada de dimensiones — es el patrón recomendado por Microsoft y por el motor VertiPaq.

¿Por qué el modelado en estrella?

El motor columnar VertiPaq comprime los datos repetidos con gran eficiencia. En un esquema en estrella, las dimensiones tienen pocos valores únicos (p. ej. nombres de producto, regiones) y comprimen casi a la perfección. La tabla de hechos tiene muchas filas pero columnas de alta cardinalidad que también comprimen bien por columnas separadas.

Los esquemas snow-flake (dimensiones normalizadas) parecen más "limpios", pero obligan a VertiPaq a hacer más joins en memoria, aumentando el footprint y degradando el rendimiento. Regla: desnormalice las dimensiones.

Reglas prácticas

  • Una tabla de fechas por modelo — nunca use la jerarquía de fechas automática de Power BI; cree una tabla de fechas explícita marcada como Date Table.
  • Evite relaciones many-to-many directas — use tablas puente y filtrado bidireccional solo cuando sea indispensable.
  • Claves surrogate enteras — los joins en INT son más rápidos que en cadenas.
  • Elimine columnas innecesarias — cada columna que no se usa en el informe ocupa memoria y aumenta el tiempo de refresco.

Estructura típica

Hechos: fVentas
  SurrogateKey_Fecha INT
  SurrogateKey_Producto INT
  SurrogateKey_Cliente INT
  Cantidad INT
  ImporteNeto DECIMAL

Dimensiones: dFecha, dProducto, dCliente, dRegion

Validar el modelo

Use el Performance Analyzer (View → Performance Analyzer) para identificar visuales lentos. Un visual que tarda más de 2 segundos en cargar suele indicar un problema en el modelo — cardinalidad elevada en una dimensión o medidas DAX ineficientes.

Conclusión

Invertir tiempo en el modelado en estrella antes de construir informes ahorra horas de troubleshooting más adelante. Un modelo bien estructurado se traduce en tiempos de refresco menores, consultas DAX más simples e informes que los usuarios adoran porque son rápidos.

Compartir: