Share via


Metodtips för snabbare prestanda i Power BI Embedded-analys

Den här artikeln innehåller rekommendationer för snabbare återgivning av rapporter, instrumentpaneler och paneler i ditt program.

Kommentar

Kom ihåg att inläsningstiden främst beror på element som är relevanta för själva rapporten och data, inklusive visuella objekt, datastorleken och komplexiteten i frågorna och måtten. Mer information finns i Power BI-optimeringsguiden.

Uppdatera verktyg och SDK-paket

Håll verktyg och SDK-paket uppdaterade.

  • Använd den senaste versionen av Power BI Desktop.
  • Installera den senaste versionen av Power BI-klient-SDK:et. Vi släpper kontinuerligt nya förbättringar, så se till att följa upp då och då.
  • Använd den senaste versionen av Tabellredigeraren.

Initiera inbäddning

Förinläsning

Använd powerbi.preload() för att förbättra slutanvändarens prestanda. Metoden powerbi.preload() laddar ned JavaScript, css-filer och andra objekt som används senare för att bädda in en rapport.

Anropa powerbi.preload() om du inte bäddar in rapporten omedelbart. Om det inbäddade Power BI-innehållet till exempel inte visas på startsidan kan du använda powerbi.preload() för att ladda ned och cachelagras de objekt som används för att bädda in innehållet.

Starta iFrame

Kommentar

Power BI-klient-SDK version 2.9 krävs för att starta iFrame.

powerbi.bootstrap(element, config) gör att du kan börja bädda in innan alla obligatoriska parametrar är tillgängliga. Bootstrap-API:et förbereder och initierar iFrame. När du använder bootstrap-API:et måste du fortfarande anropa powerbi.embed(element, config) samma HTML-element.

Ett av användningsfallen för den här funktionen är till exempel att köra iFrame-bootstrap och serverdelsanropen för inbäddning parallellt.

Dricks

Använd bootstrap-API:et när det är möjligt för att generera iFrame innan den visas för slutanvändaren.

När du bäddar in en rapport eller andra Power BI-objekt kontrollerar du att inbäddningscontainern är en del av DOM och att css-attributet för visning inte är inställt på inget eftersom detta kan orsaka oväntade beteenden. Om du vill dölja inbäddningscontainern bör du överväga att använda CSS-attributet synlighet.

Inbäddningsparametrar

Metoden powerbi.embed(element, config) tar emot ett element och en konfigurationsparameter. Konfigurationsparametern innehåller fält som har prestandakonsekvenser.

Bädda in URL

Undvik att generera inbäddnings-URL:en på egen hand. Kontrollera i stället att du får inbäddnings-URL:en genom att anropa Api:et Hämta rapporter, Hämta instrumentpaneler eller Hämta paneler. Konfigurationsparametern i URL:en används för prestandaförbättringar.

Behörigheter

Ange Visa behörigheter om du inte tänker bädda in en rapport i redigeringsläge. På så sätt ägnas inte tid åt att initiera komponenter som endast används i redigeringsläge.

Filter, bokmärken och utsnitt

Vanligtvis sparas visuella rapportobjekt med cachelagrade data. Rapporter återger cachelagrade data medan frågor körs. Om filter, bokmärken eller utsnitt tillhandahålls används inte cachelagrade data och de visuella objekten återges först när den visuella frågan har avslutats.

Om du bäddar in rapporter med samma filter, bokmärken och utsnitt sparar du rapporten med de filter, bokmärken och utsnitt som redan har tillämpats. När du sparar rapporten på det här sättet återges den med hjälp av cachelagrade data som innehåller filter, bokmärken och utsnitt, vilket förbättrar prestandan.

Växla mellan rapporter

När du bäddar in flera rapporter i samma utrymme ska du inte generera en ny iFrame för varje rapport. Bädda i stället in den nya rapporten i samma iFrame för att skriva över den tidigare rapporten. Använd powerbi.embed(element, config) med en annan konfiguration för att bädda in den nya rapporten.

Kommentar

Inbäddning av rapporter med inbäddning för dina kunder (även kallat ett scenario med "appen äger data") kräver användning av en inbäddningstoken med behörighet till alla rapporter och semantiska modeller. Mer information finns i API:et för att generera token.

Flera visuella objekt

När du bäddar in flera visuella objekt från samma rapport ska du inte generera en ny iFrame för varje visuellt objekt. Använd en enda iFrame för att återge rapporten med de angivna visuella objekten.

Tänk på följande när du bäddar in flera visuella objekt i en enda iFrame:

  • Power BI använder iFrames för att bädda in en rapport. Ibland kanske du vill lägga till mer innehåll mellan de visuella objekten (till exempel text eller grafik som inte kommer från rapporten). I så fall kan du behöva en annan iFrame för att återge olika visuella objekt. För bästa prestanda kan du prova att ordna de visuella objekten så att du använder så få iFrames som möjligt. Om du vill minska antalet iFrames bör du överväga att använda funktionen anpassad layout.

  • Om du har visuella objekt från olika rapporter eller olika semantiska modeller kan du gå med i de semantiska modellerna och skapa en ny rapport så att du kan inkludera alla visuella objekt i samma iFrame.

  • Ett annat alternativ, om du har icke-sammanhängande regioner eller data från flera semantiska modeller, är att skapa en instrumentpanel och fästa de visuella objekten på den. På så sätt kan du:

    • Bädda in de enskilda panelerna i icke-sammanhängande iFrames. Panelerna på instrumentpanelen är lättare än rapporter och läses in snabbare.
    • Bädda in hela instrumentpanelen i en iFrame. På så sätt kan du ha visuella objekt från olika rapporter eller semantiska modeller i en iFrame utan att skapa en ny rapport.

    Tänk dock på att instrumentpaneler inte är interaktiva och inte uppdateras med samma frekvens som visuella objekt.

Cachelagring av frågor

Organisationer med Power BI Premium-kapacitet eller Power BI Embedded-kapacitet kan dra nytta av cachelagring av frågor för att påskynda rapporter som är associerade med en semantisk modell.

Läs mer om cachelagring av frågor i Power BI.

Mäta prestanda

Prestandahändelser

Om du vill mäta inbäddade prestanda kan du använda två händelser:

  1. Inläst händelse: Tiden tills rapporten initieras (Power BI-logotypen försvinner när belastningen är klar).
  2. Renderad händelse: Tiden tills rapporten återges helt med hjälp av faktiska data. Den renderade händelsen utlöses varje gång rapporten återges på nytt (till exempel efter att filter har tillämpats). Om du vill mäta en rapport kontrollerar du att du gör beräkningarna för den första upphöjda händelsen.

Cachelagrade data återges när de är tillgängliga, men ingen annan händelse genereras.

Läs mer om händelsehantering.

Prestandaanalys

Om du vill undersöka prestandan för rapportelementen kan du använda Prestandaanalys i Power BI Desktop. Med Prestandaanalys kan du se och registrera loggar som mäter hur vart och ett av dina rapportelement presterar.

Läs mer om Prestandaanalys.

Kommentar

Kom alltid ihåg att jämföra den inbäddade rapportprestandan med prestanda på powerbi.com. Detta kan hjälpa dig att förstå ursprunget till dina prestandaproblem