Frågediagnostik

Med Frågediagnostik kan du få en bättre förståelse för vad Power Query gör vid redigering och vid uppdateringstid i Power BI Desktop. Vi kommer att utöka den här funktionen i framtiden, inklusive att lägga till möjligheten att använda den under fullständiga uppdateringar, men just nu kan du använda den för att förstå vilken typ av frågor som du skickar, vilka långsammare du kan få under redigeringsuppdateringen och vilken typ av bakgrundshändelser som inträffar.

Om du vill använda Frågediagnostik går du till fliken Verktyg i Power Query menyfliksområdet.

Frågediagnostik.

Som standard kan frågediagnostik kräva administrativa rättigheter för körning (beroende på IT-princip). Om du inte kan köra frågediagnostik öppnar du sidan Power BI-alternativ och på fliken Diagnostik väljer du Aktivera i Frågeredigeraren (kräver inte att du kör som administratör). Det här valet gör att du inte kan spåra diagnostik när du gör en fullständig uppdatering till Power BI i stället för Power Query-redigeraren, men du kan fortfarande använda den när du förhandsgranskar, redigerar och så vidare.

Alternativ för frågediagnostik.

När du startar diagnostiken börjar Power Query spåra eventuella utvärderingar som du orsakar. Den utvärdering som de flesta användare tänker på är när du trycker på Uppdatera eller när du hämtar data för första gången, men det finns många åtgärder som kan orsaka utvärderingar, beroende på anslutningsappen. När du till exempel hämtar en lista med värden som ska filtreras med SQL-anslutningsappen startar det även en utvärdering, men den associerar inte med en användarfråga och den representeras i — diagnostiken. Andra systemgenererade frågor kan innehålla navigatören eller hämta data.

När du trycker på Diagnostisera steg Power Query en särskild utvärdering av bara det steg du tittar på. Sedan visas diagnostiken för det steget utan att du behöver visa diagnostiken för andra steg i frågan. Detta kan göra det mycket enklare att få en smal vy över ett problem.

Det är viktigt att du trycker på Stoppa diagnostik om du registrerar alla spårningar från Starta diagnostik. Om diagnostiken stoppas kan motorn samla in de registrerade spårningarna och parsa dem till rätt utdata. Utan det här steget förlorar du spårningarna.

Typer av diagnostik

Vi tillhandahåller för närvarande tre typer av diagnostik, varav en har två detaljnivåer.

Den första av dessa diagnostik är den primära diagnostiken, som har en detaljerad vy och en sammanfattad vy. Den sammanfattade vyn är avsedd att ge dig en omedelbar inblick i var tid som spenderas i din fråga. Den detaljerade vyn är mycket djupare, rad för rad, och behövs i allmänhet bara för allvarlig diagnostisering av energisparanvändare.

För den här vyn är vissa funktioner, t.ex. kolumnen Datakällsfråga, för närvarande endast tillgängliga för vissa anslutningsappar. Vi kommer att arbeta för att utöka omfattningen av den här täckningen i framtiden.

Datasekretesspartitioner ger dig en bättre förståelse för de logiska partitioner som används för datasekretess.

Anteckning

Power Query kan utföra utvärderingar som du kanske inte har utlöst direkt. Några av dessa utvärderingar utförs för att hämta metadata så att vi på bästa sätt kan optimera våra frågor eller ge en bättre användarupplevelse (till exempel hämta listan över distinkta värden i en kolumn som visas i upplevelsen Filtrera rader). Andra kan vara relaterade till hur en anslutningsapp hanterar parallella utvärderingar. Om du samtidigt ser upprepade frågor i frågediagnostiken som du inte tror är meningsfulla kan du kontakta oss via vanliga supportkanaler för att få feedback om hur vi förbättrar — vår produkt.

Sammanfattad jämfört med detaljerad vy

Frågediagnostik innehåller två vyer: sammanfattade och detaljerade. Den sammanfattade vyn "minimerar" flera relaterade åtgärder till en enda åtgärd. I den här processen kombineras information som samlas in av varje åtgärd och de exklusiva varaktigheterna summeras. Ingen information går förlorad som en del av den här processen.

Den sammanfattade vyn ger en översikt över vad som hände under en utvärdering för enkel granskning på hög nivå. Om ytterligare detaljnivå krävs för en viss åtgärd kan användaren titta på grupp-ID:t och visa motsvarande åtgärder som grupperades i detaljvyn.

Förklara flera utvärderingar

När du uppdaterar Power Query redigeringsredigeraren görs mycket i bakgrunden för att försöka ge dig en smidig användarupplevelse. När du till exempel uppdaterar förhandsgranskningen kör utvärderaren det sista steget för varje given fråga. I bakgrunden kör den dock n-1 steg, n-2, steg och så vidare sekventiellt, så att den redan är tillgänglig om du går tillbaka genom stegen.

För att ge högre prestanda sker för närvarande viss cachelagring så att den inte behöver köra om varje del av den slutliga frågeplanen när den går tillbaka genom stegen. Även om den här cachelagringen är användbar för normal redigering, innebär det att du inte alltid får rätt stegjämförelseinformation eftersom senare utvärderingar hämtar cachelagrade data.

Diagnostikschema

Id

När du analyserar resultatet av en inspelning är det viktigt att filtrera inspelningssessionen efter ID, så att kolumner som Exclusive Duration % är meningsfulla.

ID är en sammansatt identifierare. Den består av två tal — ett före punkt och ett efter. Det första talet är detsamma för alla utvärderingar som är resultatet av en enskild användaråtgärd. Med andra ord, om du trycker på uppdatera två gånger, kommer det att finnas två olika tal som leder punkt, en för varje användaraktivitet. Den här numrering är sekventiell för en viss diagnostikinspelning.

Det andra talet representerar en utvärdering av motorn. Det här talet är sekventiellt under hela processen där utvärderingen står i kö. Om du kör flera diagnostikinspelningssessioner ser du att det här antalet fortsätter att växa mellan de olika sessionerna.

Sammanfattningsvis har du ett visst antal ID:n i diagnostiken om du börjar spela in, trycker på utvärdering en gång och stoppar inspelningen. Men eftersom du bara vidtog en åtgärd blir alla 1.1, 1.2, 1.3 och så vidare.

Kombinationen av activityId och evaluationId, avgränsade med punkt, ger en unik identifierare för en utvärdering av en enda inspelningssession.

Söka i data

Namnet på frågan i det vänstra fönstret i Power Query redigeraren.

Steg

Namnet på steget i det högra fönstret i Power Query redigeringsprogram. Saker som filter-listrutan associeras vanligtvis med det steg som du filtrerar på, även om du inte uppdaterar steget.

Kategori

Kategorin för åtgärden.

Typ av datakälla

På så sätt kan du se vilken typ av datakälla du använder, till exempel SQL eller Oracle.

Åtgärd

Den faktiska åtgärd som utförs. Den här åtgärden kan omfatta utvärderingsarbete, öppna anslutningar, skicka frågor till datakällan och mycket mer.

Starttid

Tiden då åtgärden startade.

Sluttid

Tiden då åtgärden avslutades.

Exklusiv varaktighet (%)

Kolumnen Exklusiv varaktighet för en händelse är hur lång tid händelsen var aktiv. Detta kontrasterar med värdet för "varaktighet" som är resultatet av subtraktion av värdena i en händelses starttidskolumn och kolumnen Sluttid. Det här värdet för "varaktighet" representerar den totala tiden som förflutit mellan när en händelse startades och när den avslutades, vilket kan inkludera tider då händelsen var i ett pausat eller inaktivt tillstånd och en annan händelse förbrukade resurser.

Den exklusiva varaktigheten % är cirka 100 % inom en viss utvärdering, vilket representeras av kolumnen Id. Om du till exempel filtrerar på rader med ID 1.x summeras procentandelen exklusiv varaktighet till cirka 100 %. Detta är inte fallet om du summerar värdena för Exklusiv varaktighet % för alla rader i en viss diagnostiktabell.

Exklusiv varaktighet

Den absoluta tiden, i stället för %, för exklusiv varaktighet. Den totala varaktigheten (det vill säga exklusiv varaktighet + tid när händelsen var inaktiv) för en utvärdering kan beräknas på något av två sätt:

  • Leta upp åtgärden "Evaluation" (Utvärdering). Skillnaden mellan Starttid – för sluttid resulterar i den totala varaktigheten för en händelse.

  • Subtrahera den minsta starttiden för alla åtgärder i en händelse från den maximala sluttiden. Observera att om informationen som samlas in för en händelse inte tar hänsyn till den totala varaktigheten genereras en åtgärd med namnet "Spårningsluckor" för att ta hänsyn till det här tidsgapet.

Resurs

Den resurs som du kommer åt för data. Det exakta formatet för den här resursen beror på datakällan.

Fråga om datakälla

Power Query gör något som kallas vikning, vilket innebär att köra så många delar av frågan mot backend-datakällan som möjligt. I Direct Query-läge (över Power Query), där aktiverat, körs endast transformeringar som viker. I importläge körs transformeringar som inte kan lägga sig lokalt i stället.

I kolumnen Datakällsfråga kan du se frågan eller HTTP-begäran/-svaret som skickas mot datakällan i backend-datakällan. När du skapar din fråga i redigeraren genereras många datakällsfrågor. Några av dessa är den faktiska slutliga datakällfrågan för att rendera förhandsversionen, men andra är till för dataprofilering, filter-listrutan, information om kopplingar, hämtning av metadata för scheman och val av andra små frågor.

I allmänhet bör du inte bekymra dig om antalet datakällfrågor som genereras såvida det inte finns särskilda skäl att oroa sig. I stället bör du fokusera på att se till att rätt innehåll hämtas. Den här kolumnen kan också hjälpa dig att avgöra Power Query utvärderingsutvärderingen var helt vikt.

