Revisión del rendimiento de medidas, relaciones y objetos visuales

Completado

Si el modelo semántico tiene varias tablas, relaciones y cálculos complejos, varios objetos visuales y datos redundantes, existe la posibilidad de que el rendimiento de los informes sea deficiente. El bajo rendimiento de un informe da lugar a una experiencia del usuario negativa.

Captura de pantalla de los factores que afectan al rendimiento del informe.

Para optimizar el rendimiento, primero debe identificar la procedencia del problema; en otras palabras, averiguar qué elementos del informe y del modelo semántico provocan los problemas de rendimiento. Después, puede tomar medidas para resolver esos problemas y, por tanto, mejorar el rendimiento.

Identificación de cuellos de botella de rendimiento del informe

Para lograr un rendimiento óptimo en los informes, debe crear un modelo semántico eficaz que tenga consultas y medidas que se ejecuten con rapidez. Si tiene una buena base, puede mejorar aún más el modelo mediante el análisis de los planes de consulta y las dependencias, y luego realizar cambios para optimizar todavía más el rendimiento.

Debe revisar las medidas y las consultas en el modelo semántico para asegurarse de que usa la manera más eficaz de obtener los resultados que quiere. El punto de partida debe ser la identificación de los cuellos de botella que existen en el código. Al identificar la consulta más lenta en el modelo semántico, puede centrarse primero en el cuello de botella más importante y establecer una lista de prioridades para solucionar los problemas restantes.

Análisis del rendimiento

Puede usar el Analizador de rendimiento de Power BI Desktop para ayudarle a determinar el rendimiento de cada uno de los elementos del informe cuando los usuarios interactúan con ellos. Por ejemplo, puede determinar cuánto tiempo tarda un determinado objeto visual en actualizarse cuando lo inicia una interacción del usuario. El Analizador de rendimiento le ayudará a identificar los elementos que contribuyen a los problemas de rendimiento, que pueden ser útiles durante la solución de problemas.

Antes de ejecutar el Analizador de rendimiento, para obtener los resultados más precisos en el análisis (la prueba), asegúrese de empezar con una caché vacía, tanto para los de objetos visuales como para el motor de datos.

  • Caché de objetos visuales: cuando se carga un objeto visual, esta caché no se puede borrar sin cerrar Power BI Desktop y abrirlo de nuevo. Para evitar cualquier tipo de almacenamiento en caché, debe iniciar el análisis con una caché de objetos visuales limpia.

    Para asegurarse de que tiene una caché de objetos visuales limpia, agregue una página en blanco al archivo de Power BI Desktop (.pbix) y, después, con esa página seleccionada, guarde y cierre el archivo. Vuelva a abrir el archivo de Power BI Desktop (.pbix) que quiera analizar. Se abrirá por la página en blanco.

  • Caché del motor de datos: cuando se ejecuta una consulta, los resultados se almacenan en caché, por lo que los resultados del análisis serán engañosos. Tendrá que borrar la caché de datos antes de volver a ejecutar el objeto visual.

    Para borrar la caché de datos, puede reiniciar Power BI Desktop o conectar DAX Studio al modelo semántico y, después, llamar a Borrar caché.

Después de borrar las cachés y abrir el archivo de Power BI Desktop por la página en blanco, vaya a la pestaña Vista y seleccione la opción Analizador de rendimiento.

Para comenzar el proceso de análisis, seleccione Iniciar grabación, seleccione la página del informe que quiera analizar e interactúe con los elementos del informe que quiera medir. Verá que los resultados de las interacciones se muestran en el panel Analizador de rendimiento mientras trabaja. Cuando haya terminado, seleccione el botón Detener.

Captura de pantalla del inicio del Analizador de rendimiento.

Para obtener información más detallada, vea Uso del Analizador de rendimiento para examinar el rendimiento de los elementos de informe.

Revisión de los resultados

Puede revisar los resultados de la prueba de rendimiento en el panel Analizador de rendimiento. Para revisar las tareas en orden de duración, de mayor a menor, haga clic con el botón derecho en el icono Ordenar situado junto al encabezado de columna Duración (ms) y, después, seleccione Tiempo total en orden Descendente.

Captura de pantalla en la que se muestra cómo ordenar los resultados en el Analizador.

