This time we’re going bigger than ever. Fabric, Power BI, SQL, AI and more. We're covering it all. You won't want to miss it.
Learn moreLevel up your Power BI skills this month - build one visual each week and tell better stories with data! Get started
¡Hola expertos!
Me he topado con un inconveniente. Estoy usando el modo de almacenamiento: mixto. Cuando intento usar el Analizador de rendimiento, no se registra nada. Supongo que es porque es incompatible con el modo de almacenamiento: mixto.
De todos modos, tengo una serie de medidas que están profundamente anidadas (3 o 4 de profundidad). Esto me ayuda a realizar un seguimiento de la lógica subyacente, que es bastante compleja. Sin embargo, he comenzado a notar cierta latencia en los cálculos.
He escuchado que deshacerse del anidamiento en cierta medida acelera las cosas. ¿Alguien puede confirmar si esto es realmente cierto?
Quiero saberlo antes de embarcarme en la eliminación de mis medidas, lo que será un esfuerzo significativo.
TIA
Hola @WishAskedSooner,
Gracias por plantear esto. Además, gracias a @Ritaf1983, @collinq, por esas aportaciones en este hilo. Entiendo que está usando el modo de almacenamiento mixto y enfrenta problemas de rendimiento debido a medidas DAX profundamente anidadas, y está buscando confirmar si desanidarlas podría mejorar el rendimiento de las consultas.
Uso de DAX Studio para analizar el rendimiento: dado que el analizador de rendimiento está limitado en modo mixto. Use DAX Studio para realizar un seguimiento de los tiempos del servidor. Medir la duración de la consulta. Identifique cuellos de botella (por ejemplo, uso intensivo de IF/VAR anidados, transiciones de contexto).
Comprender el costo de las medidas anidadas: En general, las medidas anidadas no ralentizan intrínsecamente el rendimiento, a menos que: Impliquen transiciones de contexto repetidas (por ejemplo, CALCULATE, FILTER, RELATEDTABLE, etc.). Hay una evaluación redundante de la misma lógica varias veces. Sin embargo, en Direct Query, cada medida anidada puede dar lugar a una consulta SQL adicional, lo que hace que el anidamiento sea más costoso.
Procedimiento recomendado: Aplanar medidas críticas: para cálculos críticos para el rendimiento (especialmente en objetos visuales de informe con latencia). Intente aplanar la lógica en una medida optimizada. Evite reutilizar medidas intermedias si agregan gastos generales.
Use tablas híbridas siempre que sea posible: si ciertas tablas se pueden usar principalmente en el modo de importación, considere dividirlas o cambiarlas a importar para evitar la sobrecarga de DQ por completo.
Consulte el enlace mencionado a continuación para una mejor comprensión:
Uso del Analizador de rendimiento para examinar el rendimiento de los elementos de informe en Power ...
Además, al aplanar u optimizar las medidas, siga los procedimientos recomendados de variables DAX para reducir los recálculos innecesarios y mejorar la legibilidad:
Procedimientos recomendados para variables DAX
Espero que esto ayude a aclarar las cosas y hágame saber lo que encuentra después de probar estos pasos, feliz de ayudarlo a investigar esto más a fondo.
Gracias por usar el foro de la comunidad de Microsoft Fabric.
¡Gracias por todas las excelentes sugerencias! También agradezco la información sobre DAX Studio vs Performance Analyzer.
La optimización será un proyecto en sí mismo. Solo necesito priorizar y asignar tiempo ahora.
Hola @WishAskedSooner,
Me alegra saber que las sugerencias fueron útiles.
Cuando llegue a la fase de optimización, es posible que estos recursos de Microsoft le resulten útiles para planear y priorizar mejoras:
Cubre los procedimientos recomendados de diseño del modelo de datos, las sugerencias de columna/cardinalidad y las consideraciones del modo de almacenamiento. Guía de optimización para Power BI - Power BI | Aprendizaje de Microsoft
Guía paso a paso sobre la captura e interpretación de métricas de rendimiento. Uso del Analizador de rendimiento para examinar el rendimiento de los elementos de informe en Power ...
De esta manera, cuando tenga tiempo para concentrarse en la optimización, tendrá un punto de partida sólido.
Espero que esto ayude a aclarar las cosas y hágame saber lo que encuentra después de probar estos pasos, feliz de ayudarlo a investigar esto más a fondo.
Gracias por usar el foro de la comunidad de Microsoft.
Hola @WishAskedSooner,
Solo revisa para ver si el problema se ha resuelto por tu parte. Si las sugerencias anteriores ayudaron, ¡es genial escucharlo! Y si aún enfrenta desafíos, no dude en compartir más detalles felices de ayudarlo más.
Gracias.
Hola @WishAskedSooner,
Espero que hayas tenido la oportunidad de probar la solución compartida anteriormente. Háganos saber si algo necesita más aclaraciones o si hay una actualización de su parte que siempre está aquí para ayudarlo.
Gracias.
Hola @WishAskedSooner,
Solo quería hacer un seguimiento por última vez. Si la orientación compartida funcionó para usted, eso es maravilloso, espero que también ayude a otros que buscan respuestas similares. Si hay algo más que le gustaría explorar o aclarar, no dude en comunicarse.
Gracias.
Quería responder que solo recientemente aplané mis medidas. Y aquí están mis hallazgos:
Pros:
1. El aplanamiento redujo drásticamente el número de medidas. Así que eso fue bueno.
2. La mejora del rendimiento fue modesta. Ojalá fuera más.
3. La optimización es más fácil ahora que todo el código es una medida. Entonces, espero poder exprimir más ganancias de eso.
Contras
1. Consume mucho tiempo.
2. En algunos aspectos, el mantenimiento es más difícil debido a la duplicación, pero en otros es más fácil debido al reducido número de medidas.
La conclusión es que el código listo para la producción requiere aplanamiento, pero tiene un costo.
Hola @WishAskedSooner,
Gracias por compartir su experiencia y hallazgos detallados, esa es una valiosa información. Es genial saber que el aplanamiento de sus medidas ayudó a optimizar su modelo y proporcionó alguna mejora del rendimiento, aunque sea modesto por ahora.
También ha hecho un excelente comentario sobre el equilibrio entre el esfuerzo de mantenimiento y el potencial de optimización. A menudo es un equilibrio entre legibilidad, reutilización y rendimiento, especialmente en entornos de producción.
Si desea mejorar aún más el rendimiento, puede considerar: Revisar los planes de consulta de DAX o usar el Analizador de rendimiento para identificar cuellos de botella. Comprobación de si determinados cálculos se pueden agregar previamente o controlar en Power Query. Aprovechar los grupos de cálculo para minimizar la duplicación siempre que sea posible.
Gracias de nuevo por compartir sus aprendizajes, este tipo de comentarios ayuda a otros en la comunidad que enfrentan opciones de optimización similares.
Hola @WishAskedSooner
Como dicen los italianos: "Depende".
El anidamiento mide 3 o 4 niveles de profundidad no es un problema en sí mismo. Lo que importa es lo que están haciendo esas medidas anidadas. Si contienen lógica costosa, como tablas virtuales, condiciones complejas de FILTER o iteradores pesados (por ejemplo, SUMX sobre FILTER), entonces sí, el rendimiento puede verse afectado.
Pero si cada medida es relativamente ligera (CALCULATEs simples, agregaciones básicas, lógica de preservación del contexto), el desanidamiento no le dará nada notable. De hecho, podría hacer que su modelo sea más difícil de mantener sin ningún beneficio real.
Antes de comenzar a reescribir todo, pruebe el costo real. DAX Studio es más confiable que Performance Analyzer en modo de almacenamiento mixto.
Detalles:
https://www.sqlbi.com/articles/optimizing-dax-expressions-involving-multiple-measures
Si esta publicación ayuda, considere aceptarla como la solución para ayudar a los otros miembros a encontrarla más rápidamente
Hola @WishAskedSooner ,
Lamento decir que, sí, tener medidas anidadas PUEDE causar una ralentización del rendimiento. Como siempre, esto se basa en los tipos de funciones en el anidamiento y el volumen de datos. Por ejemplo, si está utilizando "Sum" y "Sumx" en muchos de ellos, puede terminar costando memoria / rendimiento debido a la forma en que el motor de Power BI funciona a través del anidamiento.
Si usa muchas variables que podrían ayudar.
No podría usar Performance Analyzer, pero antes de pasar por el dolor de deshacer todo, vería si puede usar DAX Studio y si puede ayudarlo a encontrar algunos problemas.
Check out the April 2026 Power BI update to learn about new features.
Sign up to receive a private message when registration opens and key events begin.
If you have recently started exploring Fabric, we'd love to hear how it's going. Your feedback can help with product improvements.