Optimalizácia modelov DirectQuery použitím ukladacieho priestoru na úrovni tabuľky

Dokončené

DirectQuery sa používa na načítanie údajov do aplikácie Power BI Desktop. Metóda DirectQuery používa priame pripojenie k údajom v ich ukladacom priestore z aplikácie Power BI Desktop. Je alternatívnou metódou namiesto importovania údajov do aplikácie Power BI Desktop.

Snímka obrazovky znázorňujúca spôsob použitia možnosti DirectQuery na získanie údajov.

Ak použijete metódu DirectQuery, skúsenosť používateľa závisí najmä na výkone používaného zdroja údajov. Pomalé časy odozvy na dotaz spôsobujú zhoršenie výkonu u používateľa a v najhorších scenároch aj vypršanie času platnosti dotazu. Okrem toho počet používateľov, ktorí otvárajú zostavy naraz, tiež ovplyvňuje záťaž, ktorá je kladená na zdroj údajov. Ak napríklad vaša zostava obsahuje 20 vizuálov a používa ju 10 ľudí, do zdroja údajov sa odošle minimálne 200 dotazov, lebo každý z vizuálov vytvorí minimálne jeden dotaz.

Bohužiaľ výkon vášho modelu v službe Power BI neovplyvní len výkon používaného zdroja údajov, ale aj iné faktory, ktoré nie je možné ovládať, napríklad:

  • Oneskorenie siete – rýchlejšie siete rýchlejšie vracajú údaje.

  • Výkon servera zdroja údajov a aj to, koľko inej záťaže musí server spracovať. Zvážte napríklad, že na serveri prebieha obnovovanie v čase, keď sa stovky ľudí snažia k serveru pripojiť s úplne iným cieľom.

Použitie modelu DirectQuery je preto vzhľadom na možné zníženie výkonu rizikové. Ak chcete v tejto situácii optimalizovať výkon, musíte prevziať riadenie či mať prístup ku zdrojovej databáze.

Podrobnejšie informácie nájdete v časti Riadenie modelu DirectQuery v aplikácii Power BI Desktop.

Implikácie týkajúce sa použitia DirectQuery

Najvýhodnejším sa javí import údajov do aplikácie Power BI Desktop, avšak vaša organizácia môže potrebovať použiť režim pripojenia údajov DirectQuery vzhľadom na niektorú z týchto príčin (výhody použitia DirectQuery):

  • je to vhodné v prípadoch, kedy sa údaje menia častejšie a vyžaduje sa vykazovanie v takmer reálnom čase,

  • je možné spracovať veľké objemy údajov bez potreby predbežného agregovania,

  • využívajú sa obmedzenia dátovej nezávislosti, aby sa dodržal súlad s právnymi nariadeniami,

  • model je možné použiť s viacrozmerným zdrojom údajov, ktorý obsahuje miery ako SAP Business Warehouse (BW).

Ak vaša organizácia potrebuje použiť DirectQuery, musíte podrobne poznať fungovanie tohto modelu v aplikácii Power BI Desktop a poznať aj jeho obmedzenia. Až vtedy budete mať výhodnú pozíciu, aby ste mohli vykonať akciu na optimalizáciu modelu DirectQuery v maximálnej možnej miere.

Správanie pripojení DirectQuery

Ak používate DirectQuery a pripojenie údajov v aplikácii Power BI Desktop, toto pripojenie sa správa nasledovne:

  • Pri prvom použití funkcie Načítať údaje v aplikácii Power BI Desktop vyberiete zdroj. Pri pripojení k relačnému zdroju môžete vybrať množinu tabuliek a každá z nich bude definovať dotaz, ktorý logicky vráti množinu údajov. Keď vyberiete multidimenzionálny zdroj, napríklad SAP BW, tento zdroj môžete len vybrať.

  • Pri načítaní údajov sa do aplikácie Power BI Desktop nenačítajú žiadne údaje a načíta sa len schéma. Keď v aplikácii Power BI Desktop vytvoríte vizuál, odošlú sa dotazy na základný zdroj na načítanie potrebných údajov. Čas potrebný na obnovenie vizuálu závisí od výkonu základného zdroja údajov.

  • V prípade uskutočnenia zmien v základných údajoch sa tieto zmeny v dôsledku používania vyrovnávacej pamäte neprejavia okamžite v existujúcich vizuáloch. Aby sa tieto zmeny zobrazili, je potrebné vykonať obnovenie. Pre každý vizuál sa nachádzajú potrebné dotazy a vizuály sa náležite aktualizujú.

  • Pri publikovaní zostavy do služba Power BI bude výsledkom sémantický model v služba Power BI, rovnaký ako pri importe. Súčasťou tohto sémantického modelu však nie sú žiadne údaje.

  • Keď otvoríte existujúcu zostavu v službe Power BI alebo vytvoríte novú, znova sa odošlú dotazy na základný zdroj na načítanie potrebných údajov. V závislosti od umiestnenia pôvodného zdroja môže byť potrebné nakonfigurovať lokálnu bránu údajov.

  • Vizuály alebo celé strany zostavy môžete pripnúť ako dlaždice tabule. Dlaždice sa automaticky obnovujú podľa plánu, napríklad každú hodinu. Frekvenciu tohto obnovovania môžete stanoviť podľa svojich požiadaviek. Keď otvoríte tabuľu, dlaždice zodpovedajú údajom v čase posledného obnovenia a môže sa stať, že nebudú zahŕňať posledné zmeny vykonané v základnom zdroji údajov. Otvorenú tabuľu môžete kedykoľvek obnoviť, aby ste mali istotu, že je aktuálne.

Obmedzenia pripojení DirectQuery

Použitie režimu DirectQuery môže mať negatívne dôsledky. Obmedzenia sa líšia v závislosti od konkrétneho zdroja údajov, ktorý sa používa. Je potrebné vziať do úvahy nasledujúce body:

  • Výkon – ako sme už spomínali, celkové používateľské prostredie do veľkej miery závisí od výkonu základného zdroja údajov.

  • Zabezpečenie – ak používate viaceré zdroje údajov v modeli DirectQuery, je dôležité pochopiť spôsob presunu údajov medzi základnými zdrojmi údajov a s tým súvisiace dôsledky na zabezpečenie. Mali by ste tiež zistiť, či sa na údaje v základnom zdroji údajov vzťahujú pravidlá zabezpečenia, pretože v službe Power BI môže tieto údaje vidieť každý používateľ.

  • Transformácia údajov – na údaje, ktorých zdrojom je režim DirectQuery, sa v porovnaní s importovanými údajmi vzťahujú obmedzenia z hľadiska uplatňovania techník transformácie údajov v rámci Editora Power Query. Napríklad pri pripojení k zdroju technológie OLAP, ako je SAP BW, nemožno vykonávať vôbec žiadne transformácie, pretože celý externý model je získaný zo zdroja údajov. Ak chcete vykonať nejaké transformácie údajov, bude to potrebné urobiť v základnom zdroji údajov.

  • Modelovanie – pri použití režimu DirectQuery nie sú k dispozícii alebo sú obmedzené niektoré možnosti modelovania, ktoré môžete používať s importovanými údajmi.

  • Vytváranie zostáv – takmer všetky možnosti vytvárania zostáv dostupné s importovanými údajmi sú podporované aj pre modely DirectQuery za predpokladu, že základný zdroj ponúka primeranú úroveň výkonu. Pri publikovaní zostavy v službe Power BI však nie sú podporované funkcie Rýchle prehľady a Q&A. Taktiež platí, že použitie funkcie Preskúmať v Exceli bude mať pravdepodobne za následok slabší výkon.

Podrobnejšie informácie o obmedzeniach pri použití režimu DirectQuery nájdete v téme Dôsledky vyplývajúce z používania režimu DirectQuery.

Keď už máte stručný prehľad o fungovaní režimu DirectQuery a obmedzeniach, ktoré predstavuje, ďalším krokom je prijatie opatrení na zlepšenie výkonu.

Optimalizácia výkonu

Pokračujeme v scenári so spoločnosťou Tailwind Traders. Počas kontroly sémantického modelu zistíte, že dotaz použil na pripojenie Power BI Desktop k zdrojovým údajom režim DirectQuery. Toto použitie režimu DirectQuery je dôvodom, prečo sa používatelia stretávajú so slabým výkonom zostavy. Načítanie strán v zostave trvá príliš dlho a pri vykonaní určitých výberov sa tabuľky neobnovujú dostatočne rýchlo. Potrebujete prijať opatrenia na optimalizáciu výkonu modelu DirectQuery.

Môžete preskúmať dotazy odosielané na základný zdroj a skúsiť zistiť dôvod slabého výkonu dotazov. Potom môžete vykonať zmeny v aplikácii Power BI Desktop a základnom zdroji údajov na optimalizáciu celkového výkonu.

Optimalizácia údajov v aplikácii Power BI Desktop

Keď vykonáte maximálnu možnú optimalizáciu zdroja údajov, môžete pokračovať ďalšími krokmi v aplikácii Power BI Desktop, v ktorej môžete pomocou Analyzátora výkonu izolovať dotazy na overenie plánov dotazov.

Na základe analýzy trvania dotazov odosielaných na základný zdroj môžete identifikovať dotazy, ktoré sa dlho načítavajú. Inými slovami môžete zistiť, kde existujú kritické miesta.

Pri optimalizácii modelu DirectQuery nie je potrebný zvláštny prístup – môžete uplatniť tie isté techniky optimalizácie, ktoré ste použili na importované údaje pri ladení údajov zo zdroja DirectQuery. Môžete napríklad znížiť počet vizuálov na strane zostavy alebo znížiť počet polí použitých vo vizuáli. Takisto môžete odstrániť nepotrebné stĺpce a riadky.

Podrobnejšie pokyny na optimalizáciu dotazu DirectQuery nájdete v téme Sprievodný materiál k modelu DirectQuery v Power BI Desktop a pokyny na úspešné používanie režimu DirectQuery.

Optimalizácia základného zdroja údajov (pripojenej databázy)

Vašou prvou zastávkou je zdroj údajov. Potrebujete v maximálnej možnej miere doladiť zdrojovú databázu, pretože každé zlepšenie výkonu zdrojovej databázy prinesie zlepšenie režimu DirectQuery služby Power BI. Akcie vykonané v databáze budú najväčším prínosom.

Zvážte použitie nasledujúcich databázových postupov, ktoré sú platné vo väčšine situácií:

  • Vyhýbajte sa použitiu zložitých vypočítaných stĺpcov, pretože výraz výpočtu bude vložený do zdrojových dotazov. Je efektívnejšie presunúť výraz späť na zdroj, pretože sa tým vyhnete tlaku nadol. Môžete tiež zvážiť pridanie náhradných kľúčových stĺpcov do dimenzionálnych tabuliek.

  • Skontrolujte indexy a overte správnosť aktuálneho indexovania. Ak potrebujete vytvoriť nové indexy, ubezpečte sa o ich vhodnosti.

Pozrite si dokumenty s pokynmi pre váš zdroj údajov a implementujte odporúčania na zvýšenie jeho výkonu.

Prispôsobenie možností zníženia počtu dotazov

Power BI Desktop poskytuje možnosť odoslať menej dotazov a zakázať určité interakcie, ktoré majú za následok slabý výkon v prípade dlhého spúšťania výsledných dotazov. Použitie týchto možností zamedzuje dotazom v nepretržitom pristupovaní k zdroju údajov, čo by malo priniesť zlepšenie výkonu.

V tomto príklade upravíte predvolené nastavenia tak, aby sa dostupné možnosti zníženia objemu údajov uplatnili na váš model. K týmto nastaveniam sa dostanete tak, že vyberiete položky Súbor>Možnosti a nastavenia>Možnosti, na stránke sa posuniete nadol a potom vyberiete možnosť Zníženie počtu dotazov .

K dispozícii sú tieto možnosti zníženia počtu dotazov:

  • Zníženie počtu odoslaných dotazov – Každý vizuál predvolene interaguje so všetkými ostatnými vizuálmi. Výberom tohto začiarkavacieho políčka zakážete túto predvolenú interakciu. Potom môžete voliteľne pomocou funkcie Upraviť interakcie vybrať, ktoré vizuály navzájom interagujú.

  • Rýchle filtre – predvolene je vybratá možnosť Okamžite použiť zmeny rýchleho filtra. Ak chcete vynútiť manuálne použitie zmien rýchleho filtra používateľmi zostavy, vyberte možnosť Pridajte tlačidlo Použiť do každého rýchleho filtra, aby sa zmeny použili, keď budete pripravení.

  • Filtre – predvolene je vybratá možnosť Okamžite použiť zmeny základného filtra. Ak chcete vynútiť manuálne použitie zmien filtra používateľmi zostavy, vyberte niektorú z alternatívnych možností:

    • Ak chcete, aby sa zmeny použili v momente, keď je všetko hotové, pridajte tlačidlo Použiť do všetkých základných filtrov

    • Ak chcete, aby sa zmeny použili všetky naraz, pridajte na tablu filtra jediné tlačidlo Použiť (ukážka)

Prístup k nastaveniam zníženia počtu dotazov