DirectQuery-modellek optimalizálása táblaszintű tárolással

Befejeződött

A DirectQuery a Power BI Desktopba való adatbetöltés egyik módja. A DirectQuery módszerben közvetlenül a forrástárházban található adatokhoz kapcsolódik a Power BI Desktopból. Ez a Power BI Desktopba való adatimportálás egyik alternatívája.

Képernyőkép, amely bemutatja, hogyan használhatja a DirectQuery lehetőséget az adatok lekéréséhez.

Ha a DirectQueryt használja, a felhasználói élmény nagyban függ a mögöttes adatforrás teljesítményétől. A lekérdezések lassú válaszideje negatív felhasználói élményt eredményez, a legrosszabb esetben pedig a lekérdezések túl is léphetik az időkorlátot. A jelentéseket egyszerre megnyitó felhasználók száma is hatással van az adatforrásra helyezett terhelésre. Ha a jelentés például 20 vizualizációval rendelkezik, és 10 felhasználó használja egyszerre, 200 vagy akár még több lekérdezés létezik az adatforrásban, mivel mindegyik vizualizáció egy vagy több lekérdezést intéz.

A Power BI-modell teljesítményére sajnos nemcsak a mögöttes adatforrás van hatással, hanem egyéb, nem befolyásolható tényezők is, például:

  • Hálózati késés; a gyorsabb hálózatok gyorsabban adják vissza az adatokat.

  • Az adatforrás kiszolgálójának teljesítménye, valamint az ezen futó számítási feladatok. Gondolja például végig egy kiszolgálófrissítés hatását, miközben több száz felhasználó használja egyszerre a kiszolgálót különböző okokból.

A DirectQuery tehát kockázatot jelent a modell teljesítményének minőségére. A teljesítmény optimalizálásához ebben a helyzetben Önnek rendelkeznie kell a forrásadatbázis felett.

További információ: Útmutató a DirectQuery-modellhez a Power BI Desktopban.

A DirectQuery használatának következményei

Ajánlott eljárás az adatok a Power BI Desktopba történő importálása, előfordulhat azonban, hogy a szervezetnek a DirectQuery adatkapcsolati módját kell használnia az alábbiak egyike miatt (a DirectQuery előnyei):

  • Alkalmas olyan esetekben, amikor az adatok gyakran változnak, és közel valós idejű jelentéskészítésre van szükség.

  • Nagyméretű adatokat képes előzetes összesítés nélkül kezelni.

  • Adatelkülönítési korlátozásokat alkalmaz, hogy megfeleljen a jogi követelményeknek.

  • Használható többdimenziós adatforrással, amely olyan mértékeket tartalmaz, mint az SAP Business Warehouse (BW).

Ha a szervezetének a DirectQueryt kell használnia, célszerű tisztában lennie annak Power BI Desktopon belüli működésével, valamint korlátaival. Ezt követően hatékonyabban optimalizálhatja a DirectQuery-modellt.

DirectQuery-kapcsolatok viselkedése

Ha DirectQueryvel csatlakozik Power BI Desktop-adatokhoz, a kapcsolat a következőképp működik:

  • Amikor először használja az Adatok lekérése funkciót a Power BI Desktopban, a forrást fogja kiválasztani. Ha relációs forráshoz csatlakozik, kiválaszthatja, mely táblák határozzák meg azokat a lekérdezéseket, amelyek logikailag egy-egy adathalmazt adnak vissza. Ha többdimenziós forrást választ ki, például egy SAP Business Warehouse-t, akkor csak a forrás kiválasztására van lehetősége.

  • Betöltéskor a rendszer nem importálja magukat az adatokat a PowerBI Desktopba, csak a sémát tölti be. Amikor a Power BI Desktopban létrehozza a vizualizációt, a rendszer a szükséges adatok beolvasásához lekérdezéseket küld az alapul szolgáló forrásnak. A vizualizáció frissítéséhez szükséges idő az alapul szolgáló adatforrás teljesítményétől függ.

  • A mögöttes adatok módosításai a gyorsítótárazás miatt nem jelennek meg azonnal a meglévő Power BI-vizualizációkban. A módosítások megtekintéséhez frissítenie kell a vizualizációt. A szükséges lekérdezések mindegyik vizualizációhoz elérhetők, és a vizualizációk ennek megfelelően frissülnek.

  • Amikor közzéteszi a jelentést a Power BI szolgáltatás, az egy szemantikai modellt eredményez a Power BI szolgáltatás, ugyanúgy, mint az importáláshoz. A szemantikai modell azonban nem tartalmaz adatokat.

  • Amikor a Power BI szolgáltatásban megnyit egy meglévő jelentést vagy egy újat hoz létre, a rendszer a szükséges adatok beolvasásához elküldi a lekérdezéseket az alapul szolgáló forrásnak. Az eredeti forrás helyétől függően előfordulhat, hogy egy helyszíni adatátjárót is konfigurálnia kell.

  • A vizualizációk vagy akár a teljes jelentéslapok irányítópult-csempékre rögzíthetők. A csempék adott időközönként automatikusan, például óránként egyszer frissülnek. A frissítés gyakorisága igényeinek megfelelően beállítható. Amikor megnyit egy irányítópultot, a csempék az utolsó frissítés időpontjában látható adatokat tükrözik, emiatt előfordulhat, hogy nem tartalmazzák az alapul szolgáló adatforrás legfrissebb módosításait. Mindig frissíthet egy megnyitott irányítópultot, hogy az naprakész legyen.

A DirectQuery-kapcsolatok korlátai

A DirectQuery-kapcsolatok használata néhány negatív következménnyel is járhat. Ezek a korlátok eltérőek lehetnek attól függően, hogy milyen adatforrást használ. A következő szempontokat érdemes mindig figyelembe venni:

  • Teljesítmény – Ahogy azt korábban említettük, DirectQuery használatánál a felhasználói élmény nagyban függ az alapul szolgáló adatforrás teljesítményétől.

  • Biztonság – Ha egy DirectQuery-modellben egyszerre több adatforrást is használ, fontos, hogy ismerje, hogyan mozognak az adatok az alapul szolgáló adatforrások között, és figyelembe vegye, hogy ez milyen hatással van az adatok biztonságára. Emellett azt is mérlegelnie kell, milyen biztonsági szabályok vonatkoznak a forrásban tárolt adatokra, mert azokat mindegyik felhasználó látni fogja a Power BI-ban.

  • Adatátalakítás – Az importált adatokkal ellentétben a DirectQuery használatával betöltött adatoknál csak korlátozott adatátalakítási módszerek alkalmazására van lehetőség a Power Query-szerkesztőben. Ha például egy OLAP-forráshoz (például egy SAP BW-hez) csatlakozik, egyáltalán nem hajthat végre adatátalakítást, mert a teljes külső modellt az adatforrástól veszi át. Ha bármilyen átalakítást szeretne végezni az adatokon, azokat az alapul szolgáló adatforrásban kell végrehajtania.

  • Modellezés – Az importált adatoknál használható modellezési lehetőségek némelyike egyáltalán nem, vagy csak korlátozott formában érhető el DirectQuery használatakor.

  • Jelentéskészítés – Az importált adatoknál rendelkezésre álló jelentéskészítési funkciók közül szinte mindegyik elérhető a DirectQuery-modellekhez is, ha az alapul szolgáló adatforrás megfelelő teljesítménnyel rendelkezik. Azonban a Power BI szolgáltatásban közzétett jelentéseknél a Gyors elemzések és a Q&A-funkciók nem támogatottak. Emellett az Excel Tallózás funkciójának használata is valószínűleg gyengébb teljesítményt eredményez.

A DirectQuery használatának korlátaival kapcsolatban további részletes információkat A DirectQuery használatának következményei című szakaszban talál.

Most, hogy megértette, hogyan működik a DirectQuery és milyen korlátozásokkal jár, tekintsük át, milyen műveletek hajthatók végre a teljesítmény javítása érdekében.

A teljesítmény optimalizálása

A Tailwind Traders forgatókönyvét folytatva a szemantikai modell áttekintése során felfedezheti, hogy a lekérdezés a DirectQuery használatával csatlakoztatta Power BI Desktop a forrásadatokhoz. A felhasználók valószínűleg a DirectQuery használata miatt tapasztalnak alacsony jelentéskészítési teljesítményt. Túlságosan lassú a jelentésoldalak betöltése, a táblák pedig bizonyos kijelölések esetén nem frissülnek elég gyorsan. Ideje lépéseket tenni a DirectQuery-modell teljesítményének optimalizálása érdekében.

Megvizsgálhatja, milyen lekérdezéseket küld a rendszer az alapul szolgáló forrásnak, és megpróbálhatja azonosítani a gyenge lekérdezési teljesítmény okát. Ezután a teljes teljesítmény optimalizálása érdekében módosításokat hajthat végre a Power BI Desktopban és az alapul szolgáló adatforrásban egyaránt.

Az adatok optimalizálása a Power BI Desktopban

Ha a lehetséges optimalizálási lépéseket már végrehajtotta az adatforráson, a Power BI Desktop Teljesítményelemző funkciójának használatával elkülönítheti az egyes lekérdezéseket, hogy jóváhagyhassa a lekérdezésterveket.

Megvizsgálhatja az alapul szolgáló forrásnak küldött lekérdezések időtartamát, és azonosíthatja, mely lekérdezések betöltése vesz túl sok időt igénybe. Más szóval meghatározhatja, hol vannak a szűk keresztmetszetek a rendszerben.

A DirectQuery-modellek optimalizálásához nem kell speciális megközelítést használnia; ugyanazokat az optimalizálási technikákat alkalmazhatja a DirectQuery-forrás adatain is, mint amelyeket az importált adatok finomhangolásánál használt. Például csökkentheti a jelentés lapjain található vizualizációk számát, vagy csökkentheti a vizualizációkban használt mezők számát. Esetleg eltávolíthatja a felesleges oszlopokat és sorokat.

A DirectQuery-lekérdezések optimalizálásával kapcsolatos részletesebb útmutatásért lásd: A DirectQuery-modell útmutatója Power BI Desktop és útmutató a DirectQuery sikeres használatához.

Az alapul szolgáló adatforrás optimalizálása (csatlakoztatott adatbázisnál)

Az optimalizálás első állomása az adatforrás. A forrásadatbázist érdemes a lehető leghatékonyabbra hangolni, hiszen minden olyan intézkedés, ami javítja a forrásadatbázis teljesítményét, kihat a Power BI DirectQuery teljesítményére is. Ezért az adatbázison végzett munka hozza a legjobb eredményeket.

Fontolja meg az alábbi adatbázisoknál alkalmazható általános eljárások használatát, amelyek a legtöbb helyzetben érvényesek:

  • Kerülje a komplex számított oszlopok használatát, mert ilyenkor a számítási kifejezés be van ágyazva a forrás-lekérdezésbe is. Hatékonyabb visszaküldeni a kifejezést a forrásnak, mivel ezzel elkerülhető a leküldés. Érdemes lehet helyettes kulcsú oszlopokat is hozzáadni a dimenzió típusú táblákhoz.

  • Vizsgálja meg az indexeket, és ellenőrizze, hogy megfelelő-e a jelenlegi indexelés. Ha új indexeket kell létrehoznia, győződjön meg róla, hogy azok megfelelőek.

Tekintse át az adatforráshoz tartozó útmutatót, és hajtsa végre a teljesítménnyel kapcsolatos javaslatokat.

A lekérdezéscsökkentő beállítások testreszabása

A Power BI Desktop lehetővé teszi, hogy csökkentse a lekérdezések számát, és letiltson néhány olyan interakciót, amelyek rossz hatással lehetnek a felhasználói élményre, ha a létrejövő lekérdezések futtatása túl sok időt vesz igénybe. A beállítások alkalmazásával megakadályozhatja, hogy az adatforrást folyamatosan lekérdezések bombázzák, ez pedig javítja az általános teljesítményt.

A következő példában bemutatjuk, hogyan szerkesztheti az alapértelmezett beállításokat, és alkalmazhatja az elérhető adatcsökkentési beállításokat a modellen. A beállítások eléréséhez válassza a Fájlbeállítások>és beállítások>Beállítások lehetőséget, görgessen lefelé az oldalon, majd válassza a Lekérdezéscsökkentés lehetőséget.

A következő lekérdezéscsökkentő lehetőségek érhetők el:

  • A következő által küldött lekérdezések számának csökkentése: ... – Alapértelmezés szerint a vizualizációk az összes többi vizualizációval összeköttetésben vannak. A jelölőnégyzet kiválasztásával letiltja ezt az alapértelmezett interakciót. Ezután az Interakciók szerkesztése funkció használatával megadhatja, hogy mely vizualizációk kommunikálhassanak egymással.

  • Szeletelők – Az alapértelmezett beállítás itt a Szeletelő módosításainak azonnali alkalmazása. Ha azt szeretné, hogy a felhasználóknak manuálisan kelljen alkalmazniuk a szeletelők módosításait, jelölje be a Ha készen áll a módosítások alkalmazására, adjon hozzá egy Alkalmaz gombot mindegyik szeletelőhöz lehetőséget.

  • Szűrők – Alapértelmezés szerint itt az Egyszerű szűrési módosítások azonnali alkalmazása lehetőség van kiválasztva. Ha szeretné, hogy a jelentés felhasználóinak manuálisan kelljen alkalmazniuk a szűrők módosításait, válassza ki a következő lehetőségek egyikét:

    • Ha készen áll a módosítások alkalmazására, adjon hozzá egy Alkalmaz gombot mindegyik alapvető szűrőhöz

    • Egyetlen Alkalmaz gomb hozzáadása a szűrő paneljéhez az összes módosítás egyszerre történő alkalmazásához (előzetes verzió)

A lekérdezéscsökkentő beállítások elérése