Optimización de reportes en Power BI

Optimización de reportes en Power BI

8 tips para tener un reporte optimizado

En Power BI Desktop pueden averiguar el rendimiento de cada uno de los elementos de su informe, como los elementos visuales y las fórmulas de DAX. Esto se realiza con el Analizador de rendimiento de Power BI.

Con esta funcionalidad, pueden ver y registrar el rendimiento de cada uno de los elementos de su informe cuando los usuarios interactúan con ellos y qué aspectos de su rendimiento consumen más (o menos) recursos. Docs Microsoft

Performance Analyzer inspecciona y muestra la duración necesaria para actualizar o refrescar todos los elementos visuales que inician las interacciones del usuario y presenta la información para que puedas ver, desglosar o exportar los resultados.

Puede ayudarte a identificar los elementos visuales que están afectando el rendimiento de tus informes e identificar el motivo del impacto.

11111.png

¿Cómo funciona el Analizador de Rendimiento de Power BI Desktop? Una vez que activas la funcionalidad, podrás comenzar a grabar y empezarás a actualizar y modificar los filtros del informe.

1111111.png

Cuando pauses la grabación te aparecerá un listado con las consultas y acciones realizadas y los tiempos empleados por cada una en milisegundos. El listado vendrá agrupado por cada elemento del informe, por lo que si detectas un problema en un filtro o visualización concreto, te será muy fácil encontrarlo.

Consejos para mejorar el rendimiento de tus informes:

1) Elimina todas las columnas innecesarias. Es muy tentador dejar los campos que no necesitamos en el informe “por las dudas”, pero debemos tener en cuenta que esta forma de actuar ralentiza el análisis.

2) Elige el tipo de dato correcto. En muchas ocasiones Power BI clasifica un campo como texto en vez de numérico porque existe algún valor “extraño” (N/A, null, etc.) Cambia el tipo de dato a numérico.

3) Minimiza los filtros en el informe. Tienes que intentar eliminar aquellos que no sean necesarios. El motivo es que cada filtro que se actualiza debe revisar el resto de filtros.

4) Comprende el trabajo de las funciones DAX. Si empezaste a usar DAX, deberías profundizar en cómo trabaja cada función que sueles usar para determinar si perjudica el rendimiento. Por ejemplo, la función FILTER no termina de ejecutarse hasta que no ha revisado todos los registros de la tabla.

5) Desactiva “Auto date/time” en las opciones. Al cargar una columna de fecha en Power BI, se crea automáticamente una nueva tabla de fecha en el modelo.

No se ve porque está oculta en Power BI Desktop pero sí existe y además se genera una relación entre la columna fecha de esta nueva tabla y la columna fecha de tu tabla de hechos.

Se puede ver la tabla en VertiPaq Analyzer o DAXStudio. La tabla generada contiene 4 columnas: Year, Quarter, Month y Day que permiten poder utilizar las funciones de Time Intelligence en DAX, poder filtrar y agregar datos. Esta tabla ocupa espacio en memoria y entonces afecta la performance.

6) Utiliza variables para optimizar tu código DAX. Las variables tienen 2 objetivos: mejorar la legibilidad del código (lo que permite hacer un debug más fácilmente) y mejorar el rendimiento del informe.

En efecto, si ves que en tu fórmula vas a utilizar 2 veces una misma medida, ten en cuenta que se va a calcular 2 veces. Entonces aquí el reflejo es utilizar una variable que va a almacenar el resultado de la dicha medida y reutilizar la variable tantas veces que quieras en el cálculo. De esta manera, solo se calculará una vez y tu informe será más rápido.

7) Evita la creación de columnas calculadas para un mejor rendimiento. Cuando tenemos que crear un cálculo que va a enriquecer nuestro modelo, tenemos la opción entre crear una columna calculada o una medida.

Un error es crear enseguida una columna calculada, porque se suele hacer así en Excel. Pero se debe tener cuidado porque una columna calculada se almacena en el modelo de datos en memoria. Al contrario, una medida no consume memoria sino CPU porque se calcula en tiempo real. En cuanto se pueda, es mejor crear una medida. Eso no significa que nunca debes utilizar columnas calculadas, sino que debes preguntarte cual es lo que necesitas exactamente.

Por ejemplo, si lo que quieres es obtener un slicer a partir de datos que no existen en el modelo, crear una columna calculada es buena opción porque podrás aplicar una condición a cada fila. Pero si lo que necesitas es calcular el promedio de las ventas o un cálculo que sea dinámico según los filtros aplicados por el usuario, tendrás que utilizar una medida para poder agregar los datos.

8) Documenta los pasos que haces en Power Query. Documentar el trabajo es super importante. Sirve para no olvidar lo que hiciste hace 3 meses o por si otro/a compañero/a tiene que retomarlo.

Maneras de comentar cómo vas transformando los datos:

Nombrar los pasos (clic derecho -> Rename) Dar una descripción del paso (clic derecho -> Properties -> añadir descripción)

Además, en Properties pueden añadir más información. Para optimizar tu transformación de datos en Power Query, agrupa los pasos del mismo tipo, no hagas un “remove columns” 3 veces, es mejor hacerlo una sola vez desde el principio.