10 tips Power BI para optimizar el rendimiento tus informes

Comparte con tus redes

En esta entrada sobre 10 tips Power BI escrita por mi amiga y colega Dhania Mamodaly que es consultora, formadora y también Blogger en Power BI, nos comparte varios consejos para mejorar tus informes con la herramienta Power BI.

Te dejo enlace a su blog: http://biist.pro donde además de toda la interesante información publicada, te ofrece unirte a su Club BI.P: https://biist.pro/newsletter-boletin-power-bi-espanol para dominar Power BI.

Y  ahora ya su post y los 10 tips Power BI para aprender y mejorar:

Primero, gracias a Yolanda por ofrecerme la oportunidad de escribir un artículo en su blog 😊. En esta entrada, te voy a compartir 10 tips para mejorar el rendimiento de tus informes Power BI.

Conoce los 10 tips Power BI

  1. Evita la creación de columnas calculadas para un mejor rendimiento en Power BI
  2. Desactiva “Auto date/time” en las opciones
  3. Utiliza variables para optimizar tu código DAX
  4. Mientras menos, mejor
  5. Crea tu propio template Power BI
  6. Aplica filtros restrictivos
  7. Quita las columnas que no son necesarias
  8. Comunica con el usuario del informe a través del Visual header tooltip
  9. Documenta los pasos que haces en Power Query
  10. Desactiva la carga de consultas de Power Query

Evita la creación de columnas calculadas para un mejor rendimiento en Power BI

Empezamos hablando de estos 10 tips Power BI con la siguiente situación:

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 de principiante es crear enseguida una columna calculada, porque se suele hacer así en Excel.

Pero ojo 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.

Desactiva “Auto date/time” en las opciones

Por si no lo sabes, 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 ha generado 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.

El problema es que esta tabla ocupa espacio en memoria y entonces afecta la performance.

Si tienes un rango muy largo entre la fecha mínima y máxima del modelo, son muchas filas que se van a guardar.

Ahora imagínate que tienes varias tablas que contienen columnas de fecha.

Para cada columna de fecha se va a generar una tabla oculta.

Por eso es importante desactivar esta funcionalidad en Power BI Desktop:

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.

Ejemplo: En el escenario que vamos a ver, calculamos cuantos productos tenemos que pedir para llenar el stock.

La regla es la siguiente: si vendemos más de 100 productos, pedimos exactamente el número de productos que se han vendido. Si se vende menos que 100 productos, solo pedimos 25 nuevos productos. ¿Cómo escribir la fórmula de la mejor manera?

Mala práctica:

Stock productos = IF([Cantidades vendidas]> 100, [Cantidades vendidas], 25)

En este caso, la medida [Cantidades vendidas] se calcula 2 veces, lo que no es óptimo.

Buena práctica para una optimización del DAX:

Stock productos = VAR cantvend = [Cantidades vendidas]

RETURN IF(cantvend > 5, cantvend, 2)

Aquí, la medida [Cantidades vendidas] se calcula una sola vez. Mucho mejor 😊

Mientras menos, mejor

A nivel de visualización, suelo ver informes muy recargados.

Es cierto que los que somos analistas de datos, no estamos acostumbrados a cuidar el diseño.Las cifras son más importantes.

Pero en un informe Power BI, es importante añadir un toque de diseño para mejorar la experiencia del usuario (UX).

En efecto, el que va a consumir tu informe no sabe necesariamente lo que quieres enseñarle.

Entonces tienes que estar muy claro/a y conciso/a y por ello aplicar este de los 10 tips Power BI.

Para llegar aquí, hemos de respetar unas reglas básicas:

  • poner pocos visuales en la página (5 max sería bien). Eso permite mejorar la performance. Si necesitas mostrar más información, piensa en los toolips, en el drill-through y en el tip numero 8 😉
  • variar los visuales que utilizas (tarjetas para mostrar cifras importantes, gráfica de línea para un análisis temporal, etc.)
  • utilizar colores corporativos, no solo para que sea bonito sino para que el usuario se sienta en casa. Si tal marca suele estar en rosa en Excel (o otras herramientas), pon rosa en Power BI también.
  • Estructurar el informe: alinear objetos, poner los filtros en un aparte, tener constancia.

