Aanbevolen procedures voor de prestaties van Power BI EmbeddedPower BI Embedded performance best practices

Dit artikel bevat aanbevelingen voor het sneller weergeven van rapporten, dashboards en tegels in uw toepassing.This article provides recommendations for faster rendering of reports, dashboards, and tiles in your application.

Notitie

Houd er rekening mee dat de laadtijd voornamelijk afhankelijk is van elementen die relevant zijn voor het rapport en de gegevens zelf, waaronder visualisaties, de grootte van de gegevens en de complexiteit van de query's en metingen.Remember that loading time mainly depends on elements relevant to the report and data itself, including visuals, the size of the data, and the complexity of the queries and measures. Raadpleeg de Optimalisatiegids voor Power BI voor meer informatie.For more information, see the Power BI optimization guide.

Hulpprogramma's voor bijwerken en SDK-pakkettenUpdate tools and SDK packages

Hiermee houdt u hulpprogramma's en SDK-pakketten bijgewerkt.Keep tools and SDK packages up-to-date.

  • Gebruik altijd de nieuwste versie van Power BI Desktop.Always use the latest version of Power BI Desktop.

  • Installeer de nieuwste versie van de Power BI-client-SDK.Install the latest version of the Power BI client SDK. Er worden doorlopend nieuwe verbeteringen geïntroduceerd. Het is dan ook raadzaam om hier regelmatig even naar te kijken.We continuously release additional enhancements, so make sure to follow up from time to time.

Ingesloten parametersEmbed parameters

De methode powerbi.embed(element, config) ontvangt een element en een parameter config. De parameter config bevat velden die invloed hebben op de prestaties.The powerbi.embed(element, config) method receives an element and a config. The config parameter includes fields that have performance implications.

Insluitings-URLEmbed URL

Genereer de insluitings-URL niet zelf.Avoid generating the embed URL yourself. Haal in plaats daarvan de insluitings-URL op door de API Rapporten ophalen, Dashboards ophalen of Tegels ophalen aan te roepen.Instead, make sure you get the Embed URL by calling Get reports, Get dashboards, or Get tiles API. Er is een nieuwe parameter toegevoegd aan de URL met de naam config. Deze wordt gebruikt voor prestatieverbeteringen.We added a new parameter to the URL called config, which is used for performance improvements.

MachtigingenPermissions

Wijs machtigingen van het type Weergeven toe als u niet van plan bent om een rapport in te sluiten in de bewerkingsmodus.Provide View permissions if you're not intending to embed a report in edit mode. Op deze manier worden er geen onderdelen geïnitialiseerd met invoegcode, die normaal in de bewerkingsmodus worden gebruikt.This way, embedded code doesn't initialize components, which are used in edit mode.

Filters, bladwijzers en slicersFilters, bookmarks, and slicers

Meestal worden rapportvisuals opgeslagen met gegevens in cache.Usually, report visuals are saved with cached data. De gegevens in cache worden gebruikt om te rapporteren over de prestaties.The cached data is used to give perceived performance. In rapporten worden de gegevens in cache weergegeven na het uitvoeren van query's.Reports render cached data while queries are executed. Als er filters, bladwijzers of slicers worden geleverd, zijn gegevens in de cache niet relevant en worden de visualisaties pas weergegeven nadat de visuele query is beëindigd.If filters, bookmarks, or slicers are provided, cached data isn't relevant and the visuals are rendered only after the visual query has ended.

Als u rapporten met dezelfde filters, bladwijzers en slicers insluit, kunt u de prestaties verbeteren door het rapport op te slaan terwijl de filters, bladwijzers en slicers al zijn toegepast.If you embed reports with the same filters, bookmarks, and slicers, to improve your performance, save the report with the filters, bookmarks, and slicers already applied. Het rapport wordt dan weergegeven met de gegevens in de cache, inclusief de filters, bladwijzers en slicers.This renders the report with the cached data which includes the filters, bookmarks, and slicers.

Schakelen tussen rapportenSwitching between reports

Wanneer u meerdere rapporten in hetzelfde iframe insluit, moet u niet voor elk rapport een nieuw iframe genereren.When embedding multiple reports to the same iframe, don't generate a new iframe for each report. Gebruik in plaats daarvan powerbi.embed(element, config) met een andere configuratie om het nieuwe rapport in te sluiten.Instead, use powerbi.embed(element, config) with a different config to embed the new report.

Notitie

Wanneer u schakelt tussen rapporten bij het insluiten van inhoud voor uw klanten (ook wel bekend als een 'app is eigenaar van de gegevens'-scenario genoemd), is het gebruik van een insluittoken met machtigingen vereist voor alle rapporten en gegevenssets.Switching between reports when embedding for your customers (also known as an 'app owns data' scenario), requires the use of an embed token with permissions to all reports and datasets. Zie token-API genereren voor meer informatie.For more information, see the generate token API.

Query's in cache opslaanQuery caching

