Optimalizujte modely DirectQuery pomocí úložiště na úrovni tabulky

Dokončeno

DirectQuery je jedním ze způsobů, jak dostat data Power BI Desktop. Metoda DirectQuery zahrnuje přímé připojení k datům ve zdrojovém úložišti zevnitř Power BI Desktop. Je to alternativa k importu dat do Power BI Desktop.

Když použijete metodu DirectQuery, celkové uživatelské prostředí silně závisí na výkonu základního zdroje dat. Pomalé odpověď časy dotazů povedou k negativnímu uživatelskému dojmu a v nejhorším případě mohou dotazy vypršet. Také počet uživatelů, kteří otevírají přehledy v jednom okamžiku, ovlivní zatížení zdroje dat. Pokud například vaše sestava obsahuje 20 vizuálů a sestavu používá 10 lidí, bude ve zdroji dat existovat 200 nebo více dotazů, protože každý vizuál zadá jeden nebo více dotazů.

Výkon vašeho Power BI modelu bohužel nebude ovlivněn pouze výkonem základního zdroje dat, ale také dalšími nekontrolovatelnými faktory, jako jsou:

  • Latence sítě; rychlejší sítě vracejí data rychleji.

  • Výkon serveru zdroje dat a kolik dalších úloh je na tomto serveru. Zvažte například důsledky obnovení serveru, ke kterému dochází v době, kdy stovky lidí používají stejný server z různých důvodů.

Používání DirectQuery proto představuje riziko pro kvalitu výkonu vašeho modelu. Chcete-li v této situaci optimalizovat výkon, musíte mít kontrolu nad zdrojovou databází nebo k ní mít přístup.

Podrobnější informace najdete v pokynech k modelu DirectQuery v Power BI Desktop.

Důsledky používání DirectQuery

Nejlepším postupem je importovat data do Power BI Desktop, ale vaše organizace může potřebovat použít režim datového připojení DirectQuery z jednoho z následujících důvodů (výhody DirectQuery):

  • Je vhodný v případech, kdy se data často mění a je vyžadován reporting v téměř reálném čase.

  • Zvládne velká data bez nutnosti předagregace.

  • Uplatňuje omezení suverenity dat, aby vyhověla zákonným požadavkům.

  • Lze jej použít s vícerozměrným zdrojem dat, který obsahuje míry jako SAP Business Warehouse (BW).

Pokud vaše organizace potřebuje používat DirectQuery, měli byste jasně porozumět jeho chování v rámci Power BI Desktop a být si vědomi jeho omezení. Poté budete v dobré pozici k tomu, abyste mohli co nejvíce optimalizovat model DirectQuery.

Chování připojení DirectQuery

Když používáte DirectQuery k připojení k datům v Power BI Desktop, toto připojení se chová následujícím způsobem:

  • Když zpočátku použijete funkci Získat data v Power BI Desktop, vyberete zdroj. Pokud se připojíte k relačnímu zdroji, můžete vybrat sadu tabulek a každá z nich bude definovat dotaz, který logicky vrátí sadu dat. Pokud vyberete vícerozměrný zdroj, jako je SAP BW, můžete vybrat pouze zdroj.

  • Když načtete data, do Power BI Desktop se neimportují žádná data, načte se pouze schéma. Když vytváříte vizuál v rámci Power BI Desktop, dotazy se odesílají do základního zdroje, aby se načetla potřebná data. Doba potřebná k obnovení vizuálu závisí na výkonu základního zdroje dat.

  • Pokud jsou provedeny změny v podkladových datech, neprojeví se okamžitě ve stávajících vizuálech v Power BI kvůli ukládání do mezipaměti. Abyste tyto změny viděli, musíte provést aktualizaci. Pro každý vizuál jsou přítomny potřebné dotazy a vizuály jsou odpovídajícím způsobem aktualizovány.

  • Když sestavu publikujete do služby Power BI , výsledkem bude sémantický model ve službě Power BI , který je stejný jako pro import. Tento sémantický model však neobsahuje žádná data.

  • Když otevřete existující sestavu ve Power BI službě nebo vytvoříte novou, bude znovu dotázán na základní zdroj, aby se načetla potřebná data. V závislosti na umístění původního zdroje možná budete muset nakonfigurovat místní bránu dat.

  • Vizuály nebo celé stránky sestavy můžete připnout jako dlaždice řídicího panelu. Dlaždice se automaticky obnovují podle plánu, například každou hodinu. Frekvenci tohoto obnovení můžete řídit podle svých požadavků. Když otevřete řídicí panel, dlaždice odrážejí data v době poslední aktualizace a nemusí zahrnovat nejnovější změny provedené v podkladovém zdroji dat. Otevřený řídicí panel můžete kdykoli obnovit, abyste se ujistili, že je aktuální.

Omezení připojení DirectQuery

Použití DirectQuery může mít negativní důsledky. Omezení se liší v závislosti na konkrétním zdroji dat, který se používá. Měli byste vzít v úvahu následující body:

  • Výkon – Jak již bylo zmíněno, vaše celkové uživatelské prostředí do značné míry závisí na výkonu základního zdroje dat.

  • Zabezpečení – Pokud v modelu DirectQuery používáte více zdrojů dat, je důležité pochopit, jak se data přesouvají mezi základními zdroji dat a související bezpečnostní důsledky. Měli byste také zjistit, zda se na data ve vašem základním zdroji vztahují bezpečnostní pravidla, protože v Power BI, může tato data vidět každý uživatel.

  • Transformace dat - Ve srovnání s importovanými daty mají data získaná z DirectQuery omezení, pokud jde o použití technik transformace dat v rámci Power Query Editor. Pokud se například připojíte ke zdroji technologie OLAP, jako je SAP BW, nemůžete provádět vůbec žádné transformace; celý externí model je převzat ze zdroje dat. Pokud chcete provést nějaké transformace dat, budete to muset provést v podkladovém zdroji dat.

  • Modelování - Některé možnosti modelování, které máte s importovanými daty, nejsou při použití DirectQuery dostupné nebo jsou omezené.

  • Reporting -- Téměř všechny možnosti vytváření sestav, které máte s importovanými daty, jsou podporovány také pro modely DirectQuery za předpokladu, že základní zdroj nabízí vhodnou úroveň výkonu. Když je však zpráva publikována ve službě Power BI , nejsou podporovány funkce Quick Insights a Q&A. Také použití funkce Prozkoumat v Excelu pravděpodobně povede k horšímu výkonu.

