Používanie zložených modelov v aplikácii Power BI Desktop

Pokiaľ ste v minulosti v aplikácii Power BI Desktop použili v zostave režim DirectQuery, žiadne iné pripojenia údajov pre danú zostavu neboli povolené, či už išlo o režim DirectQuery alebo Import. V prípade zložených modelov sa toto obmedzenie odstránilo. Zostava tak môže bez problémov zahŕňať údajové pripojenia z viac než jedného režimu údajového pripojenia DirectQuery alebo Import, a to v ľubovoľnej kombinácii.

Funkcia zložených modelov v aplikácii Power BI Desktop sa skladá z troch súvisiacich funkcií:

  • Zložené modely: Umožňujú, aby zostava mala dve alebo viac pripojení údajov z rôznych skupín zdrojov. Týmito skupinami zdrojov môže byť jedno alebo viac pripojení v rámci režimu DirectQuery a pripojenie importu, dve alebo viac pripojení v rámci režimu DirectQuery alebo ľubovoľná kombinácia. Tento článok sa podrobne popisuje zložené modely.

  • Vzťahy typu many-to-many: Pomocou zložených modelov môžete medzi tabuľkami vytvoriť vzťahy typu many-to-many. Tento prístup odstraňuje požiadavky na jedinečné hodnoty v tabuľkách. Týmto sa odstránia aj predchádzajúce riešenia, ktoré sa vyžadovali napríklad na vytvorenie vzťahov (vytvorením nových tabuliek). Ďalšie informácie nájdete v téme Použitie vzťahov typu many-many v aplikácii Power BI Desktop.

  • Režim úložiska: Odteraz môžete zadať, ktoré vizuály dotazujú serverové zdroje údajov. Táto funkcia pomáha zlepšiť výkon a znížiť počet načítaní na serverovej verzii. V minulosti dokonca aj jednoduché vizuály, ako napríklad rýchle filtre, vytvárali dotazy na serverové zdroje. Ďalšie informácie nájdete v téme Spravovanie režimu úložiska v aplikácii Power BI Desktop.

Používanie zložených modelov

Vďaka zloženým modelom sa môžete pri používaní aplikácie Power BI Desktop alebo služba Power BI pripojiť k rôznym typom zdrojov údajov. Tieto údajové pripojenia môžete vytvoriť niekoľkými spôsobmi:

  • Údaje do služby Power BI importujete, čo je najbežnejší spôsob získania údajov.
  • K údajom sa môžete prostredníctvom režimu DirectQuery pripojiť priamo v ich pôvodnom zdrojovom odkladacom priestore. Ďalšie informácie o režime DirectQuery nájdete v téme Režim DirectQuery v Power BI.