Crea tu propio template Power BI

Si tu o tu equipo planea crear varios informes Power BI, una buena opción es crear un template y siempre utilizar el mismo.

En efecto, en lugar de rehacer el aspecto visual cada vez que haces un reporte, hazlo una vez y guárdalo como template.

Luego podrás ahorrar tiempo reutilizándolo tantas veces que quieras.

Para personalizar tu tema, vete a la pestaña “View”, selecciona un template o modifica lo que estás utilizando ahora mismo haciendo clic en “Customize current theme” (no solo puedes cambiar colores, sino tamaño del texto, fuentes, títulos, bordes de visuales, panel de filtro, etc.)

Luego, haz clic en “Save current theme”.

Cuando abres un archivo pbix solo tendrás que hacer clic en “Browse for themes” (siempre en la pestaña “View”) e importar el bonito tema que habías preparado antes.

Intenta crear un visual y verás que se pondrá automáticamente como lo necesitas.

¿Pero porque hablar de template en un artículo sobre la optimización de Power BI?

Porque un template también permite guardar todos los pasos hechos en Power Query y ver las visualizaciones, slicer, etc. en el informe.

Lo que hace ganar mucho tiempo además de estandarizar los informes.

Lo único que tienes que hacer es crear un parámetro donde el usuario que abrirá el template Power BI pondrá la ruta del origen de sus datos.

Por supuesto, la estructura de los archivos tiene que ser la misma.

Un escenario típico es varios empleados que trabajan cada uno con un cliente diferente.

El informe Power BI se crea una sola vez y luego cada uno puede “enchufar” los datos de su cliente a Power BI y ver el análisis que corresponde a su propio cliente.

Aplica filtros restrictivos

Un objeto visual que tiene muchos datos se carga lentamente.

Si tienes un conjunto de datos muy grande y que generas un informe con tablas, deberías aplicar este tip para mejorar el rendimiento en Power BI.

Un error frecuente es dejar todos los datos de una tabla, aunque tenga millones de datos. En cada actualización, estos datos se cargan en la memoria y se descomprimen. Eso necesita mucha memoria.

Una solución que te doy en estos 10 tips Power BI en este caso es utilizar el filtro Top N que permite mostrar por ejemplo solo las 100 primeras filas. Depende de lo que necesita el usuario.

Resulta que la performance está mucho mejor porque se utiliza mucho menos memoria.

Por ejemplo, aquí filtramos los primeros 100 productos que generan más ventas (no olvides poner una medida en el campo “By Value” para que Power BI sepa según que valor aplicar el filtro).

Quita las columnas que no son necesarias

Cuando cargas tus datos en Power BI, a menudo no hace falta cargar todas tablas, y tampoco hace falta cargar todas las columnas de una tabla.

Las columnas tienen dos objetivos: crear un informe (utilizando los datos de la columna para hacer cálculos y poder filtrar el informe) y estructurar el modelo de datos (una relación entre dos tablas se hace gracias a sus columnas).

Cualquier columna que no sirve a ninguno de estos dos objetivos no tiene que estar en el modelo. Hay que quitarlas desde Power Query.

Es lo que se llama filtrar verticalmente y contribuye a llegar a un informe optimizado ya tienes otro 10 tips Power BI.

Es cierto que tu modelo puede cambiar en un futuro, pero siempre será más fácil añadir columnas que quitarlas.

En efecto, quitar columnas en un informe ya construido puede romperlo. Romper visualizaciones o relaciones, por ejemplo.

Comunica con el usuario del informe a través del Visual header tooltip

Un objetivo de Power BI es dar vida a los datos gracias a gráficos bien elegidos.

Sin embargo, a veces no es suficiente y tenemos que explicar un poco más lo que se muestra en el informe.

Por ejemplo, un usuario no podría entender cómo se ha calculado tal KPI o no sabría como navegar con el drill-through.

