Posouzení výkonu měr, relací a vizuálů

Dokončeno

Pokud má váš sémantický model více tabulek, složité relace, složité výpočty, více vizuálů nebo redundantní data, existuje možnost nízkého výkonu sestavy. Nízký výkon sestav vede k negativní zkušenosti uživatelů.

Snímek obrazovky s faktory ovlivňujícími výkon sestavy

Chcete-li optimalizovat výkon, musíte nejprve identifikovat, odkud problém pochází. Jinými slovy, zjistěte, které prvky sestavy a sémantického modelu způsobují problémy s výkonem. Následně můžete učinit opatření, kterými tyto problémy vyřešíte a zvýšíte tak výkon.

Určení kritických bodů sestavy z hlediska výkonu

Abyste dosáhli optimálního výkonu v sestavách, musíte vytvořit efektivní sémantický model, který bude mít rychle spuštěné dotazy a míry. Když máte dobrý základ, můžete model vylepšit analýzou dotazů plánů a závislostí a následně provést změny, které výkon optimalizují ještě více.

Měli byste zkontrolovat míry a dotazy v sémantickém modelu, abyste měli jistotu, že používáte nejúčinnější způsob, jak získat požadované výsledky. Měli byste začít tím, že zjistíte kritická místa existující v kódu. Když identifikujete nejpomalejší dotaz v sémantickém modelu, můžete se nejprve zaměřit na největší kritický bod a vytvořit seznam priorit pro řešení dalších problémů.

Analýza výkonu

Analyzátor výkonu v Power BI Desktop vám pomůže zjistit, jak jednotlivé prvky sestavy fungují, když s nimi uživatelé pracují. Můžete například zjistit, jak dlouho trvá aktualizace určitého vizuálu, pokud je zahájena nějakou interakcí uživatele. Analyzátor výkonu vám pomůže identifikovat elementy, které přispívají k problémům s výkonem, což oceníte při řešení problémů.

Abyste při analýze (testu) pomocí Analyzátoru výkonu získali co nejpřesnější výsledky, nezapomeňte začít s čistou mezipamětí vizuálů a s čistou mezipamětí datového modulu.

  • Mezipaměť vizuálů – při načítání vizuálu nemůžete tuto mezipaměť vymazat bez zavření a opětovného otevření Power BI Desktopu. Kvůli zamezení vlivu ukládání do mezipaměti musíte analýzu začít s čistou mezipamětí vizuálů.

    Abyste měli jistotu, že máte čistou mezipaměť vizuálů, přidejte do souboru Power BI Desktopu (.pbix) prázdnou stránku a pak tuto stránku vyberte a soubor uložte a zavřete. Znovu otevřete soubor Power BI Desktopu (.pbix), který chcete analyzovat. Otevře se na této prázdné stránce.

  • Mezipaměť datového modulu – při spuštění dotazu se výsledky uloží do mezipaměti, takže výsledky analýzy budou zavádějící. Před opětovným spuštěním vizuálu potřebujete tuto mezipaměť dat vymazat.

    Pokud chcete vymazat mezipaměť dat, můžete buď restartovat Power BI Desktop, nebo připojit DAX Studio k sémantickému modelu a pak volat Vymazat mezipaměť.

Když máte tyto mezipaměti vymazané a soubor Power BI Desktopu je otevřený na prázdné stránce, přejděte na kartu Zobrazení a vyberte možnost Analyzátor výkonu.

Analýzu zahájíte tak, že vyberete Spustit záznam, vyberete stránku sestavy, kterou chcete analyzovat, a začnete provádět interakce s elementy sestavy, kterou chcete měřit. Výsledky těchto interakcí se během práce zobrazují v podokně Analyzátor výkonu. Až skončíte, vyberete Zastavit.

Snímek obrazovky Analyzátor výkonu úvodní obrazovky

Podrobnější informace najdete v článku Zjištění výkonu elementů sestav pomocí Analyzátoru výkonu.

Kontrola výsledků

Výsledky testu výkonu si můžete prohlédnout v podokně Analyzátor výkonu. Pokud chcete úkoly zobrazit v pořadí podle doby trvání od nejdelšího po nejkratší, klikněte pravým tlačítkem na ikonu Seřadit vedle záhlaví sloupce Doba trvání (ms) a pak vyberte Celková doba v pořadí Sestupně.

Snímek obrazovky znázorňující, jak seřadit výsledky v Analyzátoru