Podrobnější informace o omezeních používání DirectQuery naleznete v části Důsledky používání DirectQuery.

Nyní, když jste krátce pochopili, jak DirectQuery funguje a jaká omezení přináší, můžete podniknout kroky ke zlepšení výkonu.

Optimalizujte výkon

Když budete pokračovat ve scénáři Tailwind Traders, během kontroly sémantického modelu zjistíte, že dotaz používal DirectQuery k připojení Power BI Desktop ke zdrojovým datům. Toto použití DirectQuery je důvodem, proč uživatelé zaznamenávají špatný výkon sestav. Načítání stránek v sestavě trvá příliš dlouho a tabulky se při určitých výběrech neobnovují dostatečně rychle. Je třeba provést akci k optimalizaci výkonu modelu DirectQuery.

Můžete prozkoumat dotazy, které se odesílají do podkladového zdroje, a pokusit se identifikovat důvod nízkého výkonu dotazu. Poté můžete provést změny v Power BI Desktop a základním zdroji dat, abyste optimalizovali celkový výkon.

Optimalizujte data v Power BI Desktop

Když jste co nejvíce optimalizovali zdroj dat, můžete provést další kroky v rámci Power BI Desktop pomocí Analyzátoru výkonu, kde můžete izolovat dotazy na ověřit plány dotazů.

Můžete analyzovat dobu trvání dotazů odesílaných do podkladového zdroje a identifikovat dotazy, jejichž načítání trvá dlouho. Jinými slovy, můžete identifikovat, kde existují úzká hrdla.

Při optimalizaci modelu DirectQuery nemusíte používat speciální přístup; můžete použít stejné optimalizační techniky, které jste použili na importovaná data, abyste vyladili data ze zdroje DirectQuery. Můžete například snížit počet vizuálů na stránce sestavy nebo snížit počet polí použitých ve vizuálu. Můžete také odstranit nepotřebné sloupce a řádky.

Podrobnější pokyny k optimalizaci dotazu DirectQuery naleznete v části: Pokyny k modelu DirectQuery v Power BI Desktop a Pokyny pro úspěšné používání DirectQuery.

Optimalizujte základní zdroj dat (připojenou databázi)

Vaší první zastávkou je zdroj dat. Zdrojovou databázi musíte co nejvíce vyladit, protože cokoli, co uděláte pro zlepšení výkonu této zdrojové databáze, zase zlepší Power BI DirectQuery. Akce, které v databázi provedete, přinesou největší užitek.

Zvažte použití následujících standardních databázových postupů, které platí pro většinu situací:

  • Vyhněte se použití složitých vypočítaných sloupců, protože výraz výpočtu bude vložen do zdrojových dotazů. Je efektivnější zatlačit výraz zpět ke zdroji, protože se vyhne stlačení dolů. Můžete také zvážit přidání náhradních klíčových sloupců do tabulek typu dimenze.

  • Zkontrolujte indexy a ověřte, zda je aktuální indexování správné. Pokud potřebujete vytvořit nové indexy, ujistěte se, že jsou vhodné.

Podívejte se na dokumenty s pokyny vašeho zdroje dat a implementujte jejich doporučení týkající se výkonu.

Přizpůsobte možnosti snížení počtu dotazů

Power BI Desktop vám dává možnost posílat méně dotazů a zakázat určité interakce, které budou mít za následek špatnou zkušenost, pokud budou výsledné dotazy trvat dlouho. Použití těchto možností zabrání tomu, aby dotazy neustále narážely na zdroj dat, což by mělo zlepšit výkon.

V tomto příkladu upravíte výchozí nastavení, abyste na svůj model použili dostupné možnosti redukce dat. K nastavení se dostanete tak, že vyberete Soubor>Možnosti a nastavení>Možnosti, posunete stránku dolů a poté vyberete možnost Možnost snížení počtu dotazů .

K dispozici jsou následující možnosti redukce dotazů:

  • Snížit počet dotazů odeslaných uživatelem – Ve výchozím nastavení každý vizuál interaguje s každým dalším vizuálem. Zaškrtnutím tohoto políčka tuto výchozí interakci zakážete. Pomocí funkce Upravit interakce si pak můžete volitelně vybrat, které vizuály se vzájemně ovlivňují.

  • Průřezy - Ve výchozím nastavení je vybrána možnost Okamžitě použít změny průřezu . Chcete-li přinutit uživatele sestavy, aby ručně použili změny průřezu, vyberte možnost Přidat tlačítko použít ke každému průřezu a použít změny, až budete připraveni .

  • Filtry - Ve výchozím nastavení je vybrána možnost Okamžitě použít základní změny filtrů . Chcete-li přinutit uživatele sestavy ručně použít změny filtru, vyberte jednu z alternativních možností:

    • Přidejte tlačítko použít ke všem základním filtrům, abyste použili změny, až budete připraveni

    • Přidejte jedno tlačítko použít do podokna filtru a použijte změny najednou (Preview)