Organisaties met Power BI Premium of Power BI Embedded kunnen query's opslaan in de cache om rapporten die zijn gekoppeld aan een gegevensset sneller weer te geven.Organizations with Power BI Premium capacity or Power BI Embedded capacity can take advantage of query caching to speed up reports associated with a dataset.

Lees hier meer over het in de cache opslaan van query's in Power BI.Learn more about query caching in Power BI.

Vooraf ladenPreload

Gebruik powerbi.preload() om de prestaties bij de eindgebruiker te verbeteren.Use powerbi.preload() to improve the end-user performance. Met de methode powerbi.preload() worden JavaScript, CSS-bestanden en andere artefacten gedownload. Deze worden later gebruikt voor het insluiten van een rapport.The method powerbi.preload() downloads Javascript, css files, and other artifacts, which are used later to embed a report.

Roep powerbi.preload() aan als u het rapport niet direct gaat insluiten.Call powerbi.preload() if you're not embedding the report immediately. Als ingesloten Power BI-inhoud bijvoorbeeld niet verschijnt op de startpagina, gebruikt u powerbi.preload() om de artefacten die worden gebruikt om de inhoud op te slaan in de inhoud te downloaden en in de cache op te slaan.For example, if the Power BI embedded content doesn't appear in the home page, use powerbi.preload() to download and cache the artifacts that are used for embedding the content.

Het iframe bootstrappenBootstrapping the iframe

Notitie

Power BI client SDK versie 2.9 is vereist om het iframe te bootstrappen.Power BI client SDK version 2.9 is required to bootstrap the iframe.

Met powerbi.bootstrap(element, config) kunt u met insluiten beginnen voordat alle vereiste parameters beschikbaar zijn.powerbi.bootstrap(element, config) allows you to start embedding before all required parameters are available. De bootstrap-API bereidt het iframe voor en initialiseert het.The bootstrap API prepares and initializes the iframe. Wanneer u de bootstrap-API gebruikt, is het nog steeds nodig om powerbi.embed(element, config) aan te roepen voor hetzelfde HTML-element.When using the bootstrap API, it's still required to call powerbi.embed(element, config) on the same HTML element.

Een van de gebruiksvoorbeelden voor deze functie is bijvoorbeeld om de iframe-bootstrap en de back-endaanroepen voor insluiting tegelijkertijd uit te voeren.For example, one of the use cases for this feature, is to run the iframe bootstrap and the back-end calls for embedding, in parallel.

Tip

Gebruik de bootstrap-API wanneer het mogelijk is om het iframe te genereren voor het zichtbaar is voor de eindgebruiker.Use the bootstrap API when it's possible to generate the iframe before it's visible to the end user.

Lees hier meer over het bootstrappen van het iframe.Learn more about iframe bootstrap.

Prestaties metenMeasure performance

PrestatiegebeurtenissenPerformance events

Als u de ingesloten prestaties wilt meten, kunt u twee gebeurtenissen gebruiken:To measure embedded performance, you may use two events:

  1. Geladen gebeurtenis: De tijd tot het rapport wordt geïnitialiseerd (het Power BI-logo verdwijnt wanneer het laden is voltooid).Loaded event: The time until the report is initialized (the Power BI logo will disappear when the load is finished).
  2. Weergegeven gebeurtenis: De tijd totdat het volledige rapport wordt weergegeven, met de feitelijke gegevens.Rendered event: The time until the report is fully rendered, using the actual data. De weergegeven gebeurtenis wordt steeds opnieuw geactiveerd wanneer het rapport wordt vernieuwd (bijvoorbeeld na het toepassen van filters).The rendered event is fired each time the report is re-rendered (for example, after applying filters). Als u een rapport wilt meten, moet u de berekeningen uitvoeren voor de eerste gebeurtenis.To measure a report, make sure you do the calculations on the first raised event.

Gegevens in de cache worden weergegeven als deze beschikbaar zijn, maar er wordt dan geen extra gebeurtenis gegenereerd.Cached data is rendered when available but no additional event is generated.

Lees hier meer over de afhandeling van gebeurtenissen.Learn more about event handling.

Performance AnalyzerPerformance Analyzer

Als u de prestaties van de rapportelementen wilt controleren, kunt u hiervoor Performance Analyzer in Power BI Desktop gebruiken.To examine the performance of the report elements, you might use the Performance Analyzer in Power BI Desktop. Met Performance Analyzer kunt u logboeken bekijken en vastleggen die meten hoe elk van de rapportelementen presteert.The Performance Analyzer will allow you to see and record logs that measure how each of your report elements performs.

Lees hier meer over Performance Analyzer.Learn more about Performance Analyzer.

Notitie

Vergeet niet om de prestaties van het ingesloten rapport te vergelijken met de prestaties op powerbi.com.Always remember to compare the embedded report performance to the performance on powerbi.com. Dit kan helpen om een beeld te krijgen van de oorzaak van prestatieproblemen.This might help you understand the origin of your performance issues

Volgende stappenNext steps