Logga frågediagnostik i Power BI

När du redigerar i Power Query är det grundläggande arbetsflödet att du ansluter till en datakälla, tillämpar vissa transformeringar, potentiellt uppdaterar dina data i Power Query-redigeraren och sedan läser in dem i Power BI-modellen. När den finns i Power BI-modellen kan du uppdatera den då och då i Power BI Desktop (om du använder Desktop för att visa analys), förutom alla uppdateringar som du gör i tjänsten.

Även om du kan få ett liknande resultat i slutet av ett redigeringsarbetsflöde, vid uppdatering i redigeraren eller vid uppdatering i Power BI, körs helt olika utvärderingar av programvaran för de olika användarupplevelserna som erbjuds. Det är viktigt att veta vad du kan förvänta dig när du utför frågediagnostik i dessa olika arbetsflöden så att du inte blir förvånad över de mycket olika diagnostikdata.

Starta Frågediagnostik genom att gå till fliken Verktyg i menyfliksområdet i Power Query-redigeraren. Här visas några olika alternativ.

Frågediagnostikkontroll.

Det finns två primära alternativ här, "Diagnostiksteg" och "Starta diagnostik" (parat med "Stoppa diagnostik"). Den förra ger dig information om en fråga upp till ett valt steg och är mest användbar för att förstå vilka åtgärder som utförs lokalt eller via fjärranslutning i en fråga. Det senare ger dig mer insikt i en mängd andra fall, som beskrivs nedan.

Egenskaper för anslutningsapp

Det är viktigt att nämna att det inte finns något sätt att täcka alla olika permutationer av det du ser i Frågediagnostik. Det finns många saker som kan ändra exakt vad du ser i resultat:

  • Connector
  • Transformeringar som tillämpas
  • System som du kör på
  • Konfiguration av nätverk
  • Avancerade konfigurationsalternativ
  • ODBC-konfiguration

För den mest omfattande täckningen fokuserar den här dokumentationen på frågediagnostik i tabellen Northwind-kunder, både på SQL och OData. OData-anteckningarna använder den offentliga slutpunkten som finns på webbplatsen OData.org, medan du måste tillhandahålla en SQL-server för dig själv. Många datakällor skiljer sig avsevärt från dessa och kommer att lägga till anslutningsspecifik dokumentation över tid.

Starta/stäng diagnostik

"Startdiagnostik" och "Stoppa diagnostik" är mer generellt användbara än "Diagnostiksteg", men ger dig också mycket mer information som du behöver gå igenom och sortera. Om du till exempel startar diagnostik, uppdaterar en förhandsversion och sedan stoppar får du motsvarande information om att köra Diagnostiseringssteg i varje steg (på grund av hur Power Query fungerar i redigeraren för att uppdatera varje steg separat).

Starta inspelningen genom att välja Starta diagnostik, utföra de utvärderingar du vill ha (redigering, förhandsgranskningsuppdatering, fullständig uppdatering) och välj sedan Stoppa diagnostik.

Författande

Den primära skillnaden i redigeringsarbetsflödet är att det vanligtvis genererar fler enskilda utvärderingar än vad som visas i andra arbetsflöden. Som beskrivs i den primära "Query Diagnostics"-artikeln är dessa ett resultat av att fylla i olika användargränssnitt, till exempel navigeringsverktyget eller filtermenyer.

Vi ska gå igenom ett exempel. Vi använder OData-anslutningsappen i det här exemplet, men när vi granskar utdata tittar vi också på SQL-versionen av samma databas. För båda datakällorna ska vi ansluta till datakällan via "Ny källa", "Senaste källor" eller "Hämta data". För SQL-anslutningen måste du ange autentiseringsuppgifter för servern, men för den offentliga OData-slutpunkten kan du placera i slutpunkten som är länkad ovan.

OData-anslutning.

När du har anslutit och valt autentisering väljer du tabellen Kunder från OData-tjänsten.

Northwind-navigering.

Då visas tabellen Kunder i Power Query-gränssnittet. Anta att vi vill veta hur många säljare det finns i olika länder/regioner. Högerklicka först på Säljare under kolumnen Kontaktrubrik , musa över textfilter och välj Lika med.

Använd textfilter för kontaktrubriken.

Välj nu Gruppera efter i menyfliksområdet och gör en gruppering efter Land, där din aggregering är en Räkning.

Använd Gruppera efter.

Detta bör ge dig samma data som du ser nedan.

Resultat.

Gå slutligen tillbaka till fliken Verktyg i menyfliksområdet och välj Stoppa diagnostik. Detta stoppar spårningen och skapar diagnostikfilen åt dig, och sammanfattningen och de detaljerade tabellerna visas till vänster.

