GOC686 · Cvičení
Cvičení 3: Sdílený sémantický model
Thin report nad sdíleným modelem, Build oprávnění a lineage
Cíle kapitoly
- Najít sdílený sémantický model v OneLake catalog a rozpoznat jeho endorsement
- Postavit thin report na Live Connection nad cizím modelem
- Ověřit přes Lineage view, kde report skutečně leží vůči datům
- Pozorovat, co se stane s reportem při breaking change ve zdrojovém modelu
10.1
Úvod — jeden model, mnoho reportů
Ve workspace GOC686-Sdileny je lektorský sémantický model GOC686-Sales — stejná data jako tvůj Starter, navíc s dynamickou RLS podle přihlášeného uživatele. Vlastníkem modelu je lektor, ty jsi v tomto workspace Viewer + Build.
Poznámka: Role Viewer + Build permission je záměrná kombinace: Build ti dovolí postavit nový report nad modelem, ale nedává ti write permission na model samotný. Díky tomu na tebe (na rozdíl od Contributora či Membera) platí dynamická RLS — uvidíš jen svůj region.
10.2
Krok 1 — Nalezení modelu v OneLake catalog
- V levém panelu klikni OneLake catalog.
- Vyhledej
GOC686-Sales. - Všimni si badge Promoted (případně Certified) u položky a otevři její detail — tabulky, lineage, vlastník.
Tip: Endorsement badge je první signál, jestli je model bezpečné znovu použít jako zdroj pro nový report, místo aby sis stavěl vlastní kopii dat. Promoted znamená, že ho takto označil někdo s write permission na obsahu; Certified vyžaduje autorizaci Fabric adminem.
Ověření: V OneLake catalog najdeš
GOC686-Sales s badge Promoted (případně Certified) a vidíš jeho tabulky.10.3
Krok 2 — Vytvoření thin reportu
Vyber jednu ze dvou cest podle toho, jestli máš na počítači Power BI Desktop.
- Otevři Power BI Desktop → Home → Get data → Power BI semantic models.
- Vyber workspace GOC686-Sdileny a model
GOC686-Sales→ Connect. - Postav graf:
[Prodeje]podleProductCategorya přidej do něj legendu nebo slicer naSalesTerritoryGroup, aby bylo vidět, na jaký region je RLS omezená. - Publish → cílový workspace GOC686-StudentXX → pojmenuj
Thin report - StudentXX.
- V OneLake catalog u modelu
GOC686-Salesklikni Create a report. - Postav stejný graf:
[Prodeje]podleProductCategorya přidej legendu nebo slicer naSalesTerritoryGroup. - Ulož report do vlastního workspace GOC686-StudentXX jako
Thin report - StudentXX.
Pozor: Nejsi v Edit Query a report nemá Model view s možností přidat vlastní tabulku — je to Live Connection na cizí model, data zůstávají u zdroje. Thin report nemá Power Query ani vlastní tabulky. Míru na úrovni reportu (report-level measure) přidat umíš; vlastní tabulky a sloupce jen po převodu na composite model (viz tabulka v 10.6) — to v tomto kroku nepotřebuješ.
Ověření: Vidíš graf prodejů podle kategorie, ale v legendě nebo slicer jen svou skupinu (např. Europe) — pozoruj, že dynamická RLS z modelu platí i na tebe, přestože jsi report stavěl ty sám.
10.4
Krok 3 — Ověření závislosti přes Lineage
- V GOC686-StudentXX přepni zobrazení workspace na Lineage view (popisek se v UI může lišit — starší materiály uvádějí „View lineage").
- Najdi svůj
Thin report - StudentXXa sleduj šipku k semantic modelu.
Ověření: Lineage view ukazuje, že tvůj thin report v
GOC686-StudentXX je propojený se semantic modelem GOC686-Sales, který leží v jiném workspace — GOC686-Sdileny. Data se nekopírují, jen se na ně odkazuje.10.5
Krok 4 — Co se stane při změně zdrojového modelu
Lektor ve web modelingu modelu GOC686-Sales přidá novou míru a přejmenuje jeden sloupec.
- Otevři svůj
Thin report - StudentXXa obnov stránku — vidíš novou míru v panelu Data automaticky? - Zkontroluj vizuál, který používal přejmenovaný sloupec — co se s ním stalo?
Pozor: Nová míra se v thin reportu objeví bez zásahu — sdílíš jedno místo správy modelu. Přejmenovaný sloupec ale vizuál rozbije: web modeling downstream vizuály nepřepisuje, takže pole ve vizuálu zůstává navázané na starý název a vizuál začne hlásit chybu.
Shrnutí: Live Connection na sdílený model má jednu velkou výhodu — změna na jednom místě se projeví všude — a jednu velkou nevýhodu: breaking change v modelu rozbije najednou všechny závislé reporty, ne jen jeden.
10.6
Diskuze: srovnání přístupů ke sdílení dat
Doplň tabulku — kdy použít který přístup?▼
Řešení pro kontrolu:
| Přístup | Kdy použít | Výhoda | Riziko |
|---|---|---|---|
| Import mode (vlastní kopie dat) | Malý, samostatný report bez potřeby sdílet model | Rychlý výkon, nezávislost na jiných workspace | Duplicita dat a logiky, každá kopie se refreshuje zvlášť |
| Live Connection na sdílený model | Víc reportů nad stejnou business logikou (míry, RLS) | Jedno místo pravdy, změna míry platí všude | Breaking change rozbije všechny závislé reporty najednou |
| DirectQuery na sdílený model | Composite model kombinující sdílený model s vlastními tabulkami | Aktuální data bez importu, možnost rozšířit model o lokální tabulky | Závislost na výkonu zdroje, složitější řešení problémů |
| Dataflow jako sdílená příprava dat | Stejná transformační logika pro víc modelů | Transformace na jednom místě, ne v každém PBIX zvlášť | Extra vrstva k údržbě a další bod, kde refresh může selhat |
10.7
Shrnutí a reference
Shrnutí: Postavil jsi thin report nad cizím modelem, ověřil roli Build permission a dynamické RLS, potvrdil závislost přes Lineage view a viděl na vlastní oči, co breaking change udělá s downstream vizuálem.
📚 Do hloubky na Learn:
Use datasets across workspaces (EN) · Edit data models in the service — limitations (EN) · OneLake catalog (EN)