En este caso, te recomiendo otro de los 10 tips Power BI que es utilizar un tooltip en el encabezado de los gráficos. Este tooltip especial está bastante escondido.

Se activa desde el formato de la visualización: ir a Visual Header, activar Visual Header Tooltip Icon.

Un nuevo menú se abre justo abajo donde puedes añadir un texto. Al pasar el ratón en el icono “?”, verás tu texto en el encabezado del gráfico. ¡Pruébalo! 😊

Documenta los pasos que haces en Power Query

Como ya sabes, documentar tu trabajo es super importante. Puede servir a ti mismo para no olvidar lo que hiciste hace 3 meses o por si un día otro/a compañero/a tiene que retomar tu informe.

Pero todos sabemos que no documentamos suficiente lo que hacemos en Power BI y tampoco en Power Query (aunque tenemos buena voluntad).

Espero que este nuevo tip de los 10 tips Power BI te dará ganas de documentar tus pasos en Power Query.

En Power Query, hay dos maneras que te permiten comentar como transformas los datos :

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

De esta manera, cuando los pasos que ves a la derecha tienen más sentido. Por ejemplo, puedes reemplazar “Renamed Column” por “desde enero, esta marca tiene un nuevo nombre que es blablabla”.

Además, en Properties puedes añadir más info tipo “para saber más sobre el nuevo nombre de la marca y donde tenemos que cambiarla, contactar a xxxx”. Se entiende mejor y es buena práctica hacerlo así.

Para optimizar tu transformación de datos en Power Query, no olvides agrupar los pasos del mismo tipo (no hagas un “remove columns” 3 veces, ¡hazlo una sola vez desde el principio!)

Desactiva la carga de consultas de Power Query

Cuando termines de transformar los datos en Power Query, desactiva la carga de tablas inútiles en el informe (antes de hacer clic en “close and apply”).

Si no lo haces, vas a ver que todas las tablas se van a cargar en el modelo:

Pero si la tabla Productos, por ejemplo, solo ha servido a crear otra consulta, no hace falta cargarla en el modelo.

En efecto, cargar una tabla inútil utiliza memoria cuando no es necesario (es un gran problema porque reduce la performance) y además puede confundir el usuario.

Entonces no olvides quitar este tipo de tablas para mejorar el rendimiento en Power BI. Se hace así:

Espero que esta entrada de 10 tips Power BI para la optimización de informes te resulten útiles en tu día a día con Power BI.

Cualquier cosa puedes contactarme a través de esta página: https://biist.pro/contacto.

o en LinkedIn : https://www.linkedin.com/in/dhania-mamodaly/

Bien pues ya conoces los consejos y los 10 tips Power BI que nos recomienda Dhania, muchas gracias por tu estupendo post y lo bien explicado que esta y seguimos aprendiendo en tu  blog y redes sociales.

Plural: 4 Comentarios Añadir valoración

  1. Juanjo Caballero dice:

    Muy buen post.
    Me surgen una derie de cuestiones respecto al punto 2.
    Hablas de desactivar esta opción de fechas, pero, ¿le tenemos que desactivar siempre, por norma?
    En caso de desactivarla, a qué afectarñia en el modelo.
    En mi caso tengo funciones de tiempo y tabla calendario para calcular YTD, …, ¿tengo que seguir descativando en este caso el check?

    Gracias por la respuesta.

    Saludos.

    1. Hola Juanjo, gracias por tus preguntas, pues no siempre se debe desactivar como dice el post sobre todo si el rango es muy amplio.
      En que afecta al modelo imagino que en ganar velocidad.
      Respecto a la ultima pregunta te recomiendo contactar con la autora que podrá explicarte mejor.
      Saludos.

  2. Excelentes Articulo. Yo apenas comienzo en el ámbito de la Consultoría con POWER BI y esta muy practica la información de los 10 Tips.. mi pagina Web es https://asesorempresarialafe.com estaré siguiendo el Blog para enriquecer mis conocimientos y compartir información nueva…éxitos

    1. Muchas gracia Edwin, me alegra que te guste el post y muchos éxitos en tus consultorías. Saludos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.