Megosztás a következőn keresztül:


Power BI modellezési útmutató a Power Platformhoz

A Microsoft Dataverse számos microsoftos üzleti alkalmazás termékének szabványos adatplatformja, beleértve a Dynamics 365 Customer Engagement és a Power Apps vászonalapú alkalmazásait, valamint a Dynamics 365 Customer Voice (korábbi nevén Microsoft Forms Pro), a Power Automate-jóváhagyások, a Power Apps-portálok és mások számára.

Ez a cikk útmutatást nyújt a Dataverse-hez csatlakozó Power BI-adatmodellek létrehozásához. Ismerteti a Dataverse-séma és az optimalizált Power BI-séma közötti különbségeket, és útmutatást nyújt az üzleti alkalmazás adatainak láthatóságának növeléséhez a Power BI-ban.

A könnyű beállítás, a gyors üzembe helyezés és a széles körű bevezetés miatt a Dataverse egyre nagyobb mennyiségű adatot tárol és kezel a szervezetek környezeteiben. Ez azt jelenti, hogy még nagyobb igény és lehetőség van az elemzések integrálására ezekkel a folyamatokkal. A lehetőségek közé tartoznak a következők:

  • Jelentés az összes Dataverse-adatról, amely túllép a beépített diagramok korlátain.
  • Egyszerű hozzáférést biztosít a releváns, környezetfüggően szűrt jelentésekhez egy adott rekordon belül.
  • A Dataverse-adatok értékének növelése külső adatokkal való integrálásával.
  • Használja ki a Power BI beépített mesterséges intelligenciáját (AI) anélkül, hogy összetett kódot kellene írnia.
  • A Power Platform-megoldások használatának növelése a hasznosságuk és értékük növelésével.
  • Adja meg az alkalmazás adatainak értékét az üzleti döntéshozóknak.

Csatlakozás Power BI-t a Dataverse-be

A Power BI Dataverse-be való Csatlakozás magában foglalja egy Power BI-adatmodell létrehozását. Power BI-modell létrehozásához három módszer közül választhat.

  • Dataverse-adatok importálása a Dataverse-összekötő használatával: Ez a metódus gyorsítótárazza (tárolja) a Dataverse-adatokat egy Power BI-modellben. A memórián belüli lekérdezésnek köszönhetően gyors teljesítményt nyújt. Emellett tervezési rugalmasságot biztosít a modellezők számára, lehetővé téve számukra, hogy más forrásokból származó adatokat integráljanak. Ezen erősségek miatt az adatok importálása az alapértelmezett mód a modell Power BI Desktopban való létrehozásakor.
  • Dataverse-adatok importálása az Azure Synapse Link használatával: Ez a módszer az importálási módszer egyik változata, mivel a Power BI-modellben is gyorsítótárazza az adatokat, de ezt az Azure Synapse Analyticshez való csatlakozással teszi. Az Azure Synapse Link for Dataverse használatával a Dataverse-táblák folyamatosan replikálódnak az Azure Synapse vagy az Azure Data Lake Storage (ADLS) Gen2 szolgáltatásba. Ez a módszer több százezer vagy akár több millió rekord jelentésére szolgál Dataverse-környezetekben.
  • DirectQuery-kapcsolat létrehozása a Dataverse-összekötő használatával: Ez a módszer az adatok importálásának alternatíva. A DirectQuery-modellek csak a modell struktúráját meghatározó metaadatokból állnak. Amikor egy felhasználó megnyitja a jelentést, a Power BI natív lekérdezéseket küld a Dataverse-nek az adatok lekéréséhez. Érdemes lehet DirectQuery-modellt létrehozni, ha a jelentéseknek közel valós idejű Dataverse-adatokat kell megjeleníteniük, vagy amikor a Dataversenek szerepköralapú biztonságot kell kikényszerítenie, hogy a felhasználók csak a hozzáféréshez szükséges jogosultságokkal rendelkező adatokat láthassák.

Fontos

Bár a DirectQuery-modell akkor lehet jó alternatíva, ha közel valós idejű jelentéskészítésre vagy a Dataverse biztonságának érvényesítésére van szükség egy jelentésben, ez lassú teljesítményt eredményezhet a jelentés esetében.

A Cikk későbbi részében megismerheti a DirectQuery szempontjait.

A Power BI-modell megfelelő módszerének meghatározásához fontolja meg a következő szempontokat:

  • Lekérdezési teljesítmény
  • Adatmennyiség
  • Adatkésés
  • Szerepköralapú biztonság
  • A beállítás összetettsége

Tipp.

A modell-keretrendszerekről (importálás, DirectQuery vagy összetett), azok előnyeiről és korlátairól, valamint a Power BI-adatmodellek optimalizálását segítő funkciókról a Power BI-modell keretrendszerének kiválasztása című témakörben olvashat részletesen.

Lekérdezési teljesítmény

