Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Después de registrar los diagnósticos que desea usar, el siguiente paso es comprender lo que dicen.
Resulta útil tener una buena comprensión de lo que significa cada columna en el esquema de diagnóstico de consultas. Este tutorial no cubre esa información. Para obtener una descripción completa, consulte Diagnósticos de consultas.
En general, al crear visualizaciones, use la tabla detallada completa. Independientemente del número de filas que tenga, probablemente esté viendo algún tipo de visualización de cómo se acumula el tiempo empleado en distintos recursos, o cuál fue la consulta nativa que se generó.
Como se mencionó en el artículo sobre cómo registrar los diagnósticos, este ejemplo funciona con los seguimientos OData y SQL de la tabla Customers de Northwind. En concreto, el enfoque se centra en una pregunta común de los clientes y en uno de los conjuntos de seguimientos más fáciles de interpretar: actualización completa del modelo de datos.
Compilación de las visualizaciones
Al revisar las trazas, puedes evaluarlas de muchas maneras. En este artículo se describen dos visualizaciones. La primera visualización muestra los detalles que le interesan y el otro muestra las contribuciones de tiempo de varios factores. Para la primera visualización, use una tabla. Puede elegir los campos que desee, pero para obtener una visión general sencilla de lo que está ocurriendo, utilice los siguientes campos:
- Id
- Hora de inicio
- Query
- paso
- Consulta del origen de datos
- Duración exclusiva (%)
- Recuento de filas
- Categoría
- ¿Es una consulta de usuario?
- Camino
Para la segunda visualización, use un gráfico de columnas apiladas. En el parámetro Axis , use Id o Step. Si está viendo la actualización, ya que no tiene nada que ver con los pasos del propio editor, probablemente solo quiera ver el identificador. Para el parámetro Legend , establezca Category o Operation (en función de la granularidad que desee). Para el parámetro Value , establezca Duración exclusiva y asegúrese de que no es el %, de modo que obtenga el valor de duración sin procesar. Por último, para el parámetro Tooltip , establezca la hora de inicio más temprana.
Después de compilar la visualización, asegúrese de ordenar por La hora de inicio más temprana ascendente para que pueda ver el orden en el que se producen los eventos.
Aunque sus necesidades exactas pueden diferir, esta combinación de gráficos es un buen lugar para empezar a examinar numerosos archivos de diagnóstico y para muchos propósitos.
Interpretación de las visualizaciones
Como se mencionó anteriormente, los diagnósticos de consultas pueden ayudarle a responder a muchas preguntas. Las dos preguntas más comunes son cómo se dedica el tiempo y qué consulta se envía al origen.
Comprender cómo se invierte el tiempo es sencillo y es similar para la mayoría de los conectores. Sin embargo, como se mencionó en otra parte, verá funcionalidades drásticamente diferentes en función del conector. Por ejemplo, muchos conectores basados en ODBC no proporcionan un registro preciso de la consulta que Power Query envía al controlador ODBC.
Para ver cómo se dedica el tiempo, revise las visualizaciones que creó anteriormente.
Dado que los valores de tiempo de las consultas de ejemplo que se usan aquí son tan pequeños, si desea trabajar con la forma en que Power BI informa de la hora, es mejor convertir la columna Duración exclusiva en segundos en el editor de Power Query. Después de realizar esta conversión, puede ver el gráfico y obtener una idea clara de dónde se invierte el tiempo.
Para los resultados de OData, la imagen siguiente muestra que la mayor parte del tiempo se dedica a recuperar los datos del origen. Si selecciona el elemento Origen de datos en la leyenda, muestra todas las distintas operaciones relacionadas con el envío de una consulta al origen de datos.
Si realiza todas las mismas operaciones y crea visualizaciones similares, pero usa los seguimientos de SQL en lugar de los de ODATA, puede ver cómo se comparan los dos orígenes de datos.
Si selecciona la tabla de origen de datos, como con el diagnóstico de ODATA, verá que la primera evaluación (2.3 de esta imagen) envía consultas de metadatos y la segunda evaluación recupera los datos que le interesan. En este ejemplo se recuperan pequeñas cantidades de datos, por lo que la recuperación de datos tarda una pequeña cantidad de tiempo (menos de una décima de segundo para la segunda evaluación completa, con menos de un veinte de segundo para la recuperación de datos), pero esa velocidad no es cierta en todos los casos.
Como antes, seleccione la categoría Origen de datos en la leyenda para ver las consultas emitidas.
Profundizar en los datos
Examinar las rutas de acceso
Al examinar estos datos, es posible que observe que el tiempo invertido parece inusual. Por ejemplo, en la consulta OData, es posible que vea que hay una consulta de origen de datos con el siguiente valor:
Request:
https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$filter=ContactTitle%20eq%20%27Sales%20Representative%27&$select=CustomerID%2CCountry HTTP/1.1
Content-Type: application/json;odata.metadata=minimal;q=1.0,application/json;odata=minimalmetadata;q=0.9,application/atomsvc+xml;q=0.8,application/atom+xml;q=0.8,application/xml;q=0.7,text/plain;q=0.7
<Content placeholder>
Response:
Content-Type: application/json;odata.metadata=minimal;q=1.0,application/json;odata=minimalmetadata;q=0.9,application/atomsvc+xml;q=0.8,application/atom+xml;q=0.8,application/xml;q=0.7,text/plain;q=0.7
Content-Length: 435
<Content placeholder>
Esta consulta de origen de datos está asociada a una operación que solo ocupa, por ejemplo, 1% de la duración exclusiva. Mientras tanto, hay una similar:
Request:
GET https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry HTTP/1.1
Response:
https://services.odata.org/V4/Northwind/Northwind.svc/Customers?$filter=ContactTitle eq 'Sales Representative'&$select=CustomerID%2CCountry
HTTP/1.1 200 OK
Esta consulta de origen de datos está asociada a una operación que ocupa casi 75% de la duración exclusiva. Si activas la Ruta, descubres que este último es realmente un niño del primero. Este hallazgo significa que la primera consulta básicamente añade por sí sola una pequeña cantidad de tiempo, mientras que la recuperación real de los datos la registra la consulta inner.
Estos valores son extremos, pero están dentro de lo que podría verse.