Om du spårar en hel redigeringssession förväntar du dig vanligtvis att se något som liknar en källfrågeutvärdering, sedan utvärderingar relaterade till den relevanta navigatören och sedan minst en fråga som genereras för varje steg du tillämpar (med potentiellt mer beroende på de exakta UX-åtgärder som vidtagits). I vissa kontakter kommer parallella utvärderingar att ske för prestandaändamål, vilket resulterar i mycket liknande datamängder.

Uppdatera förhandsgranskning

När du har transformerat dina data har du en sekvens med steg i en fråga. När du trycker på "Uppdatera förhandsgranskning" eller "Uppdatera alla" i Power Query-redigeraren visas inte bara ett steg i frågediagnostiken. Anledningen till detta är att uppdatering i Power Query-redigeraren uttryckligen uppdaterar frågan som slutar med det sista steget som tillämpades och sedan går tillbaka genom de tillämpade stegen och uppdaterar för frågan fram till den punkten, tillbaka till källan.

Det innebär att om du har fem steg i din fråga, inklusive Källa och Navigatör, förväntar du dig att se fem olika utvärderingar i diagnostiken. Den första, kronologiskt, tar ofta (men inte alltid) längst. Detta beror på två olika orsaker:

  • Det kan cachelagra indata som senare frågor (som representerar tidigare steg i användarfrågan) kan komma åt lokalt snabbare.
  • Det kan ha transformationer som tillämpas på det som avsevärt begränsar mängden data som måste returneras.

Observera att när du talar om "Uppdatera alla" uppdateras alla frågor och du måste filtrera efter de som du bryr dig om, som du kan förvänta dig.

Fullständig uppdatering

Frågediagnostik kan användas för att diagnostisera den så kallade "slutgiltiga frågan" som genereras under uppdateringen i Power BI i stället för bara Power Query-redigeraren. För att göra detta måste du först läsa in data till modellen en gång. Om du planerar att göra detta ser du till att om du väljer Stäng och Tillämpa att redigeringsfönstret stängs (avbryter spårningen) så måste du antingen göra det vid den andra uppdateringen eller välja listruteikonen under Stäng och Tillämpa och välj Använd i stället.

Tillämpa frågeändringar.

Hur som helst, se till att välja Starta diagnostik i avsnittet Diagnostik på fliken Verktyg i redigeraren. När du har gjort det här uppdaterar du din modell, eller till och med bara tabellen du är intresserad av.

Uppdatera tabell.

När det är klart att läsa in data till modellen väljer du Stoppa diagnostik.

Du kan förvänta dig att se en kombination av metadata och datafrågor. Metadataanrop hämtar den information den kan om datakällan. Datahämtning handlar om att komma åt datakällan, generera den slutliga uppbyggda datakällfrågan med ihopfällbara operationer, och sedan lokalt utföra de utvärderingar som saknas.

Det är viktigt att observera att bara för att du ser en resurs (databas, webbslutpunkt osv.) eller en datakällafråga i diagnostiken betyder det inte att den nödvändigtvis utför nätverksaktivitet. Power Query kan hämta den här informationen från cacheminnet. I framtida uppdateringar anger vi om information hämtas från cacheminnet för enklare diagnos.

Diagnostiskt steg

"Diagnostisera steg" är mer användbart för att få en inblick i vilka utvärderingar som sker upp till ett enda steg, vilket kan hjälpa dig att identifiera, fram till det steget, hur prestanda är samt vilka delar av frågan som utförs lokalt eller på distans.

Om du använde "Diagnostisera steg" i frågan som vi skapade ovan ser du att den bara returnerar ett tiotal rader, och om vi tittar på den sista raden med en datakällfråga kan vi få en ganska bra uppfattning om vad vår slutgiltiga utelämnade fråga till datakällan blir. I det här fallet kan vi se att säljrepresentanten filtrerades via fjärranslutning, men gruppering (efter elimineringsprocess) skedde lokalt.

Diagnostisera den filtrerade och grupperade kundtabellen.

Om du startar och stoppar diagnostik och uppdaterar samma fråga får vi 40 rader på grund av att Power Query, som nämnts ovan, får information om varje steg, inte bara det sista steget. Detta gör det svårare när du bara försöker få insikt i en viss del av frågan.

Ytterligare läsning

En introduktion till funktionen

Mer om att läsa och visualisera inspelade spårningar

Så här förstår du vilka frågeoperationer som viks med hjälp av frågediagnostik