Muy interesante esta aplicación que nos explican nuestros amigos de Stratebi:
1. Introducción
Power BI Premium Utilization and Metrics es una aplicación diseñada para proporcionar funcionalidades de supervisión para capacidades de Power BI Premium Gen 2. Además la aplicación puede ayudar por ejemplo, entre otras cosas, a identificar cuando escalar verticalmente la capacidad o cuándo activar la escalabilidad automática. Es importante tener en cuenta que al activar la escalabilidad automática, nos debemos asegurar de que no hay directivas de Azure que impidan que esta pueda llegar a funcionar correctamente.
Esta aplicación permite al usuario:
· Tener una visión general del rendimiento de la capacidad
· Tener una visión de las sobrecargas que se producen en la capacidad.
· Establecer que elementos de Power BI, como por ejemplo: informes, paneles o conjuntos de datos, provocan una sobrecarga.
· Analizar qué elementos se ven afectados por un evento de sobrecarga.
· Identificar aspectos relacionados con el rendimiento de la actualización de los artefactos (informes, paneles, conjuntos de datos) que conforman la capacidad.
Requisitos Previos
A la hora de utilizar la aplicación Power BI Premium Utilization and Metrics es importante tener en cuenta los siguientes puntos:
· Se debe ser administrador de una capacidad
· La aplicación solo funciona con capacidades de Gen2
Instalación y Actualización
Para instalar la aplicación por primera vez hay que seguir los siguientes pasos:
· Seleccionar una de estas dos opciones para obtener la aplicación de AppSource:
o Hacer clic en el enlace AppSource > Power BI Premium Capacity Utilization and Metrics y seleccionar Obtenerla ahora
o Desde el servicio de Power BI seguir los siguientes pasos:
§ Seleccione Aplicaciones
§ Seleccione Obtener Aplicaciones
§ Busque PowerBI Premium
§ Seleccione la aplicación: Power BI Premium Utilization and Metrics
§ Seleccione Obtenerlo ahora
· El siguiente paso es iniciar sesión en AppSource con una cuenta de Microsoft y completar la pantalla de registro. Una vez hecho esto le damos al botón de Instalar y la aplicación se instalará y aparecerá en el apartado de aplicaciones.
En el caso de que queramos actualizar una instalación anterior tenemos que seguir los siguientes pasos:
· Seguir los pasos anteriores como si se fuese a instalar la aplicación por primera vez, sólo que esta vez al estar ya en nuestra cuenta nos aparecerá la siguiente ventana de actualización:
En la ventana tenemos tres opciones:
o Actualizar el área de trabajo y la aplicación: con esta opción se actualiza la aplicación actual que se tiene así como el área de trabajo de Power BI. De esta manera, se quita la versión actual para reemplazarse por la nueva versión de la aplicación. Normalmente esta suele ser la opción por defecto.
o Actualizar solo el contenido del área de trabajo sin actualizar la aplicación: con esta opción se actualiza el área de trabajo de PowerBI, pero no la aplicación en sí.
o Instalar otra copia de la aplicación en un área de trabajo nueva: con esta opción se crea un área de trabajo de Power BI y se instala la nueva versión de la aplicación en dicha área de trabajo. Si se selecciona esta opción se tendrá que proporcionar un nombre para la nueva área de trabajo.
· El último paso sería hacer clic en el botón de instalar y la aplicación quedaría actualizada
2. Conexión a datos de Power BI
Una vez instalada la aplicación se debe configurar la ejecución de esta por primera vez, conectándose a los datos propios de Power BI para poder ver el informe que genera dicha aplicación. Para ello:
· Dentro del servicio de Power BI, vamos al apartado de aplicaciones
· Seleccionamos la aplicación Power BI Premium Utilization and Metrics
· Al abrir la aplicación e intentar ejecutarla por primera vez veremos una ventana con un mensaje como el siguiente: “Debe conectarse a sus propios datos para ver este informe” y le damos al botón de conectar
· Nos aparecerá una ventana que tendremos que rellenar con los datos correspondientes de acuerdo con la capacidad que se quiera analizar:
o El campo CapacityID es obligatorio y representa el identificador de una capacidad de la que se es administrador. El identificador de una capacidad se puede encontrar en la dirección URL de la página de administración de la capacidad. Se accede de la siguiente manera: Configuración -> Portal de administración -> Configuración de la capacidad y acto seguido seleccionas una capacidad Gen2. El identificador de capacidad se muestra en la dirección URL después de /capacities/.
o El campo UTC_offset es obligatorio y representa la hora estándar de la organización en UTC. Los valores a introducir pueden variar entre 14 y -12
o Los campos Punto de tiempo y Punto de tiempo 2 se rellenan de manera automática y se usan para fines internos. Además, el valor de este campo se sobreescribirá al utilizar la aplicación.
o El apartado de Avanzadas es opcional, sirve para activar o desactivar la opción de actualizar los datos a medianoche
· Tras pulsar el botón Next nos aparecerá otra ventana de configuración de conexión de la aplicación Premium Capacity Utilization and Metrics donde tendremos que rellenar los siguientes campos:
o Método de Autenticación: Sirve para seleccionar el método de autenticación correspondiente, el predeterminado es OAuth2.
o Nivel de privacidad para el origen de datos: Si se selecciona la opción Organización se habilitará el acceso a la aplicación a todos los orígenes de datos de la aplicación.
o Los campos ExtensionDataSourceKind y ExtensionDataSourcePathson campos internos relacionados con el conector de la aplicación, es por ello que no se recomienda cambiar los valores de estos campos.
· Después de seleccionar el botón, Iniciar Sesión y Continuar, aparecerá una ventana en la que tendremos que seleccionar la capacidad que queramos utilizar en la aplicación.
3. POWER BI Premium utilization and metrics
Como se ha comentado anteriormente, la aplicación Power BI Premium Utilization and Metrics se utiliza para supervisar el rendimiento de una capacidad de Power BI Premium Gen2.
Esta aplicación cuenta con cinco páginas, cada una con una función determinada:
· Información general (Overview)
· Evidencia (Evidence)
· Actualizar (Refresh)
Adicionalmente, y desde los objetos se abren estas dos que figuran a continuación:
· Punto de tiempo (Time Point Detail)
· Detalles del artefacto (Artifact Detail)
Información general
La página de información general proporciona información relacionada con el rendimiento de la capacidad.
Esta página se divide en cuatro apartados:
· El apartado de Capacity Name, situado en la parte superior de la página sirve para seleccionar la capacidad en la que queremos que se ejecute la aplicación.
· El apartado de Artifacts que muestra información sobre el rendimiento general de la capacidad en cuanto a los artefactos que lo conforman.
En esta página nos encontramos:
o Gráfico de columnas de varias métricas: Proporciona una vista por día pudiendo llegara a nivel de hora, de la utilización de la capacidad por: CPU, Duration, Operations y Users,
Estos valores representan:
§ CPU: Tiempo de procesamiento de CPU en segundos
§ Duration: Tiempo de procesamiento en segundos
§ Operations: Numero de operaciones de PowerBI que se han llevado a cabo sobre los artefactos de la capacidad seleccionada.
§ Users:Número de usuarios que han realizado operaciones sobre cada artefacto
o Matriz por artefacto y operación: En este objeto visual se muestran las métricas de cada artefacto de la capacidad. Las métricas que aparecen en la matriz representan:
§ Artifacts:Lista de elementos de PowerBI presentes en la capacidad durante el periodo de tiempo seleccionado.
§ CPU:Tiempo de procesamiento de CPU en segundos para un artefacto determinado entre el período de tiempo seleccionado.
§ Duration: Tiempo de procesamiento en segundos para un artefacto determinado entre el período de tiempo seleccionado.
§ Users: Número de usuarios que utilizaron el artefacto en el período de tiempo seleccionado
§ Artifact Size: La cantidad de memoria en GB que necesita un elemento para su correcto funcionamiento.
§ Overloaded Minutes: Muestra una suma de incrementos de 30 segundos en donde la sobrecarga se ha producido al menos una vez.
§ Performance Delta: Se representa el porcentaje de mejora o decadencia con respecto a hace 7 días.
o CPU en el tiempo: Muestra la utilización de CPU de la capacidad seleccionada para el período de tiempo elegido. En el gráfico se muestran los siguientes elementos:
§ CPU interactiva: las columnas de color rojo representan el número de segundos de CPU usados durante las operaciones interactivas en un periodo de 30 segundos
§ Operaciones de segundo plano: las columnas de color azul representan el número de segundos de CPU usados durante las operaciones de segundo plano en un período de 30 segundos.
§ Límite de CPU: línea de puntos amarilla que muestra el número permitido de segundos de CPU para la capacidad seleccionada, es decir, las columnas que se extiendan por encima de la línea representan los puntos de tiempo en los que la capacidad está sobrecargada.
o Overloaded Minutes per Hour: Representa la sobrecarga para el rendimiento de un artefacto para el período de tiempo seleccionado.
o Artifact Size: Muestra la superficie de memoria registrada para los elementos de la capacidad seleccionada en un período de tiempo determinado.
o Performance Profile: Muestra el porcentaje de operaciones rápidas, moderadas y lentas del número total de operaciones ejecutadas por los artefactos de la capacidad seleccionada en un periodo de tiempo determinado. El color verde representa el porcentaje de operaciones rápidas, el color amarillo el porcentaje de operaciones moderadas y el color rojo el porcentaje de operaciones lentas.
o El apartado de líneas de tendencias semanales consta de cuatro objetos visuales que resumen el comportamiento de la capacidad seleccionada durante las últimas cuatro semanas
§ CPU: Muestra la potencia total de CPU que ha consumido la capacidad durante las últimas cuatro semanas. Los puntos de datos se calculan como la suma agregada de la CPU usada en los últimos siete días.
§ Active Artifacts: Muestra el número de elementos de PowerBI (informes, paneles, conjuntos de datos…) que han usado la CPU durante las últimas cuatro semanas.
§ Active Users: Muestra el número de usuarios que han usado la capacidad durante las últimas cuatro semanas.
§ Cores:Muestra el número de Cores que ha usado la capacidad a lo largo de las últimas cuatro semanas. Cada punto de datos es el tamaño máximo de la capacidad.
Para la mayoría de los objetos visuales de la página se pueden visualizar los datos en modo de tabla. De esta manera los datos se muestran de manera más clara. Esto se hace haciendo click derecho sobre el objeto visual y seleccionando a continuación “Mostrar como tabla”
Evidence
Esta página muestra información sobre las sobrecargas producidas en la capacidad seleccionada.
Los objetos visuales que conforman dicha página son:
· Artifacts Causing Overloading: Con este objeto visual se pueden identificar visualmente los artefactos de la capacidad seleccionada que provocan un evento de sobrecarga para un periodo de tiempo determinado. El valor que se muestra es un agregado de la potencia de CPU consumida por los artefactos cuando han sobrecargado la capacidad. Cada color representa un artefacto determinado.
· Overloaders: Con este objeto visual se pueden identificar los elementos que generan eventos de sobrecarga con impacto. El valor que toma cada artefacto se denomina puntuación de sobrecarga y es un cálculo que deriva de la gravedad de un evento de sobrecarga y de la frecuencia con la que se ha producido el evento de sobrecarga en los últimos 14 días.
· Overloaded Artifacts: Muestra los elementos más afectados por la sobrecarga en los últimos 14 días. El valor que toman los artefactos se denomina tiempo de sobrecarga y hace referencia a la cantidad de tiempo de procesamiento que se ha visto afectado por una penalización de sobrecarga.
· Overloading Windows By Type: Este objeto visual sirve para identificar si los eventos de sobrecarga o de escalabilidad automática se deben a un único elemento o a varios. Las columnas representan una ventana de 30 segundos en los que la utilización de la CPU para la capacidad seleccionada ha superado la asignación y el alto de la columna representa la cantidad de CPU que se ha utilizado.
· Overloading Windows By Artifact: Este objeto visual sirve para identificar si los eventos de sobrecarga o de escalabilidad automática se deben a un único elemento o a varios. Muestra además las penalizaciones cometidas por cada artefacto en el periodo de tiempo seleccionado.
· Artifacts Overloaded: Este objeto visual muestra si la sobrecarga de elementos afecta a su propio rendimiento, o bien afecta al rendimiento de otros elementos. Cada color diferente representa un artefacto de la capacidad. Por otro lado, la altura de la columna representa la duración de las operaciones sujetas a penalizaciones de sobrecarga. Estas penalizaciones se producen cuando la escalabilidad automática no está activada o se usa al máximo.
· Number of users Overloaded: Este objeto visual sirve para determinar si uno o varios usuarios se ven afectados por un evento de sobrecarga. De esta manera, el alto de la columna representa el número de usuarios distintos que se ven afectados cuando se produce un evento de sobrecarga.
Para la mayoría de los objetos visuales de la página se pueden visualizar los datos en modo de tabla. De esta manera los datos se muestran de manera clara. Esto se hace haciendo click derecho sobre el objeto visual y seleccionando a continuación “Mostrar como tabla”
Refresh
En esta página se muestran aspectos relacionados con el rendimiento de la actualización de los distintos artefactos de la capacidad. Cuenta con los siguientes objetos visuales:
· En la parte superior de la página existe una tabla dinámica de selección múltiple a través de la cual puedes filtrar las operaciones de actualización por:
o Artifact Kind: Filtrar por Dataset, panel, conjunto de datos…
o Status: Filtrar la página por estado de la operación, siendo estas dos: correcta (Success) o fallida (Failure)
o Métrica:Filtrar la página por las diferentes métricas:
§ CPU:Consumo de CPU por operación de actualización
§ Duration:Tiempo de procesamiento de la operación de actualización
§ Operation:Número de operaciones totales de actualización
o Operation: Filtrar la página según el tipo de operación de actualización: DataSet On Demand Refresh y DataSet Scheduled Refresh
· Refresh by Artifact: Muestra el desglose de la métrica seleccionada en la tabla dinámica en los últimos 14 días.
· Duration: Muestra el número de segundos que se ha tarda en completar una sola operación de actualización por hora, en los últimos 14 días.
· CPU: Muestra el número de segundos de CPU que se ha tarda en completar una sola operación de actualización por hora, en los últimos 14 días.
· Operations: Muestra el número de operaciones de actualización que se han completado por hora, durante un período de 14 días.
· Refresh Detail: Se describen todos los metadatos de cada operación de actualización individual que ha tenido lugar. Podemos filtrar por artefacto, de tal manera que se filtrará dicha matriz para mostrar eventos específicos. Las filas de la matriz representan los identificadores de las operaciones de actualización registradas. Además, tener en cuenta que varias filas de la matriz pueden indicar una operación de una sola actividad. En la columna Ratio de la tabla se describe la relación entre el tiempo de CPU empleado para realizar una operación de actualización y el tiempo de procesamiento.
· Refresh Operations: Sirven para identificar patrones, existen dos objetos visuales:
o Operations By date: Representa el número total de operaciones por día en los últimos 14 días.
o Operations:Representa el número total de operaciones de actualización realizadas.
Time Point Detail
Esta página muestra una vista detallada de todas las operaciones que han dado lugar a la actividad de la CPU en un punto de tiempo determinado. A esta página únicamente se puede acceder a través de la característica de obtención de detalles en un punto de tiempo sobrecargado, en uno de los siguientes objetos visuales: CPU en el tiempo, de la página Overview u Overloading Windows, en la página Evidence.
Esta página cuenta con los siguientes objetos visuales:
· Objetos visuales de fila principal: En este grupo tenemos los siguientes objetos visuales:
o TimePoint:Muestra el punto de tiempo usado.
o Gráfico de líneas de CPU: Muestra 60 minutos de actividad de CPU. La línea roja vertical representa el punto de tiempo que se ha explorado en profundidad, la línea azul muestra los tiempos de CPU totales y la línea roja la asignación de la capacidad. En el caso de que la línea azul esté por encima de la línea roja, la capacidad estará sobrecargada en ese punto de tiempo.
o Interactive Operations: Muestra el número total de operaciones interactivas que han contribuido a la actividad de la CPU en ese punto de tiempo.
o Background Operations: Muestra el número total de operaciones interactivas que han contribuido a la actividad de la CPU en ese punto de tiempo.
o SKU: Muestra el SKU actual.
o Capacity CPU: Muestra el número total de segundos de CPU’s permitidos para esta capacidad durante un período de 30 segundos determinado.
· Operaciones Interactivas: En este apartado se muestran todas las operaciones interactivas para las que se ha usado la CPU en el punto de tiempo determinado
Los valores de la tabla representan:
o Artifact:El nombre del artefacto
o Operation: Tipo de operación interactiva
o Start:Hora de inicio de la operación
o End:Hora de fin de la operación
o Status:Estado de la operación
o User:Usuario que ha desencadenado la operación
o Duration:Numero de segundos que ha tardado la operación interactiva en completarse
o Total CPU: Número de segundos de CPU usados para la operación interactiva
o Timepoint CPU: Número de segundos de CPU asignados a la operación interactiva en el punto de tiempo actual
o Throtting:Número de segundos de limitación aplicados a la operación interactiva debido a la sobrecarga de la capacidad en el punto de tiempo anterior
o % of Capacity: Porcentaje de operaciones de CPU interactivas en cuanto a la asignación de la capacidad total.
· Operaciones en segundo plano: Se muestran las operaciones que se han realizado en segundo plano y que han contribuido a la utilización de la CPU en el punto de tiempo establecido. Todas las columnas de la tabla de operaciones en segundo plano son similares a las de la tabla de operaciones interactivas a excepción de que en esta no existe la columna de usuarios.
Artifact Detail
Esta página muestra información útil sobre algún artefacto específicode la capacidad seleccionada de PowerBI. A esta página únicamente se puede acceder mediante la opción de obtención de detalles en algunos objetos visuales de la aplicación.
En esta página encontramos varios objetos visuales:
· Overloading: Muestra las ranuras de tiempo para las que se produjo una sobrecarga sobre el artefacto que se está analizando. Los valores de las columnas representan:
o Date: Representa la fecha en la que el elemento está sobrecargado
o Overloaded Minutes: Representa la suma de las ventanas de 30 segundos en las que se produjo al menos un elemento de sobrecarga
o Overloaded Time %: Representa el número de segundos sobrecargados dividido entre la duración de las operaciones interactivas que tuvieron lugar.
· Memory and Refresh: Muestra el número de operaciones rápidas, moderadas y lentas del número total de operaciones realizadas por el artefacto que se está inspeccionando en las dos últimas semanas. Tener en cuenta que, una operación rápida, tarda menos de 100 milisegundos, una operación moderada entre 100 milisegundos y dos segundos y una operación lenta tarda de media más de dos segundos en ejecutarse.
· Artifact Size: Muestra la cantidad máxima de memoria utilizada en cualquier periodo de tres horas para el elemento que se profundiza, durante un período de 14 días.
· CPU, Duration and Users: Formado por tres objetos visuales que permiten revisar el consumo de CPU, la duración de las operaciones y el número de usuarios que realizan operaciones sobre el elemento que se detalla. Cada columna representa el valor de una sola hora durante un período de 14 días.
o CPU: Cada columna muestra el número de segundos de CPU usados para
completar cada operación.
o Duration: Cada columna muestra el número de segundos usados para
completar cada operación.
o Users: Cada columna muestra el número
de usuarios activos
4. Caso se uso
Una vez visto el funcionamiento general de la aplicación podemos aplicar dichos conocimientos para un caso de uso concreto. En este caso iremos explicando con ejemplos más visuales lo que refleja la herramienta con un conjunto de informes determinado.
Teniendo en cuenta el conjunto de informes sería interesante comenzar a analizar el objeto visual Artifacts de la página Overview. Esto nos va a ayudar a comprender que elementos de la capacidad podrían llegar a ralentizar de manera más notable la misma:
Con esos datos podemos observar que:
· El elemento en el que se emplea un tiempo de procesamiento de CPU (s) mayor tiene un tiempo de 30.565 segundos para un período de 14 días.
· El elemento que en el que se emplea un tiempo de procesamiento mayor tiene un tiempo de 14.948 segundos para un período de 14 días.
· El número máximo de usuarios distintos que hacen uso de la capacidad seleccionada es de 22
· De los elementos que conforman la capacidad, el número de minutos de sobrecarga más alto es de 115 minutos para un periodo de 14 días.
· En cuanto a la diferencia de rendimiento se puede observar cómo varios informes presentan un porcentaje de rendimiento menor con respecto hace 7 días. Algunos con porcentajes bastante notables, por ejemplo -63, que significa que el artefacto en el periodo de 14 días seleccionado tiene un rendimiento un 63% peor que hace 7 días.
· Para el total de la capacidad se puede observar como el tiempo de procesamiento de CPU para todos los elementos de la capacidad es de 142.945 segundos, el tiempo de procesamiento total de 73.045 segundos, el número total de usuarios distintos, 22 y por último observar que la diferencia de rendimiento es un 3% peor con respecto a hace 7 días.
Así a primera vista, lo más interesante sería fijarnos en los informes que tienen un Performance Delta negativo más alto, teniendo en cuenta también la actividad de CPU. Esto es así ya que para una actividad de CPU muy pequeña se pueden originar valores positivos o negativos muy elevados e irreales. En este caso vemos como existe un informe con un Performance Delta especialmente alto, -28, el cual tiene un uso de CPU también elevado, 30.565 segundos. En estas situaciones sería conveniente localizar dicho informe e intentar optimizarlo desde PowerBi Desktop. Otra opción sería o activar la escalabilidad automática o escalar verticalmente la capacidad. Elegir una opción u otra va a depender de si se trata de un caso aislado o existe un número elevado de informes que ralentizan notablemente la capacidad. Otro paso interesante que realizar sería comparar estos elementos con los elementos que aparecen en la página Evidence. Además es importante tener en cuenta el número de usuarios que acceden al informe, así como el número de operaciones que se ejecutan sobre el mismo.
Otro objeto visual importante para analizar antes de avanzar a la página de Evidence sería ver la gráfica de CPU en el Tiempo, en el apartado de Rendimiento.
En esta gráfica podemos observar como para la capacidad seleccionada en la gran mayoría de los días se supera el 100% del límite de CPU establecido e incluso hay días que se supera el 200%, el 400% e incluso el 600%. En casos como estos, que se tengan picos muy elevados y dispares sería interesante acceder a los detalles de Punto de tiempo para comprobar que informes utilizan mayor cantidad de CPU. Y en el caso de que existan muchos elementos que al utilizar la CPU sobrepasen su el límite de CPU sería interesante barajar la posibilidad de hacer un escalado vertical.
Accediendo a los detalles de punto de tiempo para el pico que más sobresale obtenemos esta página:
En esta página es interesante revisar que artefactos, que tipo de operación y en qué tiempo se ha realizado dicha operación, además del número de operaciones interactivas y de segundo plano que se han realizado en total para ese punto de tiempo, para así tener claro en qué momentos, y que informes provocan una sobrecarga de la capacidad y poder tomar medidas sobre ellos. Con estos datos podemos observar también, como nos muestra la gráfica de líneas, que la capacidad se ha sobrecargado considerablemente ya que la línea azul de la gráfica sobrepasa la línea roja.
Tanto con esta página de punto de tiempo, como con el gráfico de rendimiento que representa la CPU en el tiempo, podemos sacar en claro que a rasgos generales la CPU está notablemente sobrecargada y sería conveniente barajar la posibilidad de hacer un escalado vertical de la capacidad para así mejorar dicho rendimiento.
Es interesante además la gráfica que nos muestra los minutos sobrecargados por hora, gracias a esta gráfica podremos ver, para los días concretos que se filtren, los minutos de sobrecarga que han provocado ciertos informes y la hora exacta a la que se ha producido dicha sobrecarga.
Con estos datos podemos observar patrones de tiempo que podrían ayudar a mejorar el rendimiento de la capacidad. Por ejemplo, en este caso vemos como el 17-05-2022 a las 16:00 de la tarde se ha producido una sobrecarga de aproximadamente 25 minutos, hora que se acerca al punto de tiempo mencionado anteriormente, lo que nos lleva a pensar que la ejecución de las operaciones, interactivas y de segundo plano, vistas en la página de tiempo son las que han provocado, una sobrecarga de 25 minutos dentro de la capacidad. Con estos datos podemos ir a dichos informes vistos en la página de punto de tiempo y analizarlos individualmente para comprobar el número de usuarios que acceden a dicho informe, el número de operaciones que se realizan sobre el mismo, si la utilización del informe en ese momento es un caso puntual o se repite más veces en el tiempo. En el caso de que se utilice en repetidas ocasiones, observar si el comportamiento con respecto al rendimiento y utilización de CPU es el mismo o si existen otros factores que hacen que el comportamiento cambie. Una vez analizados los informes, se podría, en el caso de que fuesen pocos, intentar optimizar las operaciones que realizan desde PowerBI Desktop o bien, en el caso de que la mayoría de los informes provoquen eventos de sobrecarga se podría barajar la posibilidad de escalar verticalmente la capacidad.
Otro objeto visual que hay que tener en cuenta es el que muestra los tamaños de los artefactos de la capacidad:
En este caso se observa cómo hay días en los que la superficie de memoria registrada para los elementos de la capacidad que se está analizando supera notablemente el límite de SKU e incluso hay días que se supera el límite de actualización de los datos. Con este escenario sería conveniente revisar el tipo de SKU que se tiene contratado para el tipo de capacidad en el que se están albergando los datos, y en el caso de que el límite de memoria registrada supere de manera muy continuada el límite barajar la posibilidad de cambiarla.
Además, tener en cuenta que se pueden filtrar la mayoría de las gráficas de la página en base a un único elemento, de esta manera si tenemos claro que algo no es correcto con algún artefacto de la página se puede llegar a una conclusión mucho más rápido.
Por ejemplo, el objeto visual de Perfil de rendimiento se puede mostrar para todos los elementos de la capacidad o se puede mostrar para un único artefacto, pinchamos sobre este en la matriz de artefactos y automáticamente se filtrará:
Como podemos observar, existe un porcentaje muy elevado de operaciones que se realizan rápidamente, comparado con el porcentaje de operaciones que se realizan moderada y lentamente. En el caso de que existiese un porcentaje muy elevado de operaciones lentas sería conveniente o bien revisar e intentar optimizar las operaciones desde PowerBI Desktop o escalar automáticamente la capacidad.
Por último, mencionar que en el caso de que se haya usado la opción de escalado automático o se haya escalado a un tamaño mayor, quedará reflejado en este objeto visual:
Una vez sacadas las conclusiones pertinentes analizando la pestaña de Overview, es interesante comparar esos resultados con la pestaña de Evidence.
Como se ha visto anteriormente la pestaña de Evidence proporciona información sobre la sobrecarga de la capacidad y esta página solo muestra datos cuando la capacidad está sobrecargada.
En este apartado sería interesante fijarse primero en el objeto visual de los Artefactos que causan sobrecarga:
De esta manera podemos ir viendo concretamente que elementos provocan mayor o menor sobrecarga en el tiempo. Cada color representa un elemento en concreto. Viendo este gráfico podemos observar cómo hay varios colores de artefactos que se repiten y que sería interesante analizar más a fondo, para ver, por ejemplo: Su tiempo de sobrecarga, su puntuación de sobrecarga o si la sobrecarga afecta a otros elementos de la capacidad, para así poder optimizarlos o barajar la posibilidad de escalar la capacidad.
Una vez vistos cuales son estos informes sería conveniente observar si son los mismos que en la página de Overview. En el caso de que haya informes que coincidan sería interesante ir filtrando en esta página por esos informes determinados para observar cómo afectan dichos elementos al rendimiento de la capacidad y tener una visión más concreta de su impacto.
Los objetos visuales de sobrecarga de ventanas por tipo y por artefacto también son bastante útiles a la hora de analizar el rendimiento de la capacidad, pues nos muestran si un evento de sobrecarga o escalabilidad automática se deben o no a un único elemento.
Para el gráfico que se muestra, se puede observar como para fechas muy concretas se ha sobrepasado el límite de CPU utilizada para la asignación de la capacidad. En casos como estos, se podría acceder al detalle de punto de tiempo en un punto en el que se haya sobrepasado el límite de la capacidad y analizar más a fondo que operaciones se han realizado en esa fecha y a que informes pertenecen dichas operaciones. De esta manera podemos observar que si accedemos al punto de tiempo más elevado en este gráfico nos lleva al punto de tiempo que mencionamos previamente. Lo que induce a pensar que realmente los informes que están involucrados en ese punto de tiempo ralentizan el rendimiento de la capacidad. En estos casos lo que se podría hacer, como se mencionaba previamente es: o bien optimizar dichos informes desde PowerBI Desktop o bien barajar la posibilidad de hacer un escalado automático en el caso de tener únicamente casos puntuales y no un número muy elevado de informes que van lentos.
Para este gráfico podemos observar cómo existe especialmente un elemento que penaliza el rendimiento de la capacidad y que además sobrepasa su límite de utilización asignado. Cuando se tiene este tipo de picos lo recomendable es acceder al detalle del artefacto para ver más a fondo que elemento es el que provoca dicha penalización. Esto se hace pinchando sobre la columna que sobrepasa el límite, click derecho y pinchamos el detalle de artefacto.
En esta página podemos ver más a fondo las características del artefacto que ha provocado la penalización. De esta manera se puede ver los días que se ha producido una sobrecarga, el porcentaje de operaciones rápidas, moderadas o lentas que se han ejecutado en el informe, el tamaño, el número de segundos de CPU usados por hora por el informe, el número de segundos que ha tardado en ejecutar una operación por hora y el número de usuarios que han ejecutado operaciones. Una vez analizados los datos de esta página se podría ver si el informe realmente a lo largo del periodo de tiempo seleccionado ha supuesto una ralentización para la capacidad.
Finalmente, quedaría por revisar la página de Refresh. Esta página, como hemos visto anteriormente nos muestra las operaciones de actualización que se han realizado sobre ciertos informes. Es interesante revisar a fondo esta página ya que en algunos casos la utilización de la CPU podría sobrepasar su límite debido a que este tipo de operaciones se realizan cuando hay un mayor número de usuarios conectados realizando operaciones sobre los distintos informes.
Una vez se revisan los puntos de tiempo con más actividad y por tanto los que suponen una mayor ralentización de la capacidad en las páginas de Overview y Evidence sería interesante comprobar en esta página los días y horas en los que se realizan dichas operaciones de actualización, además de ver que informes son los que se ven afectados.
En el caso de que se observe que alguna penalización de tiempo excesiva debido a una operación de refresco o que las operaciones de actualización se realizan cuando se ejecutan muchas operaciones o hay muchos usuarios utilizando la capacidad sería conveniente revisar las fechas de actualización de los informes y reprogramar fechas nuevas para que el rendimiento no se vea tan afectado.
5. Conclusiones
Como se ha podido ver la aplicación Power BI Premium Utilization and Metrics nos permite conocer de manera exhaustiva el rendimiento de nuestra capacidad. Además va a ser una aplicación clave a la hora de ver si en alguna ocasión sería recomendable la optimización de algún informe en específico o si convendría escalar la capacidad, ya sea escalabilidad automática o vertical.
Nos ofrece una visión más general de los elementos de la capacidad donde podemos observar información con respecto al rendimiento, mostrándonos datos como: el tiempo de procesamiento de CPU, el tiempo de procesamiento, el número de operaciones e incluso el número de usuarios por artefacto. Nos ofrece también datos sobre el porcentaje de rendimiento de los distintos artefactos así como de los tiempos de utilización de la CPU. Estos últimos datos sirven para reconocer anomalías en el rendimiento y proceder a arreglar dichos problemas con la optimización del informe que produce la ralentización del rendimiento o en su defecto, proceder a escalar la capacidad. A parte, esta aplicación también muestra datos sobre los minutos sobrecargados por hora en un punto de tiempo determinado, la superficie de memoria registrada o el porcentaje de operaciones rápidas, moderadas y lentas tanto para la capacidad en su conjunto como para cada elemento en específico.
Los datos que se ofrecen con respecto a la superficie de memoria registrada son interesantes a la hora de ver si el tipo de capacidad que se ha escogido va acorde con los elementos que se acaban introduciendo dentro de la misma. Es decir, hay ocasiones donde la superficie de memoria registrada del conjunto de todos los artefactos puede superar de manera continuada el límite de SKU y por tanto se debería contratar otro tipo de recurso diferente que nos permita albergar un número más grande de elementos dentro de la capacidad.
A parte de una visión más general del rendimiento también podemos obtener información sobre las sobrecargas que se producen en la capacidad. La aplicación ofrece datos sobre los artefactos que producen una sobrecarga, así como la importancia del impacto y los minutos de sobrecarga. La aplicación nos da también información sobre los artefactos que penalizan al ocurrir un evento de sobrecarga, así como el número de usuarios que se ven afectados por ese evento.
Por último, nos ofrece también datos relacionados con las operaciones de actualización, para que podamos identificar aspectos que tienen que ver con el rendimiento de estas. Nos ofrece datos sobre el tiempo que tarda en realizarse una operación por hora, el número de segundos de CPU que se utilizan para completar dicha operación por hora o el número de operaciones de actualización que se realizan por hora. Además hay tabla que nos muestra no solo las operaciones de actualización que han tenido lugar, sino también la fecha y hora exactas en las que se ha producido, el tipo de operación que se ha
realizado, el estado de la operación y la proporción en la que se describe la relación entre el tiempo de CPU y el de procesamiento.
Visto un resumen de los datos que nos ofrece la aplicación podemos llegar a la conclusión de que es una herramienta bastante útil a la hora de centrarse en mejorar el rendimiento de la capacidad, así como de ver específicamente que elementos dentro de nuestra capacidad son los que dan más problemas o ralentizan en mayor medida el rendimiento. De esta manera se pueden llegar más fácilmente a soluciones concretas, en el caso de que un solo informe sea el que ralentice especialmente el rendimiento mediante la utilización excesiva de CPU, se podría intentar optimizar desde PowerBI desktop las fórmulas DAX de las operaciones que se realizan en los informes para que no sean tan pesadas y su uso no sobrepase el límite de CPU. En el caso de que existan varios elementos, que puntualmente den problemas podría barajarse la posibilidad de activar el escalado automático. Por último, si existe una cantidad elevada de elementos que ralentizan el rendimiento de la capacidad y estos elementos no pueden optimizarse de ninguna manera, se podría activar el escalado vertical para controlar los picos de actividad de las cargas de trabajo donde el nivel de rendimiento actual no puede satisfacer toda la demanda.