La información de registro de cada uno de los objetos visuales muestra cuánto tiempo se ha tardado (duración) en completar las siguientes categorías de tareas:

  • Consulta DAX: el tiempo que ha tardado el objeto visual en enviar la consulta, junto con el tiempo que ha tardado Analysis Services en devolver los resultados.

  • Presentación visual: el tiempo que ha tardado el objeto visual en representarse en la pantalla, incluido el tiempo necesario para la recuperación de imágenes web o la geocodificación.

  • Otros: el tiempo que ha tardado el objeto visual en preparar las consultas, esperar a que se completen otros objetos visuales o realizar otras tareas de procesamiento en segundo plano. Si en esta categoría se muestra una duración larga, la única manera real de reducirla consiste en optimizar las consultas DAX para otros objetos visuales, o bien reducir el número de objetos visuales en el informe.

Captura de pantalla de las categorías en los resultados del Analizador de rendimiento.

Los resultados de la prueba de análisis le ayudan a comprender el comportamiento del modelo semántico y a identificar los elementos que tiene que optimizar. Puede comparar la duración de cada elemento del informe e identificar los que tienen una duración larga. Debe centrarse en esos elementos e investigar por qué tardan tanto en cargarse en la página del informe.

Para analizar las consultas con más detalle, puede usar DAX Studio, una herramienta gratuita de código abierto proporcionada por otro servicio.

Resolución de problemas y optimización del rendimiento

Los resultados del análisis identificarán áreas de mejora y oportunidades de optimización del rendimiento. Es posible que tenga que realizar mejoras en los objetos visuales, la consulta DAX u otros elementos del modelo semántico. La información siguiente proporciona instrucciones sobre lo que se debe buscar y los cambios que se pueden realizar.

Objetos visuales

Si identifica objetos visuales como el cuello de botella que genera un rendimiento deficiente, debería encontrar una manera de mejorar el rendimiento con un impacto mínimo en la experiencia del usuario.

Tenga en cuenta el número de objetos visuales en la página del informe; menos objetos visuales equivale a un mejor rendimiento. Pregúntese si un objeto visual es realmente necesario y si agrega valor al usuario final. Si la respuesta es no, debe quitar ese objeto visual. En lugar de usar varios objetos visuales en la página, tenga en cuenta otras formas de proporcionar detalles adicionales, como páginas de obtención de detalles e información en pantalla de la página del informe.

Examine el número de campos de cada uno de los objetos visuales. Cuanto más objetos visuales tenga en el informe, más probabilidades de problemas de rendimiento. Además, cuanto mayor sea el número de objetos visuales, más abarrotado puede aparecer el informe y perder claridad. El límite superior de los objetos visuales es de 100 campos (medidas o columnas), por lo que un objeto visual con más de 100 campos se cargará con lentitud. Pregúntese si realmente necesita todos estos datos en un objeto visual. Es posible que pueda reducir el número de campos que usa actualmente.

Consulta DAX

Al examinar los resultados en el panel Analizador de rendimiento, puede ver cuánto tiempo ha tardado el motor de Power BI Desktop en evaluar cada consulta (en milisegundos). Un buen punto de partida es cualquier consulta DAX que tarde más de 120 milisegundos. En este ejemplo, se identifica una consulta determinada con una duración prolongada.

Captura de pantalla de un ejemplo de duración larga en el Analizador de rendimiento.

El Analizador de rendimiento resalta posibles problemas, pero no le indica lo que debe hacer para mejorarlos. Es posible que quiera realizar una investigación más detallada sobre por qué esta medida tarda tanto en procesarse. Puede usar DAX Studio para investigar con más detalle las consultas.

Por ejemplo, seleccione Copiar consulta para copiar la fórmula de cálculo en el Portapapeles y, después, péguela en Dax Studio. Después, puede revisar el paso de cálculo con más detalle. En este ejemplo, intenta contar el número total de productos con cantidades de pedido mayor o igual que cinco.

Count Customers =
CALCULATE (
    DISTINCTCOUNT ( Order[ProductID] ),
    FILTER ( Order, Order[OrderQty] >= 5 )
)

Después de analizar la consulta, puede usar sus propios conocimientos y experiencia para identificar dónde están los problemas de rendimiento. También puede intentar usar otras funciones de DAX para ver si mejoran el rendimiento. En el ejemplo siguiente, la función FILTER se ha reemplazado por la función KEEPFILTER. Cuando la prueba se vuelve a ejecutar en el Analizador de rendimiento, la duración es más corta como resultado de la función KEEPFILTER.

Count Customers =
CALCULATE (
    DISTINCTCOUNT ( Order[ProductID] ),
    KEEPFILTERS (Order[OrderQty] >= 5 )
)