Ytterligare info

Det finns mycket information som hämtas av våra anslutningsappar. Mycket av det är ojämnt och passar inte bra i en standardkolumnhierarki. Den här informationen läggs till i en post i den ytterligare informationskolumnen. Information som loggas från anpassade anslutningsappar visas också här.

Radantal

Antalet rader som returneras av en datakällfråga. Inte aktiverat på alla anslutningsappar.

Innehållslängd

Innehållslängd som returneras av HTTP-begäranden enligt den vanliga definitionen. Detta är inte aktiverat i alla anslutningsappar och kommer inte att vara korrekt för anslutningsappar som hämtar begäranden i segment.

Är användarfråga

Ett booleskt värde som anger om det är en fråga som skapats av användaren och finns i den vänstra rutan, eller om den har genererats av någon annan användaråtgärd. Andra användaråtgärder kan till exempel inkludera filterval eller att använda navigatören i hämta data-upplevelsen.

Sökväg

Sökvägen representerar den relativa vägen för åtgärden när den visas som en del av ett intervallträd för alla åtgärder inom en enda utvärdering. Längst upp (roten) i trädet finns en enda åtgärd som heter Utvärdering med sökvägen "0". Starttiden för den här utvärderingen motsvarar starten av utvärderingen som helhet. Sluttiden för den här utvärderingen visar när hela utvärderingen har slutförts. Den här åtgärden på den översta nivån har en exklusiv varaktighet på 0, eftersom dess enda syfte är att fungera som roten i trädet.

Ytterligare operationsgren från roten. En åtgärd kan till exempel ha "0/1/5" som sökväg. Den här sökvägen kan tolkas som:

  • 0: trädrot
  • 1: den aktuella åtgärdens överordnade åtgärd
  • 5: index för den aktuella åtgärden

Åtgärden "0/1/5" kan ha en underordnad nod, i vilket fall sökvägen har formen "0/1/5/8", där 8 representerar indexet för det underordnade.

Grupp-ID

Att kombinera två (eller flera) åtgärder inträffar inte om det leder till detaljförlust. Gruppningen är utformad för att göra en ungefärlig uppskattning av "kommandon" som körs under utvärderingen. I den detaljerade vyn delar flera åtgärder ett grupp-ID som motsvarar de grupper som aggregeras i vyn Sammanfattning.

Precis som med de flesta kolumner är grupp-ID:t endast relevant inom en viss utvärdering, enligt kolumnen Id.

Schema för datasekretesspartitioner

Id

Samma som ID:t för de andra frågediagnostikresultaten. Heltalsdelen representerar ett enda aktivitets-ID, medan bråkdelen representerar en enskild utvärdering.

Partition Key (Partitionsnyckel)

Motsvarar frågan/steget som används som en brandväggspartition.

Brandväggsgrupp

Kategorisering som förklarar varför den här partitionen måste utvärderas separat, inklusive information om sekretessnivån för partitionen.

Resurser som används

Lista över resurssökvägar för alla resurser som nås av den här partitionen och som i allmänhet identifierar en datakälla unikt.

Partitionsindata

Lista över partitionsnycklar som den aktuella partitionen är beroende av (den här listan kan användas för att skapa en graf).

Uttryck

Uttrycket som utvärderas ovanpå partitionens fråga/steg. I flera fall sammanträffar den med frågan/steget.

Starttid

Tid när utvärderingen startade för den här partitionen.

Sluttid

Tid när utvärderingen avslutades för den här partitionen.

Varaktighet

Ett värde som härletts från Sluttid minus Starttid.

Exklusiv varaktighet

Om partitioner antas köras i en enda tråd är exklusiv varaktighet den "verkliga" varaktigheten som kan tillskrivas den här partitionen.

Exklusiv varaktighet %

Exklusiv varaktighet i procent.

Diagnostik

Den här kolumnen visas bara när frågediagnostiken "Aggregerad" eller "Detaljerad" också avbildas, så att användaren kan motsvara de två diagnostikutdata.

Schema för prestandaräknare

När du kör prestandaräknare tar varje halv sekund Power Query ögonblicksbild av resursanvändningen. Den här ögonblicksbilden är inte användbar för mycket snabba frågor, men kan vara användbar för frågor som använder mycket mer resurser.

% processortid

Procent av tiden som processorerna använder för frågan. Den här procentandelen kan nå över 100 % på grund av flera processorer.

Total processortid

Total varaktighet för processortiden som ägnats åt frågan.

I/O-databyte per sekund

Dataflödeshastighet för data som tas emot från datakällan, uttryckt i byte per sekund.

Genomför (byte)

Mängden virtuellt minne som reserverats av utvärderingen.

Arbetsuppsättning (byte)

Mängden minne som reserverats av utvärderingen.

Mer att läsa

Registrera diagnostik i olika användningsfall

Mer om att läsa och visualisera dina registrerade spårningar

Så här förstår du vad frågeåtgärder är dekning med frågediagnostik