Informace z protokolu u jednotlivých vizuálů udávají, jak dlouho trvalo dokončení následujících kategorií úkolů:

  • Dotaz DAX – doba, jakou vizuálu trvalo odeslání dotazu spolu s dobou, jakou službě Analysis Services trvalo vrácení výsledků.

  • Zobrazení vizuálu – doba, jakou trvalo vykreslení vizuálu na obrazovce včetně doby potřebné k načtení webových obrázků nebo geografického kódování.

  • Další – doba, jakou vizuálu trvala příprava dotazů, čekání na dokončení jiných vizuálů nebo zpracování jiných úloh na pozadí. Pokud se v této kategorii zobrazují dlouhé doby trvání, jediný skutečný způsob, jak tuto dobu trvání zkrátit, spočívá v optimalizaci dotazů DAX u jiných vizuálů nebo zmenšení počtu vizuálů v sestavě.

Snímek obrazovky s kategoriemi ve výsledcích Analyzátoru výkonu

Výsledky analytického testu vám pomůžou pochopit chování sémantického modelu a identifikovat prvky, které potřebujete optimalizovat. Můžete porovnat dobu trvání jednotlivých elementů v sestavě a určit elementy, které mají dlouhou dobu trvání. Na tyto elementy byste se měli zaměřit a prověřit, proč jejich načtení na stránce sestavy trvá tak dlouho.

K podrobnější analýze dotazů můžete použít DAX Studio, což je bezplatný opensourcový nástroj, který poskytuje jiná služba.

Řešení problémů a optimalizace výkonu

Z výsledků analýzy poznáte oblasti zlepšení a příležitosti pro optimalizaci výkonu. Možná zjistíte, že budete muset provést vylepšení vizuálů, dotazů DAX nebo jiných prvků v sémantickém modelu. Následující informace obsahují pokyny k tomu, co máte hledat a jaké změny můžete provést.

Vizuály

Pokud zjistíte, že kritickým bodem způsobujícím nízký výkon jsou vizuály, měli byste najít způsob, jak zvýšit výkon s minimálním dopadem na zkušenost uživatelů.

Vezměte v úvahu počet vizuálů na stránce sestavy. méně vizuálů znamená lepší výkon. Zeptejte se sami sebe, jestli je nějaký vizuál skutečně nutný a přináší koncovému uživateli hodnotu. Pokud ne, měli byste ho odebrat. Místo použití několika vizuálů na stránce zvažte jiné způsoby, jak poskytnout další podrobnosti, například stránky podrobné analýzy a popisy stránek sestavy.

Prověřte počet polí v jednotlivých vizuálech. Čím více vizuálů máte v sestavě, tím pravděpodobněji nastanou problémy s výkonem. Čím více vizuálů sestava obsahuje, tím je navíc méně přehledná a výstižná. Horní limit pro vizuály je 100 polí (měr nebo sloupců), takže vizuál s více než 100 poli se bude pomalu načítat. Zeptejte se sami sebe, jestli opravdu všechna tato data potřebujete. Možná zjistíte, že můžete omezit počet aktuálně používaných polí.

Dotaz DAX

Při zkoumání výsledků v podokně Analyzátor výkonu vidíte, jak dlouho modulu Power BI Desktopu trvalo vyhodnocení jednotlivých dotazů (v milisekundách). Dobrým výchozím bodem je každý dotaz DAX, který trvá déle než 120 milisekund. V tomto příkladu identifikujete jeden konkrétní dotaz, který má dlouhou dobu trvání.

Snímek obrazovky s příkladem velké doby trvání v Analyzátor výkonu

Analyzátor výkonu zvýrazňuje potenciální problémy, ale nesděluje, co je potřeba udělat k jejich vylepšení. Možná budete muset provést další šetření, proč zpracování této míry trvá tak dlouho. K podrobnějšímu zkoumání dotazů můžete použít DAX Studio.

Například výběrem volby Kopírovat dotaz můžete vzorec výpočtu zkopírovat do schránky a vložit ho do DAX Studia. Pak si můžete tento krok výpočtu podrobněji prohlédnout. V tomto příkladu se pokoušíte určit celkový počet produktů s objednaným množstvím, které je větší nebo rovno pěti.

Count Customers =
CALCULATE (
    DISTINCTCOUNT ( Order[ProductID] ),
    FILTER ( Order, Order[OrderQty] >= 5 )
)

Po analýze dotazu můžete s využitím vlastních znalostí a zkušeností určit, co je příčinou problémů s výkonem. Můžete také zkusit použít jiné funkce jazyka DAX a zjistit, jestli vedou ke zvýšení výkonu. V následujícím příkladu byla funkce FILTER nahrazena funkcí KEEPFILTER. Při opětovném spuštění testu v Analyzátoru výkonu byla doba trvání při použití funkce KEEPFILTER kratší.

Count Customers =
CALCULATE (
    DISTINCTCOUNT ( Order[ProductID] ),
    KEEPFILTERS (Order[OrderQty] >= 5 )
)

V tomto případě můžete funkci FILTER nahradit funkcí KEEPFILTER a významně tak zkrátit dobu, po kterou se tento dotaz vyhodnocuje. Když tuto změnu uděláte a chcete zkontrolovat, jestli tím dojde nebo nedojde ke zkrácení doby trvání, vymažte mezipaměť dat a znovu spusťte proces Analyzátoru výkonu.

Snímek obrazovky s příkladem malé doby trvání v Analyzátor výkonu

Sémantický model

Pokud se u doby trvání měr a vizuálů zobrazují nízké hodnoty (tedy pokud mají krátkou dobu trvání), nejsou příčinou problémů s výkonem. Pokud dotaz DAX zobrazuje vysokou hodnotu doby trvání, je pravděpodobné, že je míra napsaná špatně nebo došlo k problému se sémantickým modelem. Tento problém může být způsoben relacemi, sloupci nebo metadaty v modelu, případně nastavením možnosti Automatické datum a čas, jak je vysvětleno v následující části.

Relace

Kontrolou relací mezi tabulkami byste měli ověřit, že jsou vytvořeny správné relace. Zkontrolujte, jestli jsou správně nakonfigurované vlastnosti mohutnosti relace. Například sloupec na straně 1, který obsahuje jedinečné hodnoty, může být nesprávně nakonfigurovaný jako sloupec na straně N. Další informace o tom, jak mohutnost ovlivňuje výkon, se dozvíte později v tomto modulu.

Sloupce

Osvědčeným postupem je neimportovat sloupce s daty, která nepotřebujete. Pokud se chcete vyhnout odstraňování sloupců v Editoru Power Query, měli byste se jimi zabývat ve zdroji při načítání dat do Power BI Desktopu. Pokud ale není možné odebrat nadbytečné sloupce z dotazu na daný zdroj nebo data už byla naimportována v nezpracovaném stavu, můžete k prozkoumání jednotlivých sloupců vždy použít Editor Power Query. Zeptejte se sami sebe, jestli opravdu potřebujete každý sloupec, a pokuste se identifikovat výhody, které každý z nich přidává vašemu sémantickému modelu. Pokud zjistíte, že sloupec nepřidá žádnou hodnotu, měli byste ho ze sémantického modelu odebrat. Dejme tomu, že máte sloupec ID s tisíci jedinečných řádků. Víte, že tento konkrétní sloupec v relaci nepoužijete, takže se v sestavě nebude používat. Proto byste tento sloupec měli považovat za nepotřebný a připustit, že plýtvá místem ve vašem sémantickém modelu.

Když odeberete nepotřebný sloupec, zmenšíte velikost sémantického modelu, což má za následek menší velikost souboru a rychlejší aktualizaci. Vzhledem k tomu, že sémantický model obsahuje pouze relevantní data, zlepší se také celkový výkon sestavy.

Další informace najdete v článku Techniky redukce dat pro modelování importu.

Metadata

Metadata jsou informace o jiných datech. Metadata Power BI obsahují informace o sémantickém modelu, například název, datový typ a formát jednotlivých sloupců, schéma databáze, návrh sestavy, čas poslední změny souboru, obnovovací frekvence dat a mnoho dalšího.

Při načítání dat do Power BI Desktop je vhodné analyzovat odpovídající metadata, abyste mohli identifikovat případné nesrovnalosti se sémantickým modelem a normalizovat data před tím, než začnete vytvářet sestavy. Spuštění analýzy metadat zlepší výkon sémantického modelu, protože při analýze metadat budete identifikovat nepotřebné sloupce, chyby v datech, nesprávné datové typy, objem načítaných dat (načtení velkých sémantických modelů, včetně transakčních nebo historických dat, bude trvat déle) a mnoho dalšího.

K prověření sloupců, řádků a hodnot nezpracovaných dat můžete použít Editor Power Query v Power BI Desktopu. Pomocí dostupných nástrojů, například těch, které jsou zvýrazněné na následujícím snímku obrazovky, pak můžete udělat nezbytné změny.

Snímek obrazovky s možnostmi karty Domů v editoru dotazů

