report je pomalý slyšel pravděpodobně každý vývojář reportů. Minimálně z těch, jejichž tvorba je používána koncovými uživateli :)
Což zjistíme díky logování a monitorování využití (psal jsem zde http://www.neoral.cz/2018/02/power-bi-monitoring-vyuziti-reportu.html).
Datovým modelováním a optimalizací datového modelu jsem se zabýval mimo jiné na WUG Days v této přednášce
(přetočte zhruba na 1:10:00). Pro ladění bylo potřeba v DAX Studiu zapnout tracing, vymazat cache, klikat, analyzovat atd.
Nyní se ale proces ladění Power BI reportů zjednodušuje díky Performance Analyzeru přímo v Power BI Desktopu (představeno v updatu květen 2019) a tom je právě dnešní blog post.
Performance analyzer zobrazíte na záložce view jako jedno ze zatržítek
Objeví se lišta s následující nabídkou
Pokud zapnete nahrávání, můžete provádět libolné interakce na reportu. Kliknul jsem refresh visuals a vypadlo tohle
Nejvyšší čas v milisekundách nemusí nutně znamenat největší problém.
Když rozbalím vizualizace s časem přes 3 vteřiny, uvidím rozpad na DAX Query, Visual Display a Other.
Nabízí se otázka, co který tento čas znamená. DAX query je doba pro vyhodnocení DAX dotazu. Visual display doba na zobrazení vizualizace záludně se tváří Other.
Dokumentace tvrdí, že Other pokrývá čas pro přípravu dotazu, čekání na ostatní vizualizace až doběhnou a cokoliv dalšího.
Takže z posledního obrázku je zřejmé, že Improvers a Decliners vizualizace dlouho trval DAXový dotaz, dalo by se s tímto něco dělat.
Tlačítko Copy query umožňuje dotaz vykopírovat do notepadu (kde toho moc neuděláte) nebo do DAX Studia, kde můžete ladit.
Najít například measure, která způsobuje problémy a řešit její optimalizaci.
U kategorie other bude ladění komplikovanější, protože se může jednat i o čas čekání, než doběhnou všechny ostatní vizualizace a to může být dáno jen počtem vizualizací na straně.
Každopádně je dobré, že se rozšiřují možnosti pro ladění přímo v Power BI Desktopu