Power BI rapport sneller maken: 7 tips
Een traag Power BI-rapport los je op door het aantal visuals per pagina te beperken, Import-modus te gebruiken waar mogelijk, auto date/time uit te schakelen, DAX-measures te vereenvoudigen en de Performance Analyzer te gebruiken om de trage visuals te identificeren. Begin altijd met meten via de Performance Analyzer voordat je aanpassingen maakt.
Een traag Power BI-rapport frustreert gebruikers en verbergt inzichten. Met deze zeven tips verbeter je de prestaties zonder het rapport opnieuw te bouwen.
Tip 1: gebruik Import-modus waar mogelijk
DirectQuery stuurt bij elke interactie een query naar de databron. Dat is altijd trager dan Import-modus, waarbij data lokaal is opgeslagen in de dataset. Als je data niet per minuut hoeft te verversen, kies dan Import. Je kunt meerdere keren per dag verversen en het rapport reageert veel sneller. Overweeg een Composite Model als je zowel actuele data als grote datasets nodig hebt: grote historische tabellen in Import, de meest actuele transacties via DirectQuery.
Tip 2: beperk het aantal visuals per pagina
Elke visual op een rapportpagina voert een eigen DAX-query uit bij het laden. Vijftien visuals op één pagina betekent vijftien gelijktijdige queries. Dat stapelt snel op, zeker in combinatie met complexe measures. Streef naar maximaal zes tot acht visuals per pagina. Verplaats details naar doorklikpagina’s en gebruik bladwijzers om visuals te wisselen in plaats van alles tegelijk te tonen.
Tip 3: schakel auto date/time uit
Power BI maakt standaard voor elke datumkolom een verborgen datumhiërarchietabel. Bij tien datumkolommen in je model genereert dat tien extra tabellen. Ze worden niet getoond, maar nemen wel ruimte in en vertragen het laden. Schakel auto date/time uit in de bestandsopties en gebruik een eigen datumtabel voor tijdsintelligentie. Die aanpak is sneller en geeft je volledige controle over de datumhiërarchie.
Tip 4: gebruik de Performance Analyzer
Voordat je iets optimaliseert, meet je eerst wat traag is. De Performance Analyzer in Power BI Desktop (tabblad Weergave) toont per visual de DAX-querytijd, de visuele rendertijd en de andere verwerkingstijd. Focus op de DAX-querytijd: dat is bijna altijd de bottleneck. Visuals met querytijden boven 500 milliseconden pak je als eerste aan. Kopieer de DAX-query uit de Performance Analyzer en analyseer die in DAX Studio voor nog meer detail.
Tip 5: optimaliseer DAX-measures
Vermijd onnodige FILTER-iteraties over grote tabellen. CALCULATE(SUM(Omzet[Bedrag]), FILTER(Omzet, Omzet[Categorie] = "A")) is trager dan CALCULATE(SUM(Omzet[Bedrag]), Omzet[Categorie] = "A"). De tweede versie gebruikt een directe kolomfilter zonder over elke rij te itereren. Vermijd ook het gebruik van SUMX of AVERAGEX op grote tabellen als een eenvoudige SUM of AVERAGE volstaat.
Tip 6: gebruik aggregaties voor grote datasets
Als je dataset miljoenen rijen bevat, overweeg dan aggregatietabellen. Een aggregatietabel bevat vooraf berekende samenvattingen, zoals omzet per dag per regio. Power BI gebruikt die aggregatietabel automatisch voor queries op hoog niveau en valt terug op de detailtabel alleen als de gebruiker inzomt. Aggregaties zijn beschikbaar in zowel Import- als DirectQuery-modus en kunnen de querytijd met een factor tien of meer verbeteren.
Tip 7: verwijder ongebruikte kolommen
Elke kolom in je Import-dataset neemt geheugen in beslag. Kolommen die je niet gebruikt in visuals of DAX-measures, verwijder je in Power Query voordat de data wordt geladen. Ga naar de stap ‘Overige kolommen verwijderen’ en selecteer alleen wat je nodig hebt. Hetzelfde geldt voor measures: een model met honderd ongebruikte measures laadt trager dan een opgeruimd model.
Onze tip: Gebruik DAX Studio (gratis downloadbaar) voor diepgaande prestatieanalyses. Plak de DAX-query uit de Performance Analyzer in DAX Studio en bekijk het queryplan. Dat laat je zien welke tabellen gescand worden en waar de meeste tijd verloren gaat, informatie die Power BI Desktop zelf niet toont.
Veelgestelde vragen
Hoe gebruik ik de Performance Analyzer in Power BI?
Open je rapport in Power BI Desktop en ga naar het tabblad Weergave. Klik op 'Performance Analyzer' en klik vervolgens op 'Opname starten'. Vernieuw de visuals op de pagina door op 'Visuals vernieuwen' te klikken. De Performance Analyzer toont per visual hoeveel tijd er besteed is aan de DAX-query, de visuele weergave en andere bewerkingen. Visuals met DAX-querytijden boven de 500 milliseconden zijn kandidaten voor optimalisatie.
Wat is auto date/time in Power BI en waarom schakel ik het uit?
Auto date/time is een standaardfunctie in Power BI die automatisch een verborgen datumhiërarchie aanmaakt voor elke datumkolom in je model. Dat klinkt handig, maar het genereert voor elke datumkolom een aparte verborgen tabel. Bij modellen met veel datumkolommen vergroot dit de dataset aanzienlijk en vertraagt het de laadtijd. Als je een eigen datumtabel hebt, schakel auto date/time dan uit via Bestand > Opties > Gegevens laden > Auto datum/tijd.
Hoeveel visuals mag een Power BI-rapportpagina hebben?
Er is geen harde limiet, maar in de praktijk merk je prestatieproblemen zodra een pagina meer dan acht tot tien visuals heeft. Elke visual voert een aparte DAX-query uit bij het laden van de pagina. Tien visuals betekent tien gelijktijdige queries. Gebruik bladwijzers om visuals te wisselen in plaats van ze allemaal tegelijk te laden, of verdeel de informatie over meerdere pagina's.