Mezi možnosti Power Query patří:

  • Nepotřebné sloupce – posuzuje nutnost jednotlivých sloupců. Pokud v sestavě nebudou použity některé sloupce a jsou tedy nepotřebné, měli byste je odebrat pomocí možnosti Odebrat sloupce na kartě Domů.

  • Nepotřebné řádky – zkontroluje prvních několik řádků v sémantickém modelu a zjistí, jestli jsou prázdné nebo jestli neobsahují data, která v sestavách nepotřebujete. Pokud ano, odebere tyto řádky pomocí možnosti Odebrat řádky na kartě Domů .

  • Datový typ – vyhodnocením datových typů sloupců zajišťuje, aby byly všechny správné. Pokud zjistíte nesprávný datový typ, můžete ho změnit tak, že vyberete daný sloupec, vyberete Datový typ na kartě Transformace a v seznamu pak vyberete správný datový typ.

  • Názvy dotazů – prověřuje názvy dotazů (tabulek) v podokně Dotazy. Stejně jako u názvů záhlaví sloupců byste měli změnit neobvyklé nebo nepraktické názvy dotazů na názvy, které jsou srozumitelnější nebo které jsou uživateli povědomější. Dotaz přejmenujete tak, že na něj kliknete pravým tlačítkem, vyberete Přejmenovat, upravíte název podle potřeby a stisknete klávesu Enter.

  • Podrobnosti sloupců – Editor Power Query obsahuje následující tři možnosti náhledu dat, s jejichž pomocí analyzujete metadata přidružená ke sloupcům. Tyto možnosti najdete na kartě Zobrazení, jak je znázorněno na následujícím snímku obrazovky.

    • Kvalita sloupce – určuje, jaké procento položek ve sloupci je platných, obsahuje chyby nebo je prázdných. Pokud procento platných není 100, měli byste zjistit důvod, opravit chyby a naplnit prázdné hodnoty.

    • Sloupcové rozdělení – zobrazí frekvenci a rozdělení hodnot v jednotlivých sloupcích. Tento aspekt prostudujete dále v tomto modulu.

    • Profil sloupce – zobrazuje sloupcový graf statistiky a sloupcový graf distribuce.

Snímek obrazovky s možnostmi profilu sloupce

Poznámka

Pokud kontrolujete velký sémantický model s více než 1 000 řádky a chcete analyzovat celý tento sémantický model, musíte změnit výchozí možnost v dolní části okna. Vyberte Profilace sloupců na základě horních 1000 řádků>Profilace sloupců na základě celé datové sady.

Snímek obrazovky s řádky profilu sloupce

Další metadata, která byste měli vzít v úvahu, jsou informace o sémantickém modelu jako celku, například velikost souboru a obnovovací frekvence dat. Tato metadata najdete v přidruženém souboru Power BI Desktopu (.pbix). Data, která načítáte do Power BI Desktopu, jsou komprimována a uložena na disku databázovým jádrem VertiPaq. Velikost sémantického modelu má přímý vliv na jeho výkon. Menší sémantický model využívá méně prostředků (paměti) a dosahuje rychlejší aktualizace dat, výpočtů a vykreslování vizuálů v sestavách.

Funkce Automatické datum a čas

Další položkou, kterou je potřeba při optimalizaci výkonu zvážit, je možnost Automatické datum a čas v Power BI Desktopu. Standardně je tato funkce povolena globálně, což znamená, že Power BI Desktop při splnění určitých podmínek automaticky vytváří skrytou počítanou tabulku pro každý sloupec kalendářních dat. Nové skryté tabulky jsou navíc k tabulkám, které už máte v sémantickém modelu.

Možnost Automatické datum a čas umožňuje při filtrování, seskupování a procházení kalendářových časových období pracovat s časovým měřítkem. Možnost Automatické datum a čas doporučujeme povolit jen v případě, že pracujete s kalendářovými časovými obdobími a máte na model jednoduché požadavky, pokud jde o čas.

Pokud váš zdroj dat už definuje tabulku s dimenzí kalendářních dat, měla by se používat ke konzistentnímu definování času v organizaci a globální možnost Automatické datum a čas byste měli zakázat. Zakázání této možnosti může snížit velikost sémantického modelu a zkrátit dobu aktualizace.

Možnost Automatické datum a čas můžete povolit nebo zakázat globálně, takže bude platit pro všechny soubory Power BI Desktopu, nebo povolit či zakázat u aktuálního souboru, takže bude platit jen pro individuální soubor.

Pokud chcete tuto možnost Automatické datum a čas povolit nebo zakázat, přejděte na Možnosti souboru>a nastavení>Možnosti a pak vyberte stránku Globální nebo Aktuální soubor . Na obou stránkách vyberte Načtení dat a potom v části Časové měřítko podle potřeby zaškrtněte nebo zrušte zaškrtnutí tohoto políčka.

Snímek obrazovky ukazuje, jak nakonfigurovat automatické datum a čas.

Přehled a obecné seznámení s funkcí Automatické datum a čas najdete v článku Použití automatického data a času v Power BI Desktopu.