Keď používate režim DirectQuery, zložené modely umožňujú vytvoriť model služby Power BI (napríklad jednoduchý súbor aplikácie Power BI Desktop s príponou .pbix , ktorý umožňuje jednu alebo obe nasledujúce akcie:

  • Kombinovanie údajov z jedného alebo viacerých zdrojov režimu DirectQuery.
  • Kombinovanie údajov zo zdrojov režimu DirectQuery a importovanie údajov.

Pomocou zložených modelov môžete napríklad vytvoriť model, ktorý kombinuje nasledujúce typy údajov:

  • Údaje o predaji z podnikového skladu údajov.
  • Údaje o cieľoch predaja z databázy SQL Servera podľa oddelení.
  • Údaje importované z tabuľkového hárka.

Model, ktorý spája údaje z viacerých zdrojov režimu DirectQuery alebo kombinuje údaje režimu DirectQuery s údajmi režimu Import, sa označuje ako zložený model.

Aj napriek tomu môžete vytvoriť vzťahy medzi tabuľkami, a to dokonca aj vtedy, ak dané tabuľky pochádzajú z rôznych zdrojov. Všetky vzťahy zo krížového zdroja sa vytvárajú s kardinalitou many-to-many, bez ohľadu na ich aktuálnu kardinalitu. Môžete ich zmeniť na možnosti One-to-many, Many-to-one alebo One-to-one. Podľa toho, akú kardinalitu nastavíte, vzťahy medzi zdrojmi majú odlišné správanie. Na načítanie hodnôt na one strane zo many strany nie je možné použiť funkcie jazyka DAX (Data Analysis Expressions). Môžete tiež vidieť vplyv na výkon v porovnaní so vzťahmi Many-to-many v rámci toho istého zdroja.

Poznámka

Pokiaľ ide o zložené modely, jediným zdrojom sú prakticky všetky importované tabuľky bez ohľadu na ich skutočný základný zdroj údajov.

Príklad zloženého modelu

Ako príklad zloženého modelu si predstavte zostavu, ktorá je pripojená k podnikovým skladom údajov v SQL Serveri pomocou režimu DirectQuery. V tejto inštancii sklad údajov obsahuje údaje tabuľky Predaj podľa krajiny, Štvrťrok a Bicykel (produkt ), ako je to znázornené na nasledujúcom obrázku:

Screenshot of an example with composite models in Relationship view.

Teraz by ste mohli vytvoriť jednoduché vizuály s použitím polí z tohto zdroja. Na nasledujúcom obrázku je zobrazený celkový predaj za vybratý štvrťrok podľa názvu Produktu.

Screenshot of a visual based on data from the previous example.

Čo však v prípade, ak máte údaje o produktových manažéroch, ktorí boli priradení ku každému produktu, spolu s marketingovými prioritami, v excelovom tabuľkovom hárku? Ak chcete zobraziť Čiastku predaja podľa Produktového manažéra, pridanie týchto lokálnych údajov do podnikového skladu údajov možno nebude možné. Alebo by to pri najlepšom čase mohlo trvať mesiace.

Údaje o predaji by sa mohli dať importovať zo skladu údajov namiesto použitia režimu DirectQuery. A potom by sa mohli skombinovať s údajmi importovanými z tabuľkového hárka. Tento postup je však nerozumný z dôvodov, ktoré v prvom rade viedli k použitiu režimu DirectQuery. Medzi tieto dôvody môže patriť:

  • Kombinácia pravidiel zabezpečenia vynútených v základnom zdroji.
  • Potreba zobrazovať najnovšie údaje.
  • Celkový objem údajov.

A tu prichádzajú na rad zložené modely. Zložené modely vám umožňujú pripojiť sa k skladu údajov pomocou režimu DirectQuery a potom použiť možnosť Získať údaje pre ďalšie zdroje. V tomto príklade najskôr vytvoríme pripojenie režimu DirectQuery k podnikového skladu údajov. Potom použijeme možnosť Získať údaje, vyberieme Excel a prejdeme do tabuľkového hárka obsahujúceho naše lokálne údaje. Nakoniec importujeme tabuľkový hárok, ktorý obsahuje Názvy produktov, priradeného Manažéra predaja a Prioritu.

Screenshot of the navigator window after selecting an excel file as a source.

V zozname Polia môžete vidieť dve tabuľky: pôvodnú tabuľku Bicykel z SQL Servera a novú tabuľku ProduktovíManažéri. Nová tabuľka obsahuje údaje importované z Excelu.

Screenshot of the Fields pane with the Bike and ProductManagers fields selected.

Podobne aj v zobrazení Vzťahy v aplikácii Power BI Desktop vidíme ďalšiu tabuľku s názvom ProduktovíManažéri.

Screenshot of the tables in Relationship view.

Teraz musíme tieto tabuľky priradiť k iným tabuľkám v modeli. Ako vždy vytvoríme vzťah medzi tabuľkou Bicykel z SQL Servera a importujúnou tabuľkou ProduktovíManažéri . To znamená, že ide o vzťah medzi tabuľkami Bicykel[NázovProduktu] a ProduktovíManažéri[NázovProduktu]. Ako už bolo spomenuté, všetky vzťahy, ktoré prechádzajú cez zdroj, majú predvolenú kardinalitu typu Many-to-many.

Screenshot of the Create relationship window.

Keď sme vzťah vytvorili, podľa očakávaní sa zobrazuje v zobrazení vzťahov v aplikácii Power BI Desktop.

Screenshot of the Create relationship window after new relationships are created.

Teraz môžete vytvárať vizuály pomocou ktoréhokoľvek poľa v zozname Polia . Tento prístup umožňuje bezproblémové miešanie údajov z viacerých zdrojov. Nasledujúci obrázok napríklad zobrazuje celkovú ČiastkuPredaja pre každého Produktového manažéra :

Screenshot of the Fields pane with SalesAmount highlighted and the visual shown.

Nasledujúci príklad zobrazuje bežný prípad tabuľky dimenzií, ako sú napríklad tabuľky Produkt alebo Zákazník, ktorú rozširujú dodatočné údaje importované z iného zdroja. Taktiež je možné tabuľky pomocou režimu DirectQuery pripojiť k rôznym zdrojom. Pokračujme v našom príklade. Predstavte si, že hodnoty Cieľov predaja na Krajinu a obdobie sú uložené v samostatnej databáze jednotlivých oddelení. Ako vidíte na nasledujúcom obrázku, na pripojenie k údajom môžete použiť možnosť Získať údaje :

 Screenshot of the Navigator window with sales targets selected.

Ako predtým, tak aj teraz môžeme vytvoriť vzťahy medzi novou tabuľkou a inými tabuľkami v modeli. Potom môžeme vytvoriť vizuály, ktoré kombinujú údaje tabuľky. Opäť sa pozrime na zobrazenie vzťahov , v ktorom sme vytvorili nové vzťahy:

Screenshot of the Relationship view with many tables.

Nasledujúci obrázok vychádza z nových údajov a vzťahov, ktoré sme vytvorili. Na vizuáli naľavo dole sa zobrazuje celková Čiastka predaja v porovnaní s Cieľom a výpočet odchýlky zobrazuje rozdiel. Údaje v Čiastke predaja a Cieli pochádzajú z dvoch rôznych databáz SQL Servera.

Screenshot of the Report view with more data.

Nastavenie režimu úložiska

Každá tabuľka v zloženom modeli má režim úložiska, ktorý označuje, či je tabuľka založená na režime DirectQuery alebo na režime Import. Režim úložiska môžete zobraziť a upraviť na table Vlastnosť . Ak chcete zobraziť režim úložiska, kliknite pravým tlačidlom myši na tabuľku v zozname Polia a potom vyberte položku Vlastnosti. Nasledujúci obrázok zobrazuje režim úložiska pre tabuľku CielePredaja.

Režim úložiska môžete zobraziť aj na popise pre každú tabuľku.

Screenshot of a tooltip displaying the storage mode.

Pri všetkých súboroch aplikácie Power BI Desktop (súbor s príponou .pbix ), ktoré obsahujú tabuľky z režimu DirectQuery a niekoľko importovaných tabuliek, sa režim úložiska v stavovom riadku zobrazuje s názvom Kombinované. Tento výraz môžete vybrať v stavovom riadku a jednoducho zmeniť všetky tabuľky na tabuľky režimu Import.

Ďalšie informácie o režime úložiska nájdete v téme Spravovanie režimu úložiska v aplikácii Power BI Desktop.

Poznámka

Režim kombinovaného úložiska môžete použiť v aplikácii Power BI Desktop a v služba Power BI.

vypočítané tabuľky,

V aplikácii Power BI Desktop, ktorý používa režim DirectQuery, môžete do modelu pridať vypočítané tabuľky. Výrazy DAX (Data Analysis Expressions), ktoré definujú vypočítané tabuľky, môžu odkazovať buď na importované tabuľky, na tabuľky režimu DirectQuery alebo na kombináciu oboch typov.

Vypočítané tabuľky sú vždy importované a ich údaje sa obnovia pri obnovení tabuliek. Ak vypočítaná tabuľka odkazuje na tabuľku režimu DirectQuery, vizuály odkazujú na tabuľku režimu DirectQuery vždy zobrazujú najnovšie hodnoty v základnom zdroji. Na druhej strane vizuály odkazujú na vypočítanú tabuľku, zobrazujú hodnoty z času, keď bola vypočítaná tabuľka naposledy obnovená.

Dôležité

Vypočítané tabuľky nie sú podporované v služba Power BI používajúci túto funkciu. Ďalšie informácie nájdete v časti Práca so zloženým modelom na základe sémantického modelu v tomto článku.

Vplyv na zabezpečenie

Zložené modely majú určité vplyvy na zabezpečenie. Dotaz odoslaný do jedného zdroja údajov môže zahŕňať hodnoty údajov získané z iného zdroja. V predchádzajúcom príklade vizuál, ktorý zobrazuje (Sales Amount) (Čiastku predaja) podľa Product Manager (Produktového manažéra ), odošle dotaz SQL do relačnej databázy Sales (Predaj). Daný dotaz SQL môže obsahovať mená Produktových manažérov a im priradené Produkty.

Screenshot of a script showing security implications.

Informácie uložené v tabuľkovom hárku sú teraz zahrnuté v dotaze odoslanom do relačnej databázy. Ak sú tieto informácie dôverné, mali by ste zvážiť vplyvy zabezpečenia. Obzvlášť by ste sa mali zaoberať týmito bodmi:

  • Každý správca databázy, ktorý môže zobrazovať sledovania alebo denníky auditu, si tieto informácie môže zobraziť, dokonca aj bez povolenia prístupu k údajom v ich pôvodnom zdroji. V tomto príklade by správca potreboval povolenie do excelového súboru.

  • Mali by ste zvážiť nastavenie šifrovania pre každý zdroj. Vyhnete sa tak získaniu informácií z jedného zdroja pomocou šifrovaného pripojenia a potom tieto informácie neúmyselne zahrniete do dotazu, ktorý sa odošle do iného zdroja prostredníctvom nešifrovaného pripojenia.

Keď vytvoríte zložený model, aplikácia Power BI Desktop zobrazí upozorňujúcie hlásenie, kde potvrdíte, že ste zohľadnili všetky možné vplyvy na zabezpečenie.

Okrem toho, ak autor pridá tabuľku1 z modelu A do zloženého modelu (nazvime ho model C), potom používateľ, ktorý si prezerá zostavu vytvorenú v modeli C by mohol dotazovať ľubenú tabuľku v modeli A, ktorá nie je chránená zabezpečením na úrovni riadkov.

Z podobných dôvodov by ste mali byť pri otváraní súboru aplikácie Power BI Desktop odoslaného z nedôveryhlivého zdroja opatrní. Ak súbor obsahuje zložené modely, informácie, ktoré niekto načíta z jedného zdroja pomocou poverení používateľa otvárajúceho súbor, budú odoslané do iného zdroja údajov ako súčasť dotazu. Tieto informácie by tak mohol zobraziť autor súboru aplikácie Power BI Desktop, ktorý by mohol mať škodlivé úmysly. Pri prvom otvorení súboru aplikácie Power BI Desktop, ktorý obsahuje viacero zdrojov, sa zobrazí upozornenie. Toto upozornenie sa podobá na to, ktoré sa zobrazuje pri otváraní súboru obsahujúceho natívne dotazy SQL.

Vplyv na výkon

Pri používaní režimu DirectQuery by ste mali vždy dbať na výkon, aby mal serverový zdroj dostatok prostriedkov na zabezpečenie dobrého výkonu pre používateľov. Pokiaľ funguje dobre, vizuály sa obnovia za 5 sekúnd alebo za kratší čas. Ďalšie rady týkajúce sa výkonu nájdete v téme Režim DirectQuery v službe Power BI.

Používanie zložených modelov so sebou prináša ďalšie faktory týkajúce sa výkonu. Jeden vizuál môže odosielať dotazy do viacerých zdrojov, čo často prenesie výsledky jedného dotazu do druhého zdroja. Táto situácia môže viesť k nasledujúcim formám realizácii:

  • Zdrojový dotaz obsahujúci veľké množstvo hodnôt literálu: Napríklad vizuál, ktorý vyžaduje celkovú Čiastku predaja pre množinu vybratých Produktových manažérov by najskôr musel zistiť, ktoré Produkty títo produktoví manažéri spravovali. Táto sekvencia sa musí uskutočniť ešte predtým, ako vizuál odošle dotaz SQL obsahujúci všetky kódy Product ID v klauzule WHERE .

  • Zdrojový dotaz dotazuje na nižšej úrovni granularity a s údajmi je potom lokálne agregovaný: Keďže počet Produktov , ktoré spĺňajú kritériá filtra Produktového manažéra , stále rastie, bolo by neefektívne prípadne neuskutočniteľné zahrnúť všetky produkty WHERE do klauzuly . Namiesto toho môžete vytvoriť dotaz relačného zdroja na nižšej úrovni Produktu a potom výsledky agregovať lokálne. Ak kardinalita Produktov prekročí limit 1 milión, dotaz zlyhá.

  • Viacero zdrojových dotazov, jeden na skupinu podľa hodnoty: Pokiaľ agregácia používa funkciu DistinctCount a je zoskupená podľa stĺpca z iného zdroja, a ak externý zdroj nepodporuje efektívne odovzdávanie viacerých explicitných hodnôt literálu, ktoré zoskupenie definujú, je potrebné odoslať jeden dotaz SQL na skupinu podľa hodnoty.

    Vizuál, ktorý vyžaduje jedinečný počet v tabuľke CustomerAccountNumber (ČísloKontaZákazníka) z tabuľky SQL Servera podľa tabuľky Product Managers (Produktoví manažéri ) importovanú z tabuľkového hárka, by musel preniesť podrobnosti z tabuľky Product Managers (Produktoví manažéri ) do dotazu odoslaného do SQL Servera. Na rozdiel od iných zdrojov, ako je napríklad Redshift, táto akcia nie je možná. Namiesto toho sa odošle jeden dotaz SQL na Manažéra predaja – až do určitého limitu, pri ktorom by dotaz zlyhal.

Každý z týchto prípadov má svoje vlastné vplyvy na výkon a presné podrobnosti sa pri jednotlivých zdrojoch údajov líšia. Hoci kardinalita stĺpcov použitých vo vzťahu, ktorý spája dva zdroje, ostáva nízka (niekoľko tisíc), výkon by to ovplyvniť nemalo. Ako kardinalita rastie, mali by ste venovať väčšiu pozornosť vplyvu na výsledný výkon.

Okrem toho využitie vzťahov typu many-to-many znamená, že je skôr potrebné odoslať samostatné dotazy do základného zdroja pre každý súčet alebo medzisúčet, než aby sa agregácia podrobných hodnôt odosielala lokálne. Jednoduchý vizuál tabuľky so súčtami by mal radšej odoslať dva zdrojové dotazy než jeden.

Skupiny zdrojov

Skupina zdrojov je kolekcia položiek, ako sú napríklad tabuľky a vzťahy, zo zdroja DirectQuery alebo zo všetkých zdrojov importu zapojených do dátového modelu. Zložený model je vyrobený z jednej alebo viacerých skupín zdrojov. Zvážte nasledujúce príklady:

  • Zložený model, ktorý sa pripája k sémantickému modelu služby Power BI s názvom Predaj a obohatí sémantický model pridaním mierky Sales YTD , ktorá nie je k dispozícii v pôvodnom sémantickom modeli. Tento model pozostáva z jednej skupiny zdrojov.
  • Zložený model, ktorý kombinuje údaje importovaním tabuľky z excelového hárka s názvom Ciele a súbor CSV s názvom Oblasti a vytvorením pripojenia DirectQuery k sémantickému modelu služby Power BI s názvom Predaj. V tomto prípade existujú dve skupiny zdrojov, ako je to znázornené na nasledujúcom obrázku:
    • Prvá skupina zdrojov obsahuje tabuľky z excelového hárka Targets (Ciele ) a súbor CSV Regions (Oblasti ).
    • Druhá skupina zdrojov obsahuje položky zo sémantického modelu služby Sales Power BI.

Diagram showing the Import and Sales source groups containing the tables from the respective sources.

Ak ste pridali ďalšie pripojenie DirectQuery k inému zdroju, napríklad pripojenie DirectQuery k databáze SQL Servera s názvom Inventory, položky z tohto zdroja sa pridajú ako iná skupina zdrojov:

Diagram showing the Import, Sales and Inventory source groups containing the tables from the respective sources.

Poznámka

Import údajov z iného zdroja nepridá ďalšiu skupinu zdrojov, pretože všetky položky zo všetkých importovaných zdrojov sa nachádzajú v jednej skupine zdrojov.

Skupiny zdrojov a vzťahy

V zloženom modeli existujú dva typy vzťahov:

  • Vzťahy v rámci skupiny zdrojov. Tieto vzťahy navzájom súvisia s položkami v rámci skupiny zdrojov. Tieto vzťahy sú vždy normálnymi vzťahmi, pokiaľ nie sú typu Many-to-many, v takom prípade sú obmedzené.
  • Vzťahy medzi skupinami zdrojov. Tieto vzťahy sa začínajú v jednej skupine zdrojov a končia v inej skupine zdrojov. Tieto vzťahy sú vždy obmedzené vzťahy.

Prečítajte si viac o rozdiele medzi normálnymi a obmedzenými vzťahmi a ich vplyvom.

Na nasledujúcom obrázku sme napríklad pridali tri vzťahy medzi skupinami zdrojov, ktoré navzájom súvisia s tabuľkami v rôznych zdrojových skupinách:

Diagram showing the Import, Sales and Inventory source groups containing the tables from the respective sources and relationships between the source groups as described previously.

Lokálne a vzdialené

Každá položka, ktorá je v skupine zdrojov, ktorá je skupinou zdrojov DirectQuery, sa považuje za vzdialenú, pokiaľ táto položka nebola definovaná lokálne ako súčasť rozšírenia alebo obohatenia o zdroj DirectQuery a nie je súčasťou vzdialeného zdroja, ako je napríklad mierka alebo vypočítaná tabuľka. Vypočítaná tabuľka založená na tabuľke zo skupiny zdrojov DirectQuery patrí do skupiny zdrojov Import a považuje sa za lokálnu. Každá položka, ktorá je v skupine zdrojov Import, sa považuje za lokálnu. Ak napríklad definujete nasledujúcu mierku v zloženom modeli, ktorý používa pripojenie DirectQuery k zdroju inventára, mierka sa považuje za lokálnu:

[Average Inventory Count] = Average(Inventory[Inventory Count])

Skupiny výpočtov, vyhodnocovanie dotazov a mierok

Skupiny výpočtov poskytujú spôsob, ako znížiť počet nadbytočných mierok a zoskupiť spoločné výrazy mierok. Typickými prípadmi použitia sú výpočty časovej inteligencie, pri ktorých chcete prejsť zo skutočných údajov na výpočty typu od mesiaca k dnešnému dňu, od štvrťroka k dátumu alebo od aktuálneho roka. Pri práci so zloženými modelmi je dôležité mať na pamäti interakciu medzi skupinami výpočtov a to, či mierka odkazuje len na položky z jednej skupiny vzdialených zdrojov. Ak mierka odkazuje len na položky z jednej skupiny vzdialených zdrojov a vzdialený model definuje skupinu výpočtov, ktorá ovplyvní mierku, použije sa táto skupina výpočtov aj vtedy, ak bola mierka definovaná vo vzdialenom modeli alebo v lokálnom modeli. Ak však mierka neodkazuje na položky z jednej skupiny vzdialených zdrojov výhradne, ale odkazuje na položky zo vzdialenej skupiny zdrojov, v ktorej sa používa vzdialená skupina výpočtov, výsledky mierky môžu byť stále ovplyvnené vzdialenou skupinou výpočtov. Zoberme si nasledujúci príklad:

  • Predaj predajcu je mierka definovaná vo vzdialenom modeli.
  • Vzdialený model obsahuje skupinu výpočtov, ktorá mení výsledok Predaja predajcu
  • Internetový predaj je mierka definovaná v lokálnom modeli.
  • Celkový predaj je mierka definovaná v lokálnom modeli a má nasledujúcu definíciu:
[Total Sales] = [Internet Sales] + [Reseller Sales]

V tomto scenári nie je mierka Internetový predaj ovplyvnená skupinou výpočtov definovanou vo vzdialenom modeli, pretože nie sú súčasťou toho istého modelu. Skupina výpočtov však môže zmeniť výsledok mierky Predaj predajcu, pretože sú v tom istom modeli. To znamená, že výsledky vrátené mierkou Celkový predaj sa musia starostlivo vyhodnotiť. Predstavte si, že používame skupinu výpočtov vo vzdialenom modeli na vrátenie výsledkov od roka k dátumu. Výsledok vrátený funkciou Predaj predajcu je teraz hodnotou od roku do súčasnosti, zatiaľ čo výsledok vrátený funkciou Internetový predaj je stále skutočným. Výsledok celkového predaja je teraz pravdepodobne neočakávaný, pretože pridáva skutočnosť k výsledku roka k dnešnému dňu.

Zložené modely v sémantických modeloch Služby Power BI a Analysis Services

Pomocou zložených modelov so sémantickými modelmi služby Power BI a analysis services môžete vytvoriť zložený model pomocou pripojenia DirectQuery, aby ste sa mohli pripojiť k sémantickým modelom služby Power BI, službám Azure Analysis Services (AAS) a SQL Server 2022 Analysis Services. Pomocou zloženého modelu môžete skombinovať údaje z týchto zdrojov s inými režimami DirectQuery a importovanými údajmi. Túto funkciu ocenia najmä autori zostáv, ktorí chcú kombinovať údaje zo svojho podnikového sémantického modelu s inými údajmi, ktoré vlastnia, napríklad s excelovým tabuľkovým hárkom, prípadne chcú prispôsobiť či obohatiť metaúdaje zo svojho podnikového sémantického modelu.

Spravovanie zložených modelov v sémantických modeloch power BI

Nájomník musí mať povolené nasledujúce prepínače, aby bolo možné vytvárať a používať zložené modely v sémantických modeloch Power BI:

Okrem toho by v prípade kapacít Premium a Premium na používateľa malo byť povolené nastavenie "Koncový bod XMLA" a nastavené na "Iba na čítanie" alebo "Iba na čítanie/zapisovaie".

Správcovia nájomníkov môžu povoliť alebo zakázať pripojenia DirectQuery k sémantickým modelom služby Power BI na portáli na správu. Hoci je táto možnosť predvolene povolená, jej zakázaním sa používateľom efektívne zabráni publikovať nové zložené modely v sémantických modeloch služby Power BI v službe.

Admin setting to enable or disable DirectQuery connections to Power BI semantic models.

Existujúce zostavy, ktoré využívajú zložený model na sémantickom modeli služby Power BI, budú naďalej fungovať a používatelia môžu naďalej vytvárať zložený model pri používaní aplikácie Desktop, ale nebudú ich môcť publikovať do služby. Namiesto toho, keď vytvoríte pripojenie DirectQuery k sémantickému modelu Power BI výberom položky Vykonať zmeny v tomto modeli , zobrazí sa nasledujúce upozornenie:

Screenshot showing Warning message informing the user that publication of a composite model that uses a Power BI semantic model is not allowed, because DirectQuery connections are not allowed by the admin. The user can still create the model using Desktop.

Týmto spôsobom môžete stále preskúmať sémantický model v lokálnom prostredí aplikácie Power BI Desktop a vytvoriť zložený model. Zostavu však nebudete môcť publikovať do služby. Pri publikovaní zostavy a modelu sa zobrazí nasledujúce chybové hlásenie a publikovanie bude zablokované:

Screenshot showing Error message that blocks publication of a composite model that uses a Power BI semantic model because DirectQuery connections are not allowed by the admin.

Všimnite si, že dynamické pripojenia k sémantickým modelom služby Power BI nie sú ovplyvnené prepínačom, ani dynamickými pripojeniami ani pripojením DirectQuery k službe Analysis Services. Tieto funkcie budú naďalej fungovať bez ohľadu na to, či bol prepínač vypnutý. Všetky publikované zostavy, ktoré využívajú zložený model na sémantickom modeli služby Power BI, budú naďalej fungovať aj po publikovaní prepínača.

Vytvorenie zloženého modelu v sémantickom modeli alebo modeli

Vytvorenie zloženého modelu v sémantickom modeli služby Power BI alebo modeli Analysis Services vyžaduje, aby vaša zostava mala lokálny model. Môžete začať dynamickým pripojením a pridať lokálny model, prípadne na ne inovovať. Môžete tiež začať pripojením DirectQuery alebo importovanými údajmi, čím sa v zostave automaticky vytvorí lokálny model.

Ak chcete zistiť, ktoré pripojenia sa vo vašom modeli používajú, skontrolujte stavový riadok v pravom dolnom rohu aplikácie Power BI Desktop. Ak ste pripojení len k zdroju Analysis Services, zobrazí sa správa ako na nasledujúcom obrázku:

Screenshot showing Analysis Services only connection.

Ak ste pripojení k sémantickému modelu služby Power BI, zobrazí sa správa s informáciou o tom, ku ktorému sémantickému modelu služby Power BI ste pripojení:

Screenshot showing Power BI semantic model connection.

Ak chcete prispôsobiť metaúdaje polí v dynamicky pripojenej sémantickom modeli, v stavovom riadku vyberte položku Vykonať zmeny v tomto modeli . Prípadne môžete na páse s nástrojmi vybrať tlačidlo Vykonať zmeny v tomto modeli , ako je to znázornené na nasledujúcom obrázku. Tlačidlo Vykonať zmeny v tomto modeli sa v zobrazenízostavy nachádza na karte Modelovanie. V zobrazení modelu sa tlačidlo nachádza na karte Domov.

Screenshot showing Make changes to this model button.

Po výbere tlačidla sa zobrazí dialógové okno potvrdzujúce pridanie lokálneho modelu. Ak chcete povoliť vytváranie nových stĺpcov alebo úpravu metaúdajov pre polia zo sémantických modelov služby Power BI alebo Analysis Services, vyberte položku Pridať lokálny model . Na nasledujúcom obrázku je zobrazené dialógové okno.

Screenshot showing Create local model dialog.

Keď ste dynamicky pripojení k zdroju Analysis Services, lokálny model neexistuje. Ak chcete používať DirectQuery pre dynamicky pripojené zdroje, ako sú napríklad sémantické modely služby Power BI a Analysis Services, musíte do svojej zostavy pridať lokálny model. Keď publikujete zostavu s lokálnym modelom do služba Power BI, publikuje sa sémantický model pre daný lokálny model.

Reťazenie

Sémantické modely a sémantické modely, na ktorých sú založené, tvoria reťazec. Tento proces nazývaný reťazenie vám umožňuje publikovať zostavu a sémantický model založený na iných sémantických modeloch Power BI, čo je funkcia, ktorá predtým nebola možná.

Predstavte si napríklad, že váš kolega publikuje sémantický model služby Power BI s názvom Sales and Budget (Predaj a rozpočet ), ktorý vychádza z modelu služby Analysis Services s názvom Sales (Predaj) a je skombinový s excelovým hárkom s názvom Budget (Rozpočet).

Keď publikujete novú zostavu (a sémantický model) s názvom Sales and Budget Europe (Predaj a rozpočet – Európa ), ktorá je založená na sémantickom modeli služby Power BI pre predaj a rozpočet , ktorý publikoval váš kolega. Vykonáte s tým ďalšie úpravy alebo rozšírenia, efektívne pridávate zostavu a sémantický model do reťazca s dĺžkou tri, ktorý ste začali s modelom Sales Analysis Services. a končí s sémantickým modelom služby Power BI Sales and Budget Europe . Nasledujúci obrázok vizualizuje tento proces reťazenia.

Screenshot showing The process of chaining semantic models.

Reťazec na predchádzajúcom obrázku má tri položky, čo predstavuje maximálnu dĺžku. Dĺžka prekračujúca tri položky nie je podporovaná a po jej prekročení sa vyskytnú chyby.

Povolenia a licencie

Používatelia, ktorí pristupujú k zostavám pomocou zloženého modelu, musia mať správne povolenia na všetky sémantické modely a modely v reťazci.

Vlastník zloženého modelu vyžaduje povolenie na vytváranie sémantických modelov používaných ako zdroje, aby ostatní používatelia mohli pristupovať k týmto modelom v mene vlastníka. V dôsledku toho vytvorenie pripojenia zloženého modelu v aplikácii Power BI Desktop alebo vytvorenie zostavy v službe Power BI vyžaduje povolenia na vytváranie v sémantických modeloch používaných ako zdroje.

Používatelia, ktorí zobrazujú zostavy pomocou zloženého modelu, budú vo všeobecnosti vyžadovať povolenia na čítanie pre samotný zložený model a sémantické modely používané ako zdroje. Ak sa zostavy nachádzajú v pracovnom priestore Pro, môžu sa vyžadovať povolenia na vytváranie. Tieto prepínače nájomníka by mali byť povolené pre používateľa.

Požadované povolenia je možné ilustrovať v nasledujúcom príklade:

  • Zložený model A (vo vlastníctve vlastníka A)

    • Zdroj údajov A1: Sémantický model B.
      Vlastník A musí mať povolenie na vytváranie v sémantickom modeli B, aby používatelia mohli zobraziť zostavu pomocou zloženého modelu A.
  • Zložený model C (vlastnený vlastníkom C)

    • Zdroj údajov C1: Sémantický model D
      Vlastník C musí mať povolenie na vytváranie v sémantickom modeli D, aby používatelia mohli zostavu zobraziť pomocou zloženého modelu C.
    • Zdroj údajov C2: Zložený model A
      Vlastník C musí mať povolenie na vytváranie v kompozitnom modeli A a povolenie na čítanie v sémantickom modeli B.

Používateľ, ktorý zobrazuje zostavy pomocou zloženého modelu A, musí mať povolenia na čítanie pre zložený model A aj Sémantický model B, zatiaľ čo používateľ, ktorý zobrazuje zostavy pomocou zloženého modelu C, musí mať povolenia na čítanie pre zložený model C, sémantický model D, zložený model A a sémantický model B.

Poznámka

V tomto blogovom príspevku nájdete dôležité informácie o povoleniach požadovaných pre zložené modely v sémantických modeloch služby Power BI a modeloch služby Analysis Services.

Ak sa niektorá množina údajov v reťazci nachádza v pracovnom priestore Premium na používateľa, používateľ, ktorý pristupuje, potrebuje licenciu na Premium na používateľa. Ak sa niektorá množina údajov v reťazci nachádza v pracovnom priestore Pro, používateľ, ktorý k nej pristupuje, potrebuje licenciu Pro. Ak sú všetky množiny údajov v reťazci v kapacitách Premium alebo kapacite služby Fabric F64 alebo vyššej, používateľ k nej môže získať prístup pomocou bezplatnej licencie.

Upozornenie zabezpečenia

Pri používaní funkcie DirectQuery pre sémantické modely služby Power BI a Analysis Services sa zobrazí dialógové okno s upozornením zabezpečenia, ktoré je znázornené na nasledujúcom obrázku.

Screenshot showing Security warning.

Údaje sa môžu presunúť z jedného zdroja údajov do druhého, čo predstavuje rovnaké upozornenie zabezpečenia ako pri kombinovaní režimu DirectQuery a importovaných zdrojov v dátovom modeli. Ďalšie informácie o tomto správaní nájdete v časti Používanie zložených modelov v aplikácii Power BI Desktop.

Podporované scenáre

Na vytvorenie zložených modelov pomocou údajov zo sémantických modelov služby Power BI alebo modelov služby Analysis Services môžete využívať nasledujúce scenáre:

  • Pripojenie údajov z rôznych zdrojov: import (napríklad súbory), sémantické modely služby Power BI, modely služby Analysis Services,
  • Vytváranie vzťahov medzi rôznymi zdrojmi údajov
  • Zapisovať mierky, ktoré používajú polia z rôznych zdrojov údajov
  • Vytváranie nových stĺpcov pre tabuľky zo sémantických modelov služby Power BI alebo modelov služby Analysis Services
  • Vytváranie vizuálov, ktoré používajú stĺpce z rôznych zdrojov údajov
  • Tabuľku môžete odstrániť z modelu pomocou zoznamu polí, aby boli modely čo najvýstižnejšie a chudé (ak sa pripojíte k perspektíve, nemôžete odstrániť tabuľky z modelu)
  • Môžete určiť, ktoré tabuľky sa majú načítať a nemusíte načítať všetky tabuľky, ak chcete iba konkrétnu podmnožinu tabuliek. Pozrite si časť Načítavanie podmnožiny tabuliek ďalej v tomto dokumente.
  • Môžete určiť, či sa majú pridať tabuľky, ktoré sú následne pridané do sémantického modelu po vytvorení pripojenia v modeli.

Práca so zloženým modelom založeným na sémantickom modeli

Pri práci s režimom DirectQuery pre sémantické modely služby Power BI a Analysis Services zvážte nasledovné:

  • Ak obnovíte zdroje údajov a zobrazia sa chyby s konfliktnými názvami polí alebo tabuliek, služba Power BI dané chyby vyrieši za vás.

  • Nemôžete upravovať, odstraňovať ani vytvárať nové vzťahy v rovnakom sémantickom modeli služby Power BI alebo zdroji Analysis Services. Ak máte k týmto zdrojom prístup na úpravy, môžete vykonať zmeny priamo v zdroji údajov.

  • Nie je možné zmeniť typy údajov stĺpcov, ktoré sa načítajú zo sémantického modelu služby Power BI alebo zdroja služby Analysis Services. Ak potrebujete zmeniť typ údajov, zmeňte ho v zdroji alebo použite vypočítaný stĺpec.

  • Ak chcete vytvárať zostavy v služba Power BI na základe zloženého modelu, ktorý je založený na inom sémantickom modeli, musia byť nastavené všetky poverenia.

  • Pripojenie týkajúce sa lokálneho servera SQL Server 2022 a novšieho servera Analysis Services alebo služby IAAS vyžadujú lokálnu bránu údajov (štandardný režim).

  • Všetky pripojenia k vzdialeným sémantickým modelom služby Power BI sa vytvárajú pomocou jediného prihlásenia. Overovanie pomocou objektu služby nie je momentálne podporované.

  • Pravidlá zabezpečenia na úrovni riadkov sa použijú na zdroj, v ktorom sú definované, ale nepoužijú sa na žiadne iné sémantické modely v modeli. Zabezpečenie na úrovni riadkov definované v zostave sa nepoužije na vzdialené zdroje. Zabezpečenie na úrovni riadkov nastavené vo vzdialených zdrojoch sa nepoužije na iné zdroje údajov. Nemôžete tiež definovať zabezpečenie na úrovni riadkov v tabuľke načítanej zo vzdialeného zdroja a zabezpečenie na úrovni riadkov definované v lokálnych tabuľkách nebude filtrovať žiadne tabuľky načítané zo vzdialeného zdroja.

  • Kľúčové ukazovatele výkonu, zabezpečenie na úrovni riadkov a preklady sa neimportujú zo zdroja.

  • Pri používaní hierarchie dátumov sa môže vyskytnúť neočakávané správanie. Tento problém môžete vyriešiť tak, že namiesto toho použijete stĺpec dátumov. Po pridaní hierarchie dátumov do vizuálu môžete prepnúť na stĺpec dátumov tak, že v názve poľa kliknete na šípku nadol a potom namiesto použitia hierarchie dátumov kliknete na názov daného poľa:

    Screen shot of date hierarchy setting.

    Ďalšie informácie o používaní stĺpcov dátumov v porovnaní s hierarchiou dátumov nájdete v téme Použitie automatického dátumu a času v aplikácii Power BI Desktop.

  • Maximálna dĺžka reťazca modelov je tri. Dĺžka prekračujúca tri položky nie je podporovaná a po jej prekročení sa vyskytnú chyby.

  • Príznak na odradenie reťazenia môžete nastaviť v modeli, aby sa zabránilo vytvoreniu alebo rozšíreniu reťazca. Ďalšie informácie nájdete v téme Spravovanie pripojení režimu DirectQuery k publikovanému sémantickému modelu .

  • Pripojenie k sémantickému modelu služby Power BI alebo modelu služby Analysis Services sa nebude zobrazovať v doplnku Power Query.

Pri práci s režimom DirectQuery pre sémantické modely služby Power BI a Analysis Services platia nasledujúce obmedzenia :

  • Parametre pre databázy a názvy serverov sú momentálne zakázané.
  • Definovanie zabezpečenia na úrovni riadkov v tabuľkách zo vzdialeného zdroja nie je podporované.
  • Používanie ktoréhokoľvek z nasledujúcich zdrojov ako zdroja DirectQuery nie je podporované:
    • Tabuľkové modely služby SQL Server Analysis Services (SSAS) pred verziou 2022
    • Multidimenzionálne modely SSAS
    • SAP HANA
    • SAP Business Warehouse
    • Sémantické modely v reálnom čase
    • Vzorové sémantické modely
    • Obnovenie v Exceli Online
    • Údaje importované z Excelu alebo súborov CSV v službe
    • Metriky používania
    • Sémantické modely uložené v mojom pracovnom priestore
  • Používanie služby Power BI Embedded so sémantickými modelmi, ktoré obsahujú pripojenie DirectQuery k modelu služby Analysis Services, nie je momentálne podporované.
  • Publikovanie zostavy na webe pomocou funkcie publikovať na webe nie je podporované.
  • Skupiny výpočtov vo vzdialených zdrojoch nie sú podporované s nedefinovanými výsledkami dotazu.
  • Vypočítané tabuľky nie sú podporované v službe pomocou tejto funkcie. Pri pokuse o obnovenie v sémantickom modeli s vypočítanou tabuľkou alebo vypočítaným stĺpcom odkazujúceho na zdroj údajov DirectQuery sa zobrazí chybové hlásenie "Poverenia na jediné prihlásenie (SSO) nie sú k dispozícii".
  • Ak pracovný priestor po nastavení pripojenia DirectQuery premenujete, bude potrebné v aplikácii Power BI Desktop aktualizovať zdroj údajov, aby zostava naďalej fungovala.
  • Automatické obnovenie strany je podporované len v niektorých scenároch v závislosti od typu zdroja údajov. Ďalšie informácie nájdete v článku Automatické obnovenie stránky v službe Power BI .
  • Prevzatie kontroly nad sémantickým modelom, ktorý používa funkciu DirectQuery k iným sémantickým modelom , sa momentálne nepodporuje.
  • Hierarchie definované v modeli Analysis Services alebo sémantickom modeli Power BI sa nebudú zobrazovať pri pripájaní k modelu alebo sémantickému modelu v režime DirectQuery pomocou Excelu, podobne ako v prípade iných zdrojov údajov DirectQuery.

Pri práci s režimom DirectQuery pre sémantické modely služby Power BI a Analysis Services je potrebné vziať do úvahy ešte niekoľko ďalších vecí:

  • Použitie stĺpcov s nízkou kardinalitou vo vzťahoch medzi skupinami zdrojov: Keď vytvoríte vzťah v dvoch rôznych skupinách zdrojov, stĺpce, ktoré sa zúčastňujú vzťahu (nazývajú sa aj stĺpce spojenia), by mali mať nízku kardinalitu v ideálnom prípade 50 000 alebo menej. Toto hľadisko sa vzťahuje na stĺpce s kľúčmi bez reťazca. Pre kľúčové stĺpce reťazca je potrebné vziať do úvahy nasledujúce faktory.
  • Nepoužívajte veľké stĺpce s reťazcami vo vzťahoch medzi skupinami zdrojov: Pri vytváraní vzťahu medzi skupinami zdrojov nepoužívajte veľké stĺpce reťazcov ako stĺpce vzťahu, najmä pre stĺpce, ktoré majú väčšiu kardinalitu. Keď musíte použiť stĺpce reťazcov ako stĺpec vzťahov, vypočítajte očakávanú dĺžku reťazca pre filter vynásobením kardinality (C) priemernou dĺžkou stĺpca reťazca (A). Uistite sa, že očakávaná dĺžka reťazca je nižšia ako 250 000, t. j. ∗ C < 250 000.

Ďalšie informácie a pokyny nájdete v pokynoch k zloženému modelu.

Dôležité informácie týkajúce sa nájomníka

Každý model s pripojením DirectQuery k sémantickému modelu služby Power BI alebo k službe Analysis Services musí byť publikovaný v tom istom nájomníkovi, čo je obzvlášť dôležité pri prístupe k sémantickému modelu služby Power BI alebo modelu služby Analysis Services pomocou hosťovských identít B2B, ako je znázornené v nasledujúcom diagrame. Pozrite si tému Hosťovskí používatelia, ktorí môžu upravovať a spravovať obsah, a vyhľadajte URL adresu nájomníka na publikovanie.

Zvážte nasledujúci diagram. Očíslované kroky v diagrame sú popísané v odsekoch, ktoré nasledujú.

Diagram of numbered steps for tenant considerations.

Ash v diagrame spolupracuje so spoločnosťou Contoso a pristupuje k údajom, ktoré poskytla spoločnosť Fabrikam. Ash vytvorí pomocou aplikácie Power BI Desktop pripojenie DirectQuery k modelu služby Analysis Services, ktorý je hosťovaný v nájomníkovi spoločnosti Fabrikam.

Na overenie používa Ash identitu hosťovského používateľa B2B (krok 1 v diagrame).

Ak je zostava publikovaná v služba Power BI spoločnosti Contoso (krok 2), sémantický model publikovaný v nájomníkovi Contoso sa nemôže úspešne overiť v modeli Analysis Services spoločnosti Fabrikam (krok 3). V dôsledku toho zostava nebude fungovať.

V tomto scenári, keďže použitý model služby Analysis Services je hosťovaný v nájomníkovi spoločnosti Fabrikam, musí byť zostava publikovaná aj v nájomníkovi spoločnosti Fabrikam. Po úspešnej publikácii v nájomníkovi fabrikam (krok 4) môže sémantický model úspešne pristupovať k modelu služby Analysis Services (krok 5) a zostava bude fungovať správne.

Práca so zabezpečením na úrovni objektu

Keď zložený model získa údaje zo sémantického modelu služby Power BI alebo služby Analysis Services cez DirectQuery a tento zdrojový model je zabezpečený zabezpečením na úrovni objektu, spotrebitelia zloženého modelu si môžu všimnúť neočakávané výsledky. V nasledujúcej časti je vysvetlené, ako sa môžu tieto výsledky zobraziť.

Zabezpečenie na úrovni objektu (Object-Level Security, OLS) umožňuje autorom modelov skryť objekty, ktoré tvoria schému modelu (teda tabuľky, stĺpce, metaúdaje atď.) od spotrebiteľov modelu (napríklad zostavovača zostáv alebo autora zloženého modelu). Pri konfigurácii služby OLS pre objekt autor modelu vytvorí rolu a potom odstráni prístup k objektu pre používateľov, ktorí sú priradení k danej role. Z pohľadu týchto používateľov skrytý objekt jednoducho neexistuje.

OLS je definovaný pre zdrojový model a používa sa na ne. Nie je možné ho definovať pre zložený model vytvorený na zdrojovom modeli.

Keď je zložený model vytvorený na základe sémantického modelu služby Power BI chráneného systémom OLS alebo modelu služby Analysis Services prostredníctvom pripojenia DirectQuery, schéma modelu zo zdrojového modelu sa skopíruje do zloženého modelu. To, čo sa skopíruje, závisí od povoleného autora zloženého modelu v zdrojovom modeli podľa pravidiel OLS, ktoré sa tu uplatňujú. Samotné údaje sa neskopírujú do zloženého modelu. V prípade potreby sa však vždy načítajú prostredníctvom režimu DirectQuery zo zdrojového modelu. Inými slovami, načítanie údajov sa vždy vráti do zdrojového modelu, kde platia pravidlá OLS.

Keďže zložený model nie je zabezpečený pravidlami OLS, objekty, ktoré používatelia zloženého modelu vidia, sú tie, ktoré mohol autor zloženého modelu vidieť v zdrojovom modeli a nie to, ku ktorým by mohol mať sám prístup. Môže to viesť k nasledujúcim situáciám.

  • Niekto, kto si prezerá zložený model, môže vidieť objekty, ktoré sú pred nimi v zdrojovom modeli skryté službou OLS.
  • A naopak, v zloženom modeli sa im nemusí zobrazovať objekt, ktorý môžu vidieť v zdrojovom modeli, pretože tento objekt bol pred autorom zloženého modelu skrytý pravidlami OLS určujúcimi prístup k zdrojového modelu.

Dôležitou vecou je, že napriek prípadu opísanému v prvej odrážky spotrebitelia zloženého modelu nikdy neuvidia skutočné údaje, ktoré by nemal vidieť, pretože údaje sa v skutočnosti nenachádzajú v zloženom modeli. Z dôvodu režimu DirectQuery sa načíta podľa potreby zo zdrojového sémantického modelu, kde OLS blokuje neoprávnený prístup.

Vzhľadom na toto pozadie zvážte nasledujúci scenár:

Diagram showing what happens when a composite model connects to a source model protected by object-level security.

  1. Spravovanie_user publikovala podnikový sémantický model pomocou sémantického modelu služby Power BI alebo modelu služby Analysis Services, ktorý obsahuje tabuľku Zákazník a tabuľku Territory. Spravovanie_user publikuje sémantický model do služba Power BI a nastaví pravidlá OLS, ktoré majú nasledujúci účinok:

    • Používatelia financií nemôžu zobraziť tabuľku Zákazník
    • Používatelia marketingu nemôžu zobraziť tabuľku Territory (Územie)
  2. Finance_user publikuje sémantický model s názvom Sémantický model financií a zostavu s názvom Finančná zostava, ktorá sa pripája prostredníctvom režimu DirectQuery k podnikového sémantickému modelu publikovanému v kroku 1. Zostava Financie obsahuje vizuál, ktorý používa stĺpec z tabuľky Territory (Územie).

  3. Marketing_user otvorí zostavu Financie. Zobrazí sa vizuál používajúci tabuľku Territory (Územie), ale vráti chybu, pretože pri otvorení zostavy sa DirectQuery pokúsi načítať údaje zo zdrojového modelu pomocou poverení Marketing_user, pre ktoré je zablokované zobrazovanie tabuľky Territory podľa pravidiel OLS nastavených v podnikovom sémantickom modeli.

  4. Marketing_user vytvorí novú zostavu s názvom Marketingová zostava, ktorá ako zdroj používa sémantický model financie. V zozname polí sa zobrazujú tabuľky a stĺpce, ku ktorým Finance_user prístup. Tabuľka Territory sa preto zobrazuje v zozname polí, ale tabuľka Zákazník nie. Keď sa však Marketing_user pokúsi vytvoriť vizuál, ktorý využíva stĺpec z tabuľky Territory, vráti sa chyba, pretože v tomto bode sa DirectQuery pokúša načítať údaje zo zdrojového modelu pomocou poverení Marketing_user a pravidlá OLS sa opäť nakopnú a zablokujú prístup. To isté sa stane, keď Marketing_user vytvorí nový sémantický model a zostavu, ktorá sa pripájajú k sémantickému modelu služby Finance s pripojením DirectQuery – tabuľka Territory sa im zobrazí v zozname polí, pretože to je to, čo by Finance_user mohli vidieť, ale keď sa pokúsia vytvoriť vizuál, ktorý túto tabuľku využíva, budú zablokované pravidlami OLS v podnikovom sémantickom modeli.

  5. Teraz povedzme, že Spravovanie_user aktualizuje pravidlá OLS týkajúce sa podnikového sémantického modelu a zastaví financie zobrazovať tabuľku Territory.

  6. Aktualizované pravidlá systému OLS sa prejavia len v sémantickom modeli financie pri obnovení. Preto keď Finance_user obnoví sémantický model financie, tabuľka Territory sa už nebude zobrazovať v zozname polí a vizuál v zostave Financie, ktorý používa stĺpec z tabuľky Territory (Územie), vráti chybu pre Finance_user, pretože teraz nemá povolený prístup k tabuľke Territory (Územie).

Zhrnutie:

  • Spotrebitelia zloženého modelu vidia výsledky pravidiel OLS, ktoré sa vzťahujú na autora zloženého modelu pri vytváraní modelu. Pri vytvorení novej zostavy na základe zloženého modelu sa teda v zozname polí zobrazia tabuľky, ku ktorým mal autor zloženého modelu prístup pri vytváraní modelu, bez ohľadu na to, k čomu má aktuálny používateľ v zdrojovom modeli prístup.
  • Pravidlá OLS nie je možné definovať v samotnom zloženom modeli.
  • Používateľ zloženého modelu nikdy neuvidí skutočné údaje, ktoré by nemal vidieť, pretože príslušné pravidlá OLS pre zdrojový model ich zablokujú, keď sa režim DirectQuery pokúsi načítať údaje pomocou ich poverení.
  • Ak zdrojový model aktualizuje svoje pravidlá OLS, tieto zmeny ovplyvnia zložený model len pri jeho obnovení.

Načítavanie podmnožiny tabuliek zo sémantického modelu služby Power BI alebo modelu služby Analysis Services

Pri pripájaní k sémantickému modelu služby Power BI alebo modelu služby Analysis Services pomocou pripojenia DirectQuery môžete rozhodnúť, ku ktorým tabuľkám sa chcete pripojiť. Môžete sa tiež rozhodnúť, že po vytvorení pripojenia k modelu automaticky pridáte do sémantického modelu alebo modelu ľubovoľnú tabuľku. Keď sa pripojíte na perspektívu, váš model bude obsahovať všetky tabuľky v sémantickom modeli a všetky tabuľky, ktoré nie sú zahrnuté v perspektíve, budú skryté. Každá tabuľka, ktorá sa môže pridať do perspektívy, sa navyše pridá automaticky. V ponuke Nastavenia sa môžete rozhodnúť automaticky pripojiť k tabuľkám, ktoré sú pridané do sémantického modelu po prvom nastavení pripojenia.

Toto dialógové okno sa v prípade dynamických pripojení nezobrazí.

Poznámka

Toto dialógové okno sa zobrazí iba vtedy, ak pridáte pripojenie DirectQuery k sémantickému modelu služby Power BI alebo modelu služby Analysis Services k existujúcemu modelu. Toto dialógové okno môžete otvoriť aj tak, že zmeníte pripojenie DirectQuery k sémantickému modelu služby Power BI alebo modelu služby Analysis Services v nastaveniach zdroja údajov po jeho vytvorení.

Dialog that allows specifying what tables to load from a Power BI semantic model or Analysis Services model.

Nastavenie pravidiel deduplication

Môžete zadať pravidlá deduplikácie, aby názvy mierok a tabuliek v zloženom modeli boli jedinečné, a to pomocou možnosti Nastavenia v predchádzajúcom dialógovom okne:

Dialog that allows specifying deduplication rules to apply when loading from a semantic model.

V predchádzajúcom príklade sme sa rozhodli pridať príponu (marketing) k akejkoľvek tabuľke alebo názvu mierky, ktorá je v konflikte s iným zdrojom v zloženom modeli. Všimnite si, že môžete:

  • zadajte text, ktorý sa má pridať do názvu konfliktných tabuliek alebo mierok
  • zadajte, či chcete, aby sa text pridal do názvu tabuľky alebo mierky ako predpona alebo prípona.
  • použitie pravidla deduplication na tabuľky, mierky alebo oboje,
  • Vyberte, či chcete použiť pravidlo deduplication iba v prípade, ak sa vyskytne konflikt názvu alebo ho použijete stále. Pravidlo sa predvolene používa iba v prípade, že nastane duplicita. V našom príklade žiadna tabuľka alebo mierka z marketingového zdroja, ktorá nemá duplikát v zdroji predaja, nedostane zmenu názvu.

Keď vytvoríte pripojenie a nastavíte pravidlo deduplication, v zozname polí sa podľa pravidla deduplication nastaveného v našom príklade zobrazia výraz Zákazník aj Zákazník (marketing):

Dialog that allows specifying deduplication rules to apply when loading from a Power BI semantic model or Analysis Services model.

Ak nezadáte pravidlo deduplication alebo zadané pravidlá deduplication nevyriešite konflikt v názve, stále sa použijú štandardné pravidlá deduplication. Štandardné pravidlá na odstránenie údajov pridávajú k názvu konfliktnej položky číslo. V prípade konfliktu názvov na tabuľke Zákazník sa jedna z tabuliek Zákazník premenuje na Zákazník 2.

Dôležité informácie a obmedzenia

Zložené modely predstavujú niekoľko dôležitých informácií a obmedzení:

Pripojenia v kombinovanom režime – ak sa používa pripojenie v kombinovanom režime, ktoré obsahuje online údaje (napríklad sémantický model služby Power BI) a lokálny sémantický model (napríklad excelový zošit), musíte mať vytvorené priradenie brány, aby sa vizuály zobrazili správne.

V súčasnosti je prírastkové obnovenie podporované len pre zložené modely pripojené k zdrojom údajov SQL, Oracle a Teradata.

Nasledujúce dynamické Pripojenie tabuľkové zdroje sa nedajú používať so zloženými modelmi:

Používanie sémantických modelov streamovania v zložených modeloch nie je podporované.

Pri používaní zložených modelov aj naďalej platia existujúce obmedzenia režimu DirectQuery. Mnohé z týchto obmedzení sa teraz týkajú jednotlivých tabuliek v závislosti od ich režimu úložiska. Napríklad vypočítaný stĺpec v tabuľke importu môže odkazovať na iné tabuľky, ktoré nie sú v režime DirectQuery, ale vypočítaný stĺpec v tabuľke DirectQuery stále môže odkazovať len na stĺpce v tej istej tabuľke. Ďalšie obmedzenia sa vzťahujú na model ako celok, ak je niektorá z tabuliek v rámci modelu v režime DirectQuery. Napríklad funkcia Rýchle Prehľady nie je v modeli k dispozícii, ak niektorá z tabuliek v ňom má režim úložiska typu DirectQuery.

Ďalšie informácie o zložených modeloch a režime DirectQuery nájdete v nasledujúcich článkoch: