Problemen met prestaties identificeren

Gevorderde gegevensmodellering in Power BI

Sara Billen

Curriculum Manager at DataCamp

Prestatieproblemen oplossen

Een vrouw achter een computerscherm waarop een dashboard traag laadt.

Gevorderde gegevensmodellering in Power BI

Prestatieproblemen

Tekening van een zandloper.

Waar het mis kan gaan:

  • Data-import
  • Database bevragen met DirectQuery
  • Visuals weergeven
  • Berekende versus computed-kolommen
  • Inefficiënte relaties
    • Many-to-many-relaties
    • Bidirectionele kruisbewerking
Gevorderde gegevensmodellering in Power BI

Data-import optimaliseren

  • Verwijder onnodige rijen en kolommen
  • Kies juiste datatypen
    • Numerieke data neemt minder ruimte in
    • Casten en aggregeren is trager
  • Groepeer en vat samen
    • Minder data op schijf opslaan
    • Sneller aggregatieresultaten

Diagram van manieren om data te importeren in Power BI: Excel, CSV en een database.

Gevorderde gegevensmodellering in Power BI

DirectQuery optimaliseren

  • Twee manieren om te verbinden met data:
    • Importmodel: slaat data op in Power BI
    • DirectQuery: bevraagt direct de database

$$

  • Beperk parallelle queries
  • Relationale database-tips
    • Schrijf efficiënte SQL-queries
    • Gebruik passende indexen
    • Haal de juiste kolommen en rijen op

Diagram van manieren om data te laden in Power BI. Importfunctionaliteit aan de ene kant en DirectQuery (verbonden met een database) aan de andere.

Gevorderde gegevensmodellering in Power BI

Berekende versus computed-kolommen

Maak aangepaste kolommen met:

Berekende kolommen Berekende (computed) kolommen
DAX Power Query (M)
Snel voor simpele berekeningen Snel voor simpele berekeningen
Traag voor complexe berekeningen Snel voor complexe berekeningen
Per visual op runtime gegenereerd Eén keer bij import gegenereerd
Gevorderde gegevensmodellering in Power BI

Bidirectioneel filteren verwijderen met filtermeasures

  • Use case voor bidirectioneel filteren
    • Relevante slicer-opties vinden tussen dimensies
  • We kunnen filtermeasures maken om bidirectionele relaties te vermijden voor de derde use case!
Gevorderde gegevensmodellering in Power BI

Bidirectioneel filteren verwijderen met filtermeasures

Datamodel in Power BI met alleen enkelzijdige filters en de Slicer_MyFactTable-filtermeasure.

Gevorderde gegevensmodellering in Power BI

Bidirectioneel filteren verwijderen met filtermeasures

1) Maak een filtermeasure in DAX:

Slicer_MyFactTable = INT(NOT ISEMPTY('My Fact Table'))
  • Geeft 1 terug als er minstens één waarde in de facttabel is
  • Geeft 0 terug als er geen waarden in de facttabel zijn

$$

2) Voeg een visueel filter toe aan de slicer en stel in dat Slicer_MyFactTable = 1

Gevorderde gegevensmodellering in Power BI

Visuals weergeven

Computerscherm met een rapport in de Power BI-app.

$$

  • Gebruik beperkende filters om data te minimaliseren
  • Toon zo weinig mogelijk data in visuals
  • Beperk het aantal visuals per pagina
  • Gebruik alleen snelle custom visuals
Gevorderde gegevensmodellering in Power BI

Laten we oefenen!

Gevorderde gegevensmodellering in Power BI

Preparing Video For Download...