En este caso, puede reemplazar la función FILTER con la función KEEPFILTER para reducir significativamente el tiempo de duración de la evaluación de esta consulta. Al realizar este cambio, para comprobar si el tiempo de duración ha mejorado o no, borre la caché de datos y, después, vuelva a ejecutar el proceso del Analizador de rendimiento.

Captura de pantalla de un ejemplo de duración corta en el Analizador de rendimiento.

Modelo semántico

Si la duración de las medidas y los objetos visuales muestran valores bajos (en otras palabras, tienen un tiempo de duración breve), no es el motivo de los problemas de rendimiento. En su lugar, si la consulta DAX muestra un valor de duración alto, es probable que una medida se haya escrito de forma incorrecta o que se haya producido un problema con el modelo semántico. El problema se podría deber a las relaciones, las columnas o los metadatos del modelo, o bien podría ser el estado de la opción Fecha y hora automáticas, como se explica en la sección siguiente.

Relaciones

Debe revisar las relaciones entre las tablas para asegurarse de que ha establecido las relaciones correctas. Compruebe que las propiedades de cardinalidad de las relaciones están configuradas correctamente. Por ejemplo, una columna del lado "uno" que contiene valores únicos podría estar configurada incorrectamente como una columna del lado "varios". Más adelante en este módulo obtendrá más información sobre cómo afecta la cardinalidad al rendimiento.

Columnas

Se recomienda no importar las columnas de datos que no se necesitan. Para evitar la eliminación de columnas en el Editor de Power Query, debe tratar de controlarlas en el origen al cargar los datos en Power BI Desktop. Pero si no es posible quitar las columnas redundantes de la consulta de origen o si los datos ya se han importado en su estado sin procesar, siempre puede usar el Editor de Power Query para examinar cada columna. Pregúntese si realmente necesita cada columna e intente identificar la ventaja que cada una agrega al modelo semántico. Si observa que una columna no agrega ningún valor, debe quitarla del modelo semántico. Por ejemplo, imagine que tiene una columna de identificador con miles de filas únicas. Sabe que no usará esta columna concreta en una relación, por lo que no se utilizará en un informe. Por tanto, debe considerar esta columna como innecesaria y admitir que malgasta espacio en el modelo semántico.

Cuando se quita una columna innecesaria, se reduce el tamaño del modelo semántico lo que, a su vez, da como resultado un tamaño de archivo más pequeño y un tiempo de actualización más rápido. Además, como el modelo semántico solo contiene datos relevantes, se mejorará el rendimiento general del informe.

Para obtener más información, vea Técnicas de reducción de datos para modelos de importación.

Metadatos

Los metadatos son información sobre otros datos. Los metadatos de Power BI contienen información sobre el modelo semántico, como el nombre, el tipo de datos y el formato de cada una de las columnas, el esquema de la base de datos, el diseño del informe, cuándo se ha modificado el archivo por última vez, la frecuencia de actualización de los datos y mucho más.

Cuando se cargan datos en Power BI Desktop, se recomienda analizar los metadatos correspondientes para poder identificar cualquier incoherencia con el modelo semántico y normalizar los datos antes de empezar a generar informes. La ejecución de análisis en los metadatos mejorará el rendimiento del modelo semántico porque se identificarán columnas innecesarias, errores en los datos, tipos de datos incorrectos, el volumen de datos que se cargan (los modelos semánticos grandes, incluidos los datos transaccionales o históricos, tardarán más tiempo en cargarse) y mucho más.

Puede usar el Editor de Power Query en Power BI Desktop para examinar columnas, filas y valores de datos sin procesar. Después, puede usar las herramientas disponibles, como las que se resaltan en la captura de pantalla siguiente, para realizar los cambios necesarios.

Captura de pantalla de las opciones de la pestaña de inicio del editor de consultas.

