Visualisera och tolka frågediagnostik i Power BI

Introduction

När du har registrerat diagnostiken som du vill använda är nästa steg att kunna förstå vad de säger.

Det är bra att ha en bra förståelse för exakt vad varje kolumn i frågediagnostikschemat betyder, vilket vi inte kommer att upprepa i den här korta självstudien. Det finns en fullständig uppskrivning av det här.

I allmänhet är det bättre att använda den fullständiga detaljerade tabellen när du skapar visualiseringar. För oavsett hur många rader det är, tittar du förmodligen på någon form av skildring av hur tiden ackumuleras i olika resurser, eller vilken ursprunglig fråga som genererades.

Som vi nämnde i vår artikel om att registrera diagnostiken arbetar jag med OData- och SQL-spårningar för samma tabell (eller nästan så) – tabellen Kunder från Northwind. I synnerhet kommer jag att fokusera på vanliga frågor från våra kunder, och en av de lättare att tolka uppsättningar av spårningar: fullständig uppdatering av datamodellen.

Skapa visualiseringarna

När du går igenom spårningar finns det många sätt att utvärdera dem. I den här artikeln ska vi fokusera på en två visualiseringsdelning – en för att visa information som du bryr dig om och den andra för att enkelt titta på tidsbidrag för olika faktorer. För den första visualiseringen används en tabell. Du kan välja vilka fält du vill, men de som rekommenderas för en enkel, övergripande titt på vad som händer är:

För den andra visualiseringen är ett val att använda ett staplat stapeldiagram. I parametern Axel kanske du vill använda "ID" eller "Step". Om vi tittar på uppdateringen, eftersom den inte har något att göra med steg i själva redigeraren, vill vi förmodligen bara titta på "ID". För parametern Förklaring bör du ange "Kategori" eller "Åtgärd" (beroende på vilken kornighet du vill ha). För värdet anger du "Exklusiv varaktighet" (och kontrollerar att det inte är %, så att du får värdet för råvaraktighet). För knappbeskrivningen anger du slutligen "Tidigast starttid".

När visualiseringen har skapats ska du sortera efter " Tidigaste starttid" stigande så att du kan se i vilken ordning saker händer.

Visualisering av information och tidsaggregering.

Även om dina exakta behov kan skilja sig åt är den här kombinationen av diagram ett bra ställe att börja med att titta på många diagnostikfiler och för ett antal syften.

Tolka visualiseringarna

Som nämnts ovan finns det många frågor som du kan försöka besvara med frågediagnostik, men de två som vi ser oftast frågar hur tid som spenderas och frågar vad frågan som skickas till källan är.

Det är enkelt att fråga hur tiden spenderas och det kommer att likna de flesta kopplingar. En varning med frågediagnoser, som nämnts någon annanstans, är att du ser drastiskt olika funktioner beroende på anslutningen. Många ODBC-baserade anslutningar har till exempel ingen exakt logg över vilka frågor som skickas till det faktiska backend-systemet, eftersom Power Query bara ser vad som skickas till ODBC-drivrutinen.

Om vi vill se hur tiden går till kan vi bara titta på de visualiseringar som vi skapade ovan.

Eftersom tidsvärdena för de exempelfrågor som vi använder här är så små, om vi vill arbeta med hur Power BI rapporterar tid är det bättre om vi konverterar kolumnen Exklusiv varaktighet till Sekunder i Power Query-redigeraren. När vi gör den här konverteringen kan vi titta på vårt diagram och få en bra uppfattning om var tiden spenderas.

För mina OData-resultat ser jag i bilden att den största delen av tiden ägnades åt att hämta data från källan – om jag väljer objektet Datakälla i förklaringen visas alla olika åtgärder som rör att skicka en fråga till datakällan.

Sammanfattning av OData Northwind-frågediagnostik.

Om vi utför samma åtgärder och skapar liknande visualiseringar, men med SQL-spårningar i stället för ODATA,kan vi se hur de två datakällorna jämförs!

OData Northwind Frågediagnostiksammanfattning med SQL-spårningar.

Om vi väljer tabellen Datakälla, som med ODATA-diagnostiken, kan vi se att den första utvärderingen (2.3 i den här bilden) genererar metadatafrågor, där den andra utvärderingen faktiskt hämtar de data vi bryr oss om. Eftersom vi hämtar små mängder data i det här fallet tar data som hämtas tillbaka en liten tid (mindre än en tiondel av en sekund för att hela den andra utvärderingen ska ske, med mindre än en tjugonde sekund för själva datahämtningen), men det är inte sant i alla fall.

Som ovan kan vi välja kategorin "Datakälla" i förklaringen för att se de frågor som genereras.

Analysera data

Titta på sökvägar

Om det verkar som om tiden som spenderas är konstig kan du till exempel se att det finns en datakällafråga med följande värde i OData-frågan:

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>

Den här datasökfrågan är kopplad till en operation som tar upp, säg, 1 % av dess exklusiva varaktighet. Under tiden finns det en liknande:

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

Den här datakällfrågan är associerad med en åtgärd som tar upp nästan 75% av den exklusiva tidsåtgången. Om du aktiverar Sökvägen upptäcker du att den senare faktiskt är ett barn till den förra. Det innebär att den första frågan i princip har lagt till en liten tidsmängd på egen hand, där den faktiska datahämtningen övervakas av den "inre" frågan.

Det här är extrema värden, men de ligger inom gränserna för vad som kan ses.