Automatizace testování výkonnosti Power BI ušetří hodiny práce a spousty peněz
Ušetřete si hodiny práce a spoustu peněz díky automatizaci testování výkonnosti Power BI. Praktické rady najdete v článku.
Praktické ukázky nástrojů rozšiřujících standardní funkcionality Power BI můžete vidět na našem webináři.
Více informací a registrace na webinář
V datové analýze je důležité zajistit, aby reportingové nástroje fungovaly bezchybně i v momentě, kdy je používají stovky nebo tisíce uživatelů najednou. Automatizace testování výkonnosti, která umí tuto zátěž simulovat, je proto neocenitelná.
Hlavním motivem pro provedení komplexního testování výkonu je přesnější odhad výkonu reportů v prostředí s Premium per capacity licencemi, například při migraci z jiných reportních platforem. Díky komplexnímu testování výkonnosti lze otestovat, jak se budou reporty chovat při paralelním používání mnoha uživateli, kolik licencí by bylo vhodné pořídit na pokrytí reportního portfolia a eventuálně, jaké optimalizace či kompromisy v reportingu bude vhodné provést.
Testování je vhodné provádět i před nasazením komplexnějších reportů do produkčního Premium prostoru, aby se případné problémy zachytily včas a bylo možné je odstranit.
Jak probíhá testování
Testování výkonnosti probíhá simulačním nástrojem pomocí nástroje RealisticLoadTestTool doporučeného přímo Microsoftem, který je přizpůsoben aktuální verzi softwaru a zabezpečení zákazníka. Měření výkonu se provádí prostřednictvím aplikací DAX Studio a Microsoft Fabric Capacity Metrics app.
Testování je prováděno na vybraných reportech, které odpovídají reálným produkčním reportům zákazníka. Data mohou být před testováním anonymizována. Testovací scénáře zahrnují otevírání různých reportovacích stránek s náhodnými sadami filtrů, přičemž je u datasetů vypnuto ukládání do mezipaměti pro lepší simulaci chování nezávislých uživatelů. Ukládání do mezipaměti lze zapnout pro testování scénáře naplnění mezipaměti před pracovní dobou. Každé obnovení stránky reportů níže uvedeného příkladu spouští mezi 3 a 7 dotazy, což umožňuje odhadnout počet interakcí uživatele podle počtu dotazů děleného pěti.
Během testování se simulují otevření mnoha různých stránek reportů v jednotlivých oknech webového prohlížeče a sleduje se trvání dotazů a využití výkonu Premium kapacity.
Analýza naměřených dat v praxi
Na následujících obrázcích jsou vidět vybrané počty dotazů a statistika trvání dotazů analyzovaná v sestavě Power BI na základě exportů JSON z DAX Studio.
V této ukázce byl vždy měřen pouze jeden report, nicméně občas došlo i k jinému využití Premium kapacity způsobujícím několik špiček z maximální doby. K několika špičkám došlo například kvůli spouštění DAX Studio sledujícího veškerý provoz dotazů v Premium kapacitě přes XMLA.

Co se vyčte z výsledků?
Vyhodnocení výsledků testování poskytuje důležitá data pro optimalizaci reportů. Na následujícím printscreenu z vyhodnocení je jasně vidět celková statistika – u 175 tisíc dotazů (35 tisíc obnovení stránek) s průměrnou četností 208 dotazů za minutu (42 obnovení stránky za minutu) byla průměrná délka 70 ms a 90% percentil 160 ms, menší reporty byly mnohem rychlejší. To vše bez přetížení Premium kapacity, nejvyšší hodnoty CPU byly kolem 15 %. Výsledek je, že můžeme očekávat, že bude možné provést 300 obnovení stránky za každou minutu (takže 18 000 za hodinu).

Při testování se kontroluje i vytížení hardwaru, který spouští nezávislá okna prohlížeče s reporty, protože jeho přetížení by výsledky mohlo s největší pravděpodobností zkreslit. Proto je třeba myslet zejména na dostatek operační paměti. Níže je vidět normální rozložení dat u malých hodnot doby trvání a bezproblémovou spotřebu výkonu Premium kapacity.

Pro snazší interpretaci naměřených dat lze využít i méně obvyklé vizualizace, včetně časově animovaného scatter chartu.

Automatizace testování výkonnosti Power BI je zásadní pro zajištění optimálního výkonu a efektivity reportů, a to zejména v prostředí s vysokou zátěží. Tímto způsobem zajistíme, že naše reporty budou nejen rychlé a efektivní, ale také schopné zvládnout náročné požadavky uživatelů a poskytovat přesné a včasné informace pro rozhodování.
Autor: Petr Kolář
Tento článek nevygenerovala generativní AI, ale napsal jej člověk na základě svých znalostí a zkušeností z praxe.