Entre las opciones de Power Query se incluyen las siguientes:

  • Columnas innecesarias: evalúa la necesidad de cada columna. Si una o más columnas no se van a usar en el informe y, por tanto, no son necesarias, debe quitarlas mediante la opción Quitar columnas de la pestaña Inicio.

  • Filas innecesarias: comprueba las primeras filas del modelo semántico para ver si están vacías o si contienen datos que no se necesitan en los informes; en ese caso, quita esas filas mediante la opción Quitar filas de la pestaña Inicio.

  • Tipo de datos: evalúa los tipos de datos de columna para asegurarse de que todos sean correctos. Si identifica un tipo de datos incorrecto, puede cambiarlo si selecciona la columna, selecciona Tipo de datos en la pestaña Transformación y después el tipo de datos correcto en la lista.

  • Nombres de consulta: examina los nombres de consulta (tabla) en el panel Consultas. Como ha hecho con los nombres de encabezado de columna, debe cambiar los nombres de consulta poco comunes o útiles por otros más obvios o con los que el usuario esté familiarizado. Puede cambiar el nombre de una consulta si hace clic con el botón derecho en ella, selecciona Cambiar nombre, edita el nombre según corresponda y presiona Entrar.

  • Detalles de columna: el Editor de Power Query tienen las tres opciones de vista previa de datos siguientes que puede usar para analizar los metadatos asociados a las columnas. Puede encontrar estas opciones en la pestaña Vista, como se muestra en la siguiente captura de pantalla.

    • Calidad de columnas: determina qué porcentaje de elementos de la columna son válidos, tienen errores o están vacíos. Si el porcentaje válido no es 100, debe investigar el motivo, corregir los errores y rellenar los valores vacíos.

    • Distribución de columnas: muestra la frecuencia y la distribución de los valores de cada una de las columnas. Lo investigará más adelante en este módulo.

    • Perfil de columna: muestra el gráfico de estadísticas de columna y un gráfico de distribución de columnas.

Captura de pantalla de las opciones de perfil de columna.

Nota

Si va a revisar un modelo semántico grande con más de 1000 filas y quiere analizarlo en su totalidad, tendrá que cambiar la opción predeterminada en la parte inferior de la ventana. Seleccione Generación de perfiles de columna a partir de las primeras 1000 filas>Generación de perfiles de columnas en función del conjunto de datos completo.

Captura de pantalla de las filas de perfil de columna.

Otros metadatos que debe tener en cuenta son la información sobre la totalidad del modelo semántico, como el tamaño de archivo y las frecuencias de actualización de los datos. Estos metadatos se pueden encontrar en el archivo de Power BI Desktop asociado (.pbix). Los datos que se cargan en Power BI Desktop se comprimen y almacenan en el disco mediante el motor de almacenamiento VertiPaq. El tamaño del modelo semántico tiene un impacto directo sobre su rendimiento; un modelo semántico de menor tamaño usa menos recursos (memoria) y aumenta la velocidad de las actualizaciones de datos, los cálculos y la representación de los objetos visuales en los informes.

Característica Fecha y hora automáticas

Otro elemento que se debe tener en cuenta al optimizar el rendimiento es la opción Fecha y hora automáticas de Power BI Desktop. De forma predeterminada, esta característica está habilitada globalmente, lo que significa que Power BI Desktop crea automáticamente una tabla calculada oculta para cada columna de fecha, siempre que se cumplan determinadas condiciones. Las nuevas tablas ocultas se agregan a las que ya existen en el modelo semántico.

La opción Fecha y hora automáticas le permite trabajar con la inteligencia de tiempo al filtrar, agrupar y explorar los períodos de tiempo del calendario. Se recomienda mantener habilitada la opción Fecha y hora automáticas solo cuando se trabaje con períodos de tiempo de calendario y cuando tenga requisitos de modelo sencillos en lo que respecta al tiempo.

Si el origen de datos ya define una tabla de dimensiones de fecha, se debe usar esa tabla para definir el tiempo de forma coherente dentro de la organización, y debe deshabilitar la opción Fecha y hora automáticas global. Deshabilitar esta opción puede reducir el tamaño del modelo semántico y la frecuencia de actualización.

Puede habilitar o deshabilitar esta opción Fecha y hora automáticas de forma global para que se aplique a todos los archivos de Power BI Desktop, o bien puede habilitarla o deshabilitarla para el archivo actual de forma que solo se aplique a un archivo individual.

Para habilitar o deshabilitar esta opción Fecha y hora automáticas, vaya a Archivo>Opciones y configuración>Opciones y, después, seleccione la página Global o Archivo actual. En cualquiera de las páginas, seleccione Carga de datos y, después, en la sección Inteligencia de tiempo, active o desactive la casilla según sea necesario.

Captura de pantalla en la que se muestra cómo configurar la fecha y hora automáticas.

Para obtener información general y una introducción a la característica Fecha y hora automáticas, vea Aplicación de la fecha y hora automáticas en Power BI Desktop.