Az importálási modelleknek küldött lekérdezések gyorsabbak, mint a DirectQuery-adatforrásokhoz küldött natív lekérdezések. Ennek az az oka, hogy az importált adatok gyorsítótárazva lesznek a memóriában, és elemzési lekérdezésekhez (szűrési, csoportosítási és összegzési műveletekhez) van optimalizálva.

Ezzel szemben a DirectQuery-modellek csak akkor kérnek le adatokat a forrásból, ha a felhasználó megnyitja a jelentést, ami másodperces késést eredményez a jelentés megjelenítésekor. Emellett a jelentés felhasználói interakciói megkövetelik, hogy a Power BI újra lekérje a forrást, ami tovább csökkenti a válaszképességet.

Adatmennyiség

Importálási modell fejlesztésekor törekednie kell a modellbe betöltött adatok minimalizálására. Ez különösen igaz a nagy modellekre, vagy olyan modellekre, amelyek várhatóan idővel nagyok lesznek. További információ: Adatcsökkentési technikák importálási modellezéshez.

A Dataverse-hez való DirectQuery-kapcsolat akkor jó választás, ha a jelentés lekérdezési eredménye nem nagy. A nagy lekérdezési eredmények több mint 20 000 sort jelentenek a jelentés forrástábláiban, vagy a szűrők alkalmazása után visszaadott eredmény több mint 20 000 sor. Ebben az esetben a Dataverse-összekötő használatával hozhat létre Power BI-jelentést.

Feljegyzés

A 20 000 sorméret nem korlát. Minden adatforrás-lekérdezésnek azonban 10 percen belül eredményt kell adnia. A cikk későbbi részében megismerheti, hogyan dolgozhat ezen korlátozásokon belül, és megismerheti a Dataverse DirectQuery egyéb tervezési szempontjait.

A nagyobb szemantikai modellek (korábbi nevén adathalmazok) teljesítményét a Dataverse-összekötővel javíthatja az adatok adatmodellbe való importálásához.

Az Azure Synapse Link for Dataverse használata még nagyobb szemantikai modelleket is igénybe vehet – több százezer vagy akár több millió sorból álló sorokkal. Ez a módszer beállít egy folyamatban lévő felügyelt folyamatot, amely a Dataverse-adatokat CSV- vagy Parquet-fájlokként másolja az ADLS Gen2-be. A Power BI ezután lekérdezhet egy Kiszolgáló nélküli Azure Synapse SQL-készletet egy importálási modell betöltéséhez.

Adatkésés

Amikor a Dataverse-adatok gyorsan változnak, és a jelentés felhasználóinak naprakész adatokat kell látniuk, a DirectQuery-modell közel valós idejű lekérdezési eredményeket képes nyújtani.

Tipp.

Létrehozhat egy Power BI-jelentést, amely automatikus oldalfrissítéssel jeleníti meg a valós idejű frissítéseket, de csak akkor, ha a jelentés DirectQuery-modellhez csatlakozik.

Az adatmodellek importálásának végre kell hajtania egy adatfrissítést, hogy lehetővé tegye a legutóbbi adatváltozások jelentését. Ne feledje, hogy a napi ütemezett adatfrissítési műveletek száma korlátozott. Egy megosztott kapacitáson naponta legfeljebb nyolc frissítést ütemezhet. Prémium szintű vagy Microsoft Fabric-kapacitás esetén naponta legfeljebb 48 frissítést ütemezhet, ami 15 perces frissítési gyakoriságot érhet el.

Fontos

Ez a cikk időnként a Power BI Premiumra vagy annak kapacitás-előfizetésére (P termékváltozatokra) hivatkozik. Vegye figyelembe, hogy a Microsoft jelenleg összevonja a vásárlási lehetőségeket, és visszavonul a Power BI Premium kapacitásonkénti termékváltozataitól. Az új és a meglévő ügyfeleknek érdemes megfontolni a Fabric-kapacitás-előfizetések (F SKU-k) megvásárlását.

További információ: Fontos frissítés a Power BI Premium licenceléséhez és a Power BI Premiumhoz – gyakori kérdések.

A növekményes frissítéssel gyorsabb és közel valós idejű teljesítményt érhet el (csak a Premium vagy a Fabric használatával érhető el).

Szerepköralapú biztonság

Ha szükség van a szerepköralapú biztonság kikényszerítésére, az közvetlenül befolyásolhatja a Power BI-modell keretrendszerének választását.

A Dataverse összetett szerepköralapú biztonságot kényszeríthet ki adott rekordok adott felhasználókhoz való hozzáférésének szabályozásához. Előfordulhat például, hogy egy értékesítő csak az értékesítési lehetőségeket látja, míg az értékesítési vezető az összes értékesítő összes értékesítési lehetőségét láthatja. Az összetettség szintjét a szervezet igényeinek megfelelően szabhatja testre.

A Dataverse-alapú DirectQuery-modellek a jelentésfelhasználó biztonsági környezetével csatlakozhatnak. Így a jelentés felhasználója csak azokat az adatokat látja, amelyekhez hozzáférésük van. Ez a megközelítés leegyszerűsítheti a jelentéstervet, és elfogadható teljesítményt biztosít.

A jobb teljesítmény érdekében létrehozhat egy importálási modellt, amely a Dataverse-hez csatlakozik. Ebben az esetben szükség esetén sorszintű biztonságot (RLS) is hozzáadhat a modellhez.

Feljegyzés

A Dataverse szerepköralapú biztonságának replikálása a Power BI RLS-ként nehéz lehet, különösen akkor, ha a Dataverse összetett engedélyeket kényszerít ki. Emellett szükség lehet folyamatos felügyeletre, hogy a Power BI-engedélyek szinkronban maradjanak a Dataverse-engedélyekkel.

A Power BI RLS-ről további információt a Power BI Desktop sorszintű biztonsági (RLS) útmutatójában talál.

A beállítás összetettsége

A Dataverse-összekötő használata a Power BI-ban – akár importáláshoz, akár DirectQuery-modellekhez – egyszerű, és nem igényel speciális szoftver- vagy emelt szintű Dataverse-engedélyeket. Ez előnyt jelent az első lépésekben érintett szervezetek vagy részlegek számára.

Az Azure Synapse Link beállításhoz rendszergazdai hozzáférés szükséges a Dataverse-hez és bizonyos Azure-engedélyekhez. Ezek az Azure-engedélyek szükségesek a tárfiók és a Synapse-munkaterület beállításához.

Ez a szakasz a Dataverse-hez csatlakozó Power BI-modellek létrehozásakor figyelembe veendő tervezési mintákat (és antimintákat) ismerteti. Ezek közül a minták közül csak néhány egyedi a Dataverse-ben, de általában gyakori kihívást jelentenek a Dataverse-készítők számára a Power BI-jelentések készítésekor.

Fókusz egy adott használati esetre

Ahelyett, hogy mindent megpróbálna megoldani, koncentráljon az adott használati esetre.

Ez a javaslat valószínűleg a leggyakoribb és legkönnyebben a legnagyobb kihívást jelentő anti-minta elkerülése érdekében. Kihívást jelent egyetlen olyan modell létrehozása, amely minden önkiszolgáló jelentéskészítési igényt kielégít. A valóság az, hogy a sikeres modellek egy központi ténykészlettel kapcsolatos kérdések megválaszolására épülnek egyetlen alapvető témában. Bár ez kezdetben úgy tűnhet, hogy korlátozza a modellt, ez valójában lehetővé teszi, mert a modellt finomhangolhatja és optimalizálhatja a témában felmerülő kérdések megválaszolásához.

Annak érdekében, hogy biztosan tisztában legyen a modell céljával, tegye fel magának a következő kérdéseket.

  • Melyik témakört támogatja ez a modell?
  • Ki a jelentések célközönsége?
  • Milyen kérdésekre próbálnak választ adni a jelentések?
  • Mi a minimális működőképes szemantikai modell?

Ne egyesítsen több témakörterületet egyetlen modellben, csak azért, mert a jelentésfelhasználónak több témakörterületre vonatkozó kérdései vannak, amelyeket egyetlen jelentéssel szeretne megoldani. Ha több jelentésre bontja ki a jelentést, amelyek mindegyike egy másik témakörre (vagy ténytáblára) összpontosít, sokkal hatékonyabb, skálázható és kezelhető modelleket hozhat létre.

Csillagséma tervezése

Előfordulhat, hogy a Dataverse-sémát jól ismerő dataverse-fejlesztők és rendszergazdák is megpróbálják ugyanazt a sémát reprodukálni a Power BI-ban. Ez a megközelítés egy anti-minta, és ez valószínűleg a legnehezebb leküzdeni, mert csak úgy érzi, helyesen fenntartani a konzisztenciát.

A Dataverse, mint relációs modell, jól megfelel a céljának. Azonban nem elemzési modellként van kialakítva, amely elemzési jelentésekhez van optimalizálva. Az elemzési adatok modellezésének leggyakoribb mintája a csillagséma-kialakítás . A csillagséma a relációs adattárházak által széles körben alkalmazott, kiforrott modellezési megközelítés. A modellezőknek dimenzióként vagy tényként kell besorolniuk a modelltábláikat. A jelentések dimenziótáblaoszlopok használatával és ténytáblaoszlopok összegzésével szűrhetnek vagy csoportosíthatnak.

Az ábrán egy csillagséma látható, amely egyetlen lehetőség ténytáblából és négy dimenziótáblából áll.

További információ: A csillagséma és a Power BI fontossága.

Power Query-lekérdezések optimalizálása

A Power Query összefésítési motorja arra törekszik, hogy amikor csak lehetséges, a hatékonyság érdekében hajtsa össze a lekérdezéseket. Olyan lekérdezés, amely a delegáltak összecsukható lekérdezési feldolgozását teszi lehetővé a forrásrendszer számára.

A forrásrendszernek, ebben az esetben a Dataverse-nek csak szűrt vagy összegzett eredményeket kell kézbesítenie a Power BI-nak. Az összecsukott lekérdezések gyakran jelentősen gyorsabbak és hatékonyabbak, mint a nem összecsukható lekérdezések.

A lekérdezések összecsukásával kapcsolatos további információkért tekintse meg a Power Query-lekérdezések összecsukását ismertető témakört.

Feljegyzés

A Power Query optimalizálása széles körű témakör. Ha jobban szeretné megismerni, hogy a Power Query mit tesz a Power Bi Desktopban a létrehozáskor és a modellfrissítési időpontban, tekintse meg a lekérdezésdiagnosztikát.

A lekérdezésoszlopok számának minimalizálása

Ha a Power Query használatával tölt be egy Dataverse-táblát, alapértelmezés szerint az összes sort és oszlopot lekéri. Ha például egy rendszerfelhasználó táblát kérdez le, az több mint 1000 oszlopot tartalmazhat. A metaadatok oszlopai más entitásokkal való kapcsolatokat, valamint a beállításfeliratok keresését tartalmazzák, így az oszlopok teljes száma a Dataverse-tábla összetettségével nő.

Az adatok minden oszlopból való lekérése anti-minta. Ez gyakran kiterjesztett adatfrissítési műveleteket eredményez, és a lekérdezés meghiúsul, ha az adatok visszaadásához szükséges idő meghaladja a 10 percet.

Javasoljuk, hogy csak a jelentések által igényelt oszlopokat kérje le. A jelentések fejlesztése során gyakran érdemes újraértékelni és újrabontásra állítani a lekérdezéseket, így azonosíthatja és eltávolíthatja a nem használt oszlopokat. További információ: Adatcsökkentési technikák importálási modellezéshez (Felesleges oszlopok eltávolítása).

Emellett győződjön meg arról, hogy a Power Query Remove oszlopait korán bevezeti, hogy az visszaálljon a forráshoz. Így a Power Query elkerülheti a forrásadatok kinyerésének szükségtelen munkáját, hogy később (egy kibontott lépésben) elvetje őket.

Ha több oszlopot tartalmazó táblával rendelkezik, előfordulhat, hogy nem praktikus a Power Query interaktív lekérdezésszerkesztőjének használata. Ebben az esetben egy üres lekérdezés létrehozásával kezdheti. Ezután a Speciális szerkesztő használatával beilleszthet egy kezdőpontot létrehozó minimális lekérdezésbe.

Fontolja meg az alábbi lekérdezést, amely a fióktábla két oszlopából kér le adatokat.

let
    Source = CommonDataService.Database("demo.crm.dynamics.com", [CreateNavigationProperties=false]),
    dbo_account = Source{[Schema="dbo", Item="account"]}[Data],
    #"Removed Other Columns" = Table.SelectColumns(dbo_account, {"accountid", "name"})
in
    #"Removed Other Columns"

Natív lekérdezések írása

Ha konkrét átalakítási követelményekkel rendelkezik, jobb teljesítményt érhet el a Dataverse SQL-ben írt natív lekérdezéssel, amely a Transact-SQL egy részhalmaza. Natív lekérdezést írhat a következőre:

  • Csökkentse a sorok számát (záradék WHERE használatával).
  • Adatok összesítése (a záradékok és HAVING a GROUP BY záradékok használatával).
  • Táblák összekapcsolása meghatározott módon (a szintaxis vagy APPLY a JOIN szintaxis használatával).
  • Támogatott SQL-függvények használata.

További információkért lásd:

Natív lekérdezések végrehajtása az EnableFolding beállítással

A Power Query natív lekérdezést hajt végre a Value.NativeQuery függvény használatával.

A függvény használatakor fontos hozzáadni azt a lehetőséget, amely biztosítja, hogy a EnableFolding=true lekérdezések vissza legyenek hajtva a Dataverse szolgáltatásba. Egy natív lekérdezés csak akkor hajtható össze, ha hozzáadja ezt a beállítást. A beállítás engedélyezése jelentős teljesítménybeli javulást eredményezhet – bizonyos esetekben akár 97%-kal gyorsabb is lehet.

Fontolja meg a következő lekérdezést, amely natív lekérdezést használ a fióktábla kijelölt oszlopainak forrásához. A natív lekérdezés összecsukható, mert a EnableFolding=true beállítás be van állítva.

let
    Source = CommonDataService.Database("demo.crm.dynamics.com"),
    dbo_account = Value.NativeQuery(
        Source,
        "SELECT A.accountid, A.name FROM account A"
        ,null
        ,[EnableFolding=true]
    )
in
     dbo_account

A legnagyobb teljesítménybeli javulásra számíthat, ha nagy adatmennyiségből származó adathalmazt szeretne beolvasni.

Tipp.

A teljesítmény javítása attól is függ, hogy a Power BI hogyan lekérdezést futtat a forrásadatbázisban. A DAX-függvényt használó COUNTDISTINCT mértékek például szinte semmilyen javulást nem mutattak az összecsukható mutatóval vagy anélkül. Amikor a mértékképletet átírták a SUMX DAX-függvény használatára, a lekérdezés összecsukva 97%-os javulást eredményez ugyanazon lekérdezésen a tipp nélkül.

További információ: Value.NativeQuery. (A EnableFolding beállítás nincs dokumentálva, mert csak bizonyos adatforrásokra vonatkozik.)

A kiértékelési szakasz felgyorsítása

Ha a Dataverse-összekötőt (korábbi nevén Common Data Service-t) használja, hozzáadhatja azt a CreateNavigationProperties=false lehetőséget, hogy felgyorsítsa az adatimportálás kiértékelési szakaszát.

Az adatimportálás kiértékelési szakasza a forrás metaadatain keresztül iterál az összes lehetséges táblakapcsolat meghatározásához. Ez a metaadatok kiterjedtek lehetnek, különösen a Dataverse esetében. Ha hozzáadja ezt a lehetőséget a lekérdezéshez, tudatja a Power Queryvel, hogy nem kívánja használni ezeket a kapcsolatokat. Ezzel a beállítással a Power BI Desktop kihagyhatja a frissítés ezen szakaszát, és továbbléphet az adatok beolvasására.

Feljegyzés

Ne használja ezt a beállítást, ha a lekérdezés a kibontott kapcsolatoszlopoktól függ.

Vegyünk egy példát, amely adatokat kér le a fióktáblából . Három, a területhez kapcsolódó oszlopot tartalmaz: territory, territoryid és territoryidname.

Képernyőkép a három területoszlopos fióktábla adatainak előnézetéről.

A beállítás megadásakor CreateNavigationProperties=false a territoryid és a territoryidname oszlopok megmaradnak, de a terület oszlop, amely egy kapcsolatoszlop (értékhivatkozásokat jelenít meg), ki lesz zárva. Fontos tisztában lenni azzal, hogy a Power Query kapcsolatoszlopai a modellkapcsolatok fogalmától eltérőek, amelyek a szűrőket a modelltáblák között propagálja.

Fontolja meg a következő lekérdezést, amely a (Forrás lépésben) lehetőséget CreateNavigationProperties=false használja az adatimportálás kiértékelési szakaszának felgyorsításához.

let
    Source = CommonDataService.Database("demo.crm.dynamics.com"
        ,[CreateNavigationProperties=false]),
    dbo_account = Source{[Schema="dbo", Item="account"]}[Data],
    #"Removed Other Columns" = Table.SelectColumns(dbo_account, {"accountid", "name", "address1_stateorprovince", "address1_country", "industrycodename", "territoryidname"}),
    #"Renamed Columns" = Table.RenameColumns(#"Removed Other Columns", {{"name", "Account Name"}, {"address1_country", "Country"}, {"address1_stateorprovince", "State or Province"}, {"territoryidname", "Territory"}, {"industrycodename", "Industry"}})
in
    #"Renamed Columns"

Ha ezt a lehetőséget használja, akkor valószínűleg jelentős teljesítménybeli javulást tapasztal, ha egy Dataverse-tábla sok kapcsolatot létesít más táblákkal. Mivel például a SystemUser tábla az adatbázis minden más táblájára vonatkozik, a tábla frissítési teljesítménye a beállítás beállításával CreateNavigationProperties=false előnyös lehet.

Feljegyzés

Ez a beállítás javíthatja az importálási táblák vagy kettős tárolási módú táblák adatfrissítésének teljesítményét, beleértve Power Query-szerkesztő ablakmódosítások alkalmazását. Nem javítja a DirectQuery tárolási módú táblák interaktív keresztszűrésének teljesítményét.

Üres választási lehetőségek címkéinek feloldása

Ha azt észleli, hogy a Dataverse választási lehetőségek címkéi üresek a Power BI-ban, annak az lehet az oka, hogy a címkék nem lettek közzétéve a táblázatos adatfolyam (TDS) végponton.

Ebben az esetben nyissa meg a Dataverse Maker portált, lépjen a Megoldások területre, majd válassza az Összes testreszabás közzététele lehetőséget. A közzétételi folyamat frissíti a TDS-végpontot a legújabb metaadatokkal, így a beállításfeliratok elérhetővé válnak a Power BI számára.

A Dataverse lehetővé teszi táblák szinkronizálását az Azure Data Lake Storage-ba (ADLS), majd egy Azure Synapse-munkaterületen keresztül csatlakozhat ezekhez az adatokhoz. Minimális erőfeszítéssel beállíthatja az Azure Synapse Linket a Dataverse-adatok Azure Synapse-ba való feltöltéséhez, és lehetővé teszi az adatcsoportok számára a mélyebb elemzések feltárásához.

Az Azure Synapse Link lehetővé teszi az adatok és metaadatok folyamatos replikálását a Dataverse-ből a data lake-be. Emellett egy beépített kiszolgáló nélküli SQL-készletet is biztosít a Power BI-lekérdezések kényelmes adatforrásaként.

Ennek a megközelítésnek az erősségei jelentősek. Az ügyfelek különböző fejlett szolgáltatások használatával elemzéseket, üzleti intelligenciát és gépi tanulási számítási feladatokat futtathatnak a Dataverse-adatok között. A speciális szolgáltatások közé tartozik az Apache Spark, a Power BI, az Azure Data Factory, az Azure Databricks és az Azure Machine Tanulás.

Az Azure Synapse Link for Dataverse létrehozásához a következő előfeltételekre lesz szüksége.

  • Rendszergazdai hozzáférés a Dataverse-környezethez.
  • Az Azure Data Lake Storage esetében:
  • A Synapse-munkaterület esetében:
    • Hozzáféréssel kell rendelkeznie egy Synapse-munkaterülethez, és Hozzá kell rendelnie a Synapse Rendszergazda istrator-hozzáférést. További információ: Beépített Synapse RBAC-szerepkörök és hatókörök.
    • A munkaterületnek ugyanabban a régióban kell lennie, mint az ADLS Gen2 tárfiókjának.

A beállítás magában foglalja a Power Appsbe való bejelentkezést és a Dataverse csatlakoztatását az Azure Synapse-munkaterülethez. A varázslóhoz hasonló felülettel új hivatkozást hozhat létre a tárfiók és az exportálni kívánt táblák kiválasztásával. Az Azure Synapse Link ezután adatokat másol az ADLS Gen2-tárolóba, és automatikusan létrehoz nézeteket a beépített Azure Synapse kiszolgáló nélküli SQL-készletben. Ezután power BI-modell létrehozásához csatlakozhat ezekhez a nézetekhez .

Az ábrán az Azure Synapse Link az adatok ADLS Gen2-tárolóba való másolását és az Azure Synapse Analyticshez csatlakozó Power BI-t mutatja be.

Tipp.

Az Azure Synapse Link létrehozásával, kezelésével és figyelésével kapcsolatos teljes dokumentációért lásd : Azure Synapse Link létrehozása a Dataverse-hez az Azure Synapse-munkaterülettel.

Második kiszolgáló nélküli SQL-adatbázis létrehozása

Létrehozhat egy második kiszolgáló nélküli SQL-adatbázist, és használhatja egyéni jelentésnézetek hozzáadására. Így egyszerűsített adatkészletet jeleníthet meg a Power BI létrehozójának, amely lehetővé teszi számukra, hogy hasznos és releváns adatokon alapuló modellt hozzanak létre. Az új kiszolgáló nélküli SQL-adatbázis lesz a létrehozó elsődleges forráskapcsolata, valamint a data lake-ből származó adatforrások barátságos ábrázolása.

Az ábrán az Azure Synapse Link az adatok ADLS Gen2-tárolóba való másolását és az Azure Synapse Analyticshez csatlakozó Power BI-t mutatja be. Egyéni jelentésnézeteket is tartalmaz.

Ez a megközelítés szűrt, bővített és szűrt adatokat biztosít a Power BI-nak.

Az Azure Synapse Studio használatával kiszolgáló nélküli SQL-adatbázist hozhat létre az Azure Synapse-munkaterületen. Válassza a Kiszolgáló nélküli lehetőséget az SQL-adatbázis típusaként, és adjon meg egy adatbázisnevet. A Power Query a munkaterületi SQL-végponthoz csatlakozva csatlakozhat ehhez az adatbázishoz.

Egyéni nézetek létrehozása

Létrehozhat olyan egyéni nézeteket, amelyek kiszolgáló nélküli SQL-készlet lekérdezéseit tördelik. Ezek a nézetek egyszerű, tiszta adatforrásokként szolgálnak, amelyekhez a Power BI csatlakozik. A nézeteknek a következőnek kell lennie:

  • Adja meg a választási lehetőségek mezőihez társított címkéket.
  • Az összetettség csökkentése csak az adatmodellezéshez szükséges oszlopok beleszámításával.
  • Szűrje ki a szükségtelen sorokat, például az inaktív rekordokat.

Vegye figyelembe az alábbi nézetet, amely lekéri a kampányadatokat.

CREATE VIEW [VW_Campaign]
AS
    SELECT
        [base].[campaignid] AS [CampaignID]
        [base].[name] AS [Campaign],
        [campaign_status].[LocalizedLabel] AS [Status],
        [campaign_typecode].[LocalizedLabel] AS [Type Code]
    FROM
        [<MySynapseLinkDB>].[dbo].[campaign] AS [base]
        LEFT OUTER JOIN [<MySynapseLinkDB>].[dbo].[OptionsetMetadata] AS [campaign_typecode]
            ON [base].[typecode] = [campaign_typecode].[option]
               AND [campaign_typecode].[LocalizedLabelLanguageCode] = 1033
               AND [campaign_typecode].[EntityName] = 'campaign'
               AND [campaign_typecode].[OptionSetName] = 'typecode'
        LEFT OUTER JOIN [<MySynapseLinkDB>].[dbo].[StatusMetadata] AS [campaign_status]
            ON [base].[statuscode] = [campaign_Status].[status]
               AND [campaign_status].[LocalizedLabelLanguageCode] = 1033
               AND [campaign_status].[EntityName] = 'campaign'
    WHERE
        [base].[statecode] = 0;

Figyelje meg, hogy a nézet csak négy oszlopot tartalmaz, amelyek mindegyike rövid névvel van elnevezve. Van egy WHERE záradék is, amely csak a szükséges sorokat adja vissza, ebben az esetben az aktív kampányokat. A nézet lekérdezi az OptionsetMetadata és StatusMetadata táblákhoz csatlakoztatott kampánytáblát is, amely lekéri a választási lehetőségek címkéjét.

Megfelelő táblák lekérdezése

Az Azure Synapse Link for Dataverse biztosítja az adatok folyamatos szinkronizálását a data lake-ben lévő adatokkal. A nagy kihasználtságú tevékenységek esetén az egyidejű írások és olvasások olyan zárolásokat hozhatnak létre, amelyek a lekérdezések sikertelenségéhez vezetnek. Az adatok lekérésének megbízhatósága érdekében a rendszer szinkronizálja a táblaadatok két verzióját az Azure Synapse-ban.

  • Közel valós idejű adatok: A Dataverse-ből az Azure Synapse Linken keresztül szinkronizált adatok másolatát biztosítja hatékony módon, észlelve, hogy milyen adatok változtak az adatok első kinyerése vagy legutóbbi szinkronizálása óta.
  • Pillanatkép-adatok: Közel valós idejű adatok írásvédett másolatát biztosítja, amelyek rendszeres időközönként (ebben az esetben óránként) frissülnek. A pillanatkép-adattáblák neve _partitioned hozzáfűzve a nevükhöz.

Ha arra számít, hogy nagy mennyiségű olvasási és írási művelet lesz egyszerre végrehajtva, a lekérdezési hibák elkerülése érdekében kérje le az adatokat a pillanatképtáblákból.

További információért tekintse meg a közel valós idejű adatok és írásvédett pillanatképadatok elérésével kapcsolatos témakört.

Csatlakozás a Synapse Analyticsbe

Az Azure Synapse kiszolgáló nélküli SQL-készletének lekérdezéséhez szüksége lesz a munkaterület SQL-végpontjára. A végpontot lekérheti a Synapse Studióból a kiszolgáló nélküli SQL-készlet tulajdonságainak megnyitásával.

A Power BI Desktopban az Azure Synapse Analytics SQL-összekötőjével csatlakozhat az Azure Synapse-hez. Amikor a rendszer kéri a kiszolgálót, adja meg a munkaterület SQL-végpontot.

Képernyőkép a kiszolgáló értékének beállításához használt SQL Server Database ablakról.

A DirectQuery szempontjai

A DirectQuery tárolási mód használata sok esetben meg tudja oldani a követelményeket. A DirectQuery használata azonban negatívan befolyásolhatja a Power BI-jelentések teljesítményét. A Dataverse-hez DirectQuery-kapcsolatot használó jelentések nem lesznek olyan gyorsak, mint egy importálási modellt használó jelentés. Általában mindenképpen importálnia kell adatokat a Power BI-ba, amikor csak lehetséges.

Javasoljuk, hogy a DirectQuery használatakor fontolja meg az ebben a szakaszban szereplő témaköröket.

A DirectQuery tárolási móddal végzett munka időpontjának meghatározásáról további információt a Power BI-modell keretrendszerének kiválasztása című témakörben talál.

Kettős tárolási módú dimenziótáblák használata

A kettős tárolási módú tábla importálási és DirectQuery-tárolási módok használatára van beállítva. Lekérdezéskor a Power BI határozza meg a leghatékonyabb módot. Amikor csak lehetséges, a Power BI importált adatokkal próbálja kielégíteni a lekérdezéseket, mert gyorsabb.

Szükség esetén érdemes lehet kettős tárolási módra beállítani a dimenziótáblákat. Így a szeletelővizualizációk és a szűrőkártyalisták – amelyek gyakran dimenziótáblaoszlopokon alapulnak – gyorsabban fognak megjelenni, mert az importált adatokból lekérdezik őket.

Fontos

Ha egy dimenziótáblának örökölnie kell a Dataverse biztonsági modelljét, nem célszerű kettős tárolási módot használni.

A jellemzően nagy mennyiségű adatot tároló ténytábláknak DirectQuery tárolási módú táblákként kell maradniuk. Ezeket a kapcsolódó kettős tárolási módú dimenziótáblák szűrik, amelyek összekapcsolhatók a ténytáblával a hatékony szűrés és csoportosítás érdekében.

Fontolja meg a következő adatmodell-kialakítást. Három dimenziótábla, a Tulajdonos, a Fiók és a Kampány sávos felső szegélyrel rendelkezik, ami azt jelenti, hogy kettős tárolási módra vannak beállítva.

Képernyőkép egy modelldiagramról három kettős tárolási módú táblával az előző bekezdésben leírtak szerint.

A táblázatos tárolási módokról , beleértve a kettős tárolást is, a Power BI Desktop tárolási módjának kezelése című témakörben talál további információt.

Egyszeri bejelentkezés engedélyezése

Amikor DirectQuery-modellt tesz közzé a Power BI szolgáltatás, a szemantikai modell beállításaival engedélyezheti az egyszeri bejelentkezést (SSO) a Microsoft Entra ID (korábbi nevén Azure Active Directory) OAuth2 használatával a jelentés felhasználói számára. Ezt a beállítást akkor kell engedélyeznie, ha a Dataverse-lekérdezéseket a jelentésfelhasználó biztonsági kontextusában kell végrehajtani.

Ha az egyszeri bejelentkezés lehetőség engedélyezve van, a Power BI elküldi a jelentésfelhasználó hitelesített Microsoft Entra hitelesítő adatait a lekérdezésekben a Dataverse-nek. Ez a beállítás lehetővé teszi, hogy a Power BI betartsa az adatforrásban beállított biztonsági beállításokat.

Képernyőkép a szemantikai modell hitelesítő adatainak ablakról, amelyen engedélyezve van az egyszeri bejelentkezés lehetőség.

További információ: Egyszeri bejelentkezés (SSO) DirectQuery-források esetén.

"Saját" szűrők replikálás a Power Queryben

A Microsoft Dynamics 365 Customer Engagement (CE) és a Dataversere épülő modellalapú Power Apps használatakor olyan nézeteket hozhat létre, amelyek csak olyan rekordokat mutatnak, amelyekben egy felhasználónév mező (például Tulajdonos) egyenlő az aktuális felhasználóval. Létrehozhat például "Saját nyitott lehetőségek", "Saját aktív esetek" és mások nevű nézeteket.

Vegyünk egy példát arra, hogy a Dynamics 365 Saját aktív fiókok nézete tartalmaz egy szűrőt, amelyben a Tulajdonos egyenlő az aktuális felhasználóval.

Képernyőkép az Aktív fiókok nézethez beállított szűrőkről. A szűrőfeltétel tulajdonosa megegyezik az aktuális felhasználóval.

Ezt az eredményt egy natív lekérdezés használatával reprodukálhatja a Power Queryben, amely beágyazza a CURRENT_USER jogkivonatot.

Tekintse meg az alábbi példát, amely egy natív lekérdezést mutat be, amely az aktuális felhasználó fiókjait adja vissza. WHERE A záradékban figyelje meg, hogy a tulajdonosazonosító oszlopot a CURRENT_USER jogkivonat szűri.

let
    Source = CommonDataService.Database("demo.crm.dynamics.com", [CreateNavigationProperties=false],
    dbo_account = Value.NativeQuery(Source, "
        SELECT
            accountid, accountnumber, ownerid, address1_city, address1_stateorprovince, address1_country
        FROM account
        WHERE statecode = 0
            AND ownerid = CURRENT_USER
    ", null, [EnableFolding]=true])
in
    dbo_account

Amikor közzéteszi a modellt a Power BI szolgáltatás, engedélyeznie kell az egyszeri bejelentkezést (SSO), hogy a Power BI elküldje a jelentésfelhasználó hitelesített Microsoft Entra-hitelesítő adatait a Dataverse-nek.

Kiegészítő importálási modellek létrehozása

Létrehozhat egy DirectQuery-modellt, amely kikényszeríti a Dataverse-engedélyeket , tudva , hogy a teljesítmény lassú lesz. Ezt a modellt kiegészítheti olyan importálási modellekkel, amelyek meghatározott témákat vagy célközönségeket céloznak meg, amelyek kikényszeríthetik az RLS-engedélyeket.

Egy importálási modell például hozzáférést biztosíthat az összes Dataverse-adathoz, de nem kényszeríthet ki engedélyeket. Ez a modell olyan vezetők számára lenne megfelelő, akik már hozzáférnek az összes Dataverse-adathoz.

Egy másik példa, amikor a Dataverse szerepköralapú engedélyeket kényszerít ki az értékesítési régió szerint, létrehozhat egy importálási modellt, és replikálhatja ezeket az engedélyeket az RLS használatával. Másik lehetőségként létrehozhat egy modellt az egyes értékesítési régiókhoz. Ezután olvasási engedélyt adhat ezeknek a modelleknek (szemantikai modelleknek) az egyes régiók értékesítőinek. A regionális modellek létrehozásának megkönnyítése érdekében paramétereket és jelentéssablonokat használhat. További információ: Jelentéssablonok létrehozása és használata a Power BI Desktopban.

A cikkhez kapcsolódó további információkért tekintse meg az alábbi forrásokat.