A DirectQuery használata a Power BI Desktopban

Amikor bármely adatforráshoz csatlakozik a Power BI Desktoppal, importálhatja az adatok másolatát. Egyes adatforrások esetében közvetlenül is csatlakozhat az adatforráshoz anélkül, hogy adatokat importálhat a DirectQuery használatával.

Annak megállapításához, hogy egy adatforrás támogatja-e a DirectQueryt, tekintse meg a Power Query Csatlakozás orok című cikkben található elérhető adatforrások teljes listáját, és válassza ki azt a cikket, amely a támogatott összekötők listájából ismerteti az önt érdeklő adatforrást, majd tekintse meg az összekötő támogatott képességek című cikkének szakaszát. Ha a DirectQuery nem szerepel az adatforrás cikkének ezen szakaszában, akkor a DirectQuery nem támogatott az adatösszekötő esetében.

Az alábbiakban az importálási és DirectQuery-kapcsolati módok közötti különbségeket mutatjuk be:

  • Importálás: A kijelölt táblák és oszlopok adatainak másolata a Power BI Desktopba. Vizualizációk létrehozásakor vagy használata során a Power BI Desktop az importált adatokat használja. Ha a kezdeti importálás vagy a legutóbbi frissítés után szeretné látni a mögöttes adatváltozásokat, az adatok frissítéséhez újra importálnia kell a teljes szemantikai modellt.

  • DirectQuery: Nincs adatimportálás a Power BI Desktopba. Relációs források esetén kiválaszthatja a Power BI Desktop Mezők listájában megjelenítendő táblákat és oszlopokat. Többdimenziós források, például az SAP Business Warehouse (SAP BW) esetében a kijelölt kocka méretei és mértékei megjelennek a Mezők listában. Vizualizációk létrehozásakor vagy használata közben a Power BI Desktop lekérdezi a mögöttes adatforrást, így mindig az aktuális adatokat tekinti meg.

A DirectQuery használatakor a vizualizációk létrehozásakor vagy használatakor le kell kérdeznie a mögöttes forrást. A vizualizáció frissítéséhez szükséges idő az alapul szolgáló adatforrás teljesítményétől függ. Ha a kérés kiszolgálásához szükséges adatokat nemrég kérték le, a Power BI Desktop a legutóbbi adatokkal csökkenti a vizualizáció megjelenítéséhez szükséges időt. Ha a Kezdőlap menüszalagjának Frissítés elemét választja, az összes vizualizáció frissül az aktuális adatokkal.

Számos adatmodellezés és adatátalakítás érhető el a DirectQuery használatakor, bár néhány teljesítményalapú korlátozással. A DirectQuery előnyeiről, korlátairól és javaslatairól további információt a Power BI DirectQuery szolgáltatásában talál.

A DirectQuery előnyei

A DirectQuery használatának néhány előnye:

  • A DirectQuery lehetővé teszi, hogy nagyon nagy szemantikai modelleken hozzon létre vizualizációkat, ahol nem lenne megvalósítható az összes adat előzetes összesítéssel történő importálása.

  • A DirectQuery-jelentések mindig az aktuális adatokat használják. A mögöttes adatváltozások megtekintéséhez frissítenie kell az adatokat, és a nagy szemantikai modellek újraimportálása az adatok frissítéséhez nem valósítható meg.

  • Az 1 GB szemantikai modell korlátozása nem vonatkozik a DirectQueryre.

Csatlakozás a DirectQuery használatával

Adatforráshoz való csatlakozás a DirectQueryvel:

  1. A Power BI Desktop menüszalagjának Kezdőlap csoportjában válassza az Adatok lekérése lehetőséget, majd válasszon ki egy, a DirectQuery által támogatott adatforrást, például az SQL Servert.

  2. A kapcsolat párbeszédpanelen az Adatkapcsolati mód alatt válassza a DirectQuery lehetőséget.

Import and DirectQuery options, SQL Server Database dialog, Power BI Desktop

Közzététel a Power BI szolgáltatásban

A DirectQuery-jelentéseket közzéteheti a Power BI szolgáltatás, de további lépéseket kell tennie a Power BI szolgáltatás a jelentések megnyitásához.

  • Ha a Power BI szolgáltatás az Azure SQL Database, az Azure Synapse Analytics (korábban SQL Data Warehouse), az Amazon Redshift és a Snowflake Data Warehouse kivételével DirectQuery-adatforrásokhoz szeretné csatlakoztatni, telepítsen egy helyszíni adatátjárót, és regisztrálja az adatforrást.

  • Ha a DirectQueryt olyan felhőforrásokhoz használta, mint az Azure SQL Database, az Azure Synapse, az Amazon Redshift vagy a Snowflake Data Warehouse, nincs szükség helyszíni adatátjáróra. A közzétett jelentés megnyitásához meg kell adnia a Power BI szolgáltatás hitelesítő adatait. Hitelesítő adatok nélkül hibaüzenet jelenik meg, amikor megpróbál megnyitni egy közzétett jelentést, vagy egy DirectQuery-kapcsolattal létrehozott szemantikai modellt vizsgál.

Hitelesítő adatok megadása a jelentés megnyitásához és az adatok frissítéséhez:

  1. A Power BI szolgáltatás válassza a fogaskerék ikont a jobb felső sarokban, és válassza a Gépház.

    Screenshot of the Power BI service Settings dropdown menu.

  2. A Gépház lapon válassza a Szemantikai modellek lapot, és válassza ki a DirectQueryt használó szemantikai modellt.

  3. Az Adatforrás-kapcsolat területen adja meg az adatforráshoz való csatlakozáshoz szükséges hitelesítő adatokat.

Feljegyzés

Ha a DirectQueryt egy privát IP-címmel rendelkező Azure SQL Database-adatbázissal használta, akkor helyszíni átjárót kell használnia.

Szempontok és korlátozások

Egyes Power BI Desktop-funkciók nem támogatottak DirectQuery módban, vagy korlátozások vonatkoznak rájuk. A Power BI szolgáltatás bizonyos képességei, például a gyors elemzések, szintén nem érhetők el a DirectQueryt használó szemantikai modellekhez. Amikor eldönti, hogy használja-e a DirectQueryt, vegye figyelembe ezeket a funkciókra vonatkozó korlátozásokat. Vegye figyelembe a következő tényezőket is:

Teljesítménnyel és terheléssel kapcsolatos szempontok

A DirectQuery minden kérést elküld a forrásadatbázisnak, így a vizualizációk szükséges frissítési ideje attól függ, hogy az alapul szolgáló forrás mennyi ideig tart az eredmények visszaadásához. Legalább öt másodperc az ajánlott válaszidő a vizualizációk kért adatainak fogadásához. A 30 másodpercen túli frissítési idők elfogadhatatlanul rossz felhasználói élményt eredményeznek a jelentést használó felhasználók számára. Egy lekérdezés, amely négy percnél hosszabb időt vesz igénybe a Power BI szolgáltatás, és a felhasználó hibaüzenetet kap.

A forrásadatbázis betöltése a közzétett jelentést használó Power BI-felhasználók számától is függ, különösen akkor, ha a jelentés sorszintű biztonságot (RLS) használ. A nem RLS-irányítópult több felhasználó által megosztott csempéjének frissítése egyetlen lekérdezést küld az adatbázisnak, de az RLS-t használó irányítópult-csempék frissítéséhez felhasználónként egy lekérdezésre van szükség. A megnövekedett lekérdezések jelentősen növelik a terhelést, és hatással lehetnek a teljesítményre.

Egymillió sorkorlát

A DirectQuery egymillió sorkorlátot határoz meg a felhőbeli adatforrásokból visszaadott adatokra, amelyek nem helyszíni adatforrások. A helyszíni források egy meghatározott, soronként 4 MB hasznos adatra korlátozódnak, a védett tömörítési algoritmustól függően, vagy a teljes vizualizáció esetében 16 MB-ra. A prémium szintű kapacitások különböző maximális sorkorlátokat állíthatnak be a Power BI Premium új kapacitásbeállításait ismertető blogbejegyzésben leírtak szerint.

A Power BI a lehető leghatékonyabb lekérdezéseket hozza létre, de egyes generált lekérdezések túl sok sort kérnek le az alapul szolgáló adatforrásból. Ez a helyzet például egy olyan egyszerű diagrammal fordulhat elő, amely egy magas számosságú oszlopot tartalmaz, és az összesítési beállítás nem összegzésre van beállítva. A vizualizációnak csak 1 milliónál kisebb számosságú oszlopokkal kell rendelkeznie, vagy a megfelelő szűrőket kell alkalmaznia.

A sorkorlát nem vonatkozik a DirectQuery szemantikai modell visszaadott eredményének kiválasztásához használt összesítésekre vagy számításokra, csak a visszaadott sorokra. Az adatforráson futó lekérdezés például 10 millió sort összesíthet. Ha a Power BI-nak visszaadott adatok kevesebb mint 1 millió sorból állnak, a lekérdezés pontosan visszaadja az eredményeket. Ha az adatok több mint 1 millió sorból állnak, a Power BI hibát jelenít meg, kivéve a különböző rendszergazdai korlátokkal rendelkező prémium szintű kapacitást. A hiba azt jelzi, hogy a külső adatforrásba történő lekérdezés eredményhalmaza túllépte az 1000000 sor maximális megengedett méretét.

Biztonsági szempontok

Alapértelmezés szerint az Power BI szolgáltatás közzétett jelentést használó összes felhasználó a közzététel után megadott hitelesítő adatokkal csatlakozik a mögöttes adatforráshoz. Ez a helyzet megegyezik az importált adatokkal. Minden felhasználó ugyanazokat az adatokat látja, függetlenül az alapul szolgáló forrás által meghatározott biztonsági szabályoktól.

Ha felhasználónkénti biztonságra van szüksége DirectQuery-forrásokkal implementálva, használja az RLS-t, vagy konfigurálja a Kerberos által korlátozott hitelesítést a forráshoz. A Kerberos nem minden forráshoz érhető el. További információ: Sorszintű biztonság (RLS) a Power BI-val és Kerberos-alapú egyszeri bejelentkezés konfigurálása a Power BI szolgáltatás és a helyszíni adatforrások között.

Egyéb DirectQuery-korlátozások

A DirectQuery használatának néhány egyéb korlátozása:

  • Ha a Power Query-szerkesztő lekérdezés túl összetett, hiba történik. A hiba kijavításához törölnie kell a problémás lépést Power Query-szerkesztő, vagy át kell váltania importálási módra. A többdimenziós források, például az SAP BW nem tudják használni a Power Query-szerkesztő.

  • Az automatikus dátum/idő hierarchia nem érhető el a DirectQueryben. A DirectQuery mód nem támogatja a dátumoszlopok év, negyedév, hónap vagy nap szerinti részletezésének módját.

  • Táblázat- vagy mátrixvizualizációk esetén 125 oszlopos korlát van az eredményekre, amelyek több mint 500 sort adnak vissza DirectQuery-forrásokból. Ezek az eredmények egy görgetősávot jelenítenek meg a táblázatban vagy a mátrixban, amely lehetővé teszi további adatok beolvasását. Ebben az esetben a táblázat vagy mátrix oszlopainak maximális száma 125. Ha egy táblában vagy mátrixban 125-nél több oszlopot kell megadnia, érdemes lehet olyan mértékeket létrehozni, amelyek MINMAXFIRSTLASTnem számítanak bele ebbe a maximumba.

  • Importálásról DirectQuery módra nem válthat. A DirectQuery módról importálási módra válthat, ha az összes szükséges adatot importálja. Nem lehet visszakapcsolható, főleg azért, mert a DirectQuery nem támogatja a funkciókészletet. A DirectQuery-modellek többdimenziós forrásokon, például az SAP BW-n keresztül sem válthatók át DirectQueryről importálási módra a külső mértékek eltérő kezelése miatt.

  • Az egyszeri bejelentkezéses (SSO) hitelesítéssel rendelkező adatforrásból származó DirectQuery-táblára hivatkozó számított táblák és számított oszlopok nem támogatottak a Power BI szolgáltatás.