Sdílet prostřednictvím


Horizontální navýšení kapacity sémantického modelu Power BI

Sémantické škálování modelu na více instancí pomáhá Power BI zajistit rychlý výkon, zatímco sestavy a řídicí panely využívají velké cílové skupiny. Sémantický model škáluje kapacitu Premium k hostování jedné nebo více replik primárního sémantického modelu jen pro čtení. Zvýšením propustnosti zajišťují repliky jen pro čtení, aby se výkon nezpomalil, když více uživatelů odesílá dotazy najednou.

Když Power BI vytvoří repliky jen pro čtení, odděluje je od primárního sémantického modelu pro čtení i zápis. Repliky jen pro čtení obsluhují dotazy sestav a řídicích panelů Power BI a při provádění operací zápisu a aktualizace se používá sémantický model pro čtení i zápis. Během operací zápisu a aktualizace budou repliky jen pro čtení dál obsluhovat vaše sestavy a dotazy na řídicí panel bez přerušení. Ve výchozím nastavení se sémantické modely jen pro čtení a zápis pro čtení automaticky synchronizují, aby repliky jen pro čtení byly aktuální. Automatickou synchronizaci ale můžete zakázat a zvolit ruční synchronizaci na příkazovém řádku nebo pomocí skriptu.

Následující tabulka uvádí požadovanou synchronizaci pro každou metodu aktualizace, když je povolené škálování sémantického modelu Power BI na více instancí a automatická synchronizace je zakázaná:

Metoda Refresh Sync
Uživatelské rozhraní OnDemand Vždy se synchronizuje
Plánovaná aktualizace Vždy se synchronizuje
Základní rozhraní REST API Ruční synchronizace požadovaná 1
Pokročilé rozhraní REST API Ruční synchronizace požadovaná 1
XMLA Ruční synchronizace požadovaná 1

1 - S autoSyncReadOnlyReplicas nastaveným queryScaleOutSettings na false.

Správa replik

Horizontální navýšení kapacity vytvoří jednu repliku sémantického modelu pro čtení a tolik replik jen pro čtení podle potřeby. Všechny operace zápisu se směrují na repliku pro čtení i zápis. To zahrnuje dotazy na relace, které cílí na repliku pro čtení i zápis explicitně, to znamená, že se v připojovací řetězec nepoužívají?readonly. Tyto dotazy můžou způsobit vysoké využití interaktivního procesoru v replice pro čtení i zápis. V takových případech se nová replika nevytvoří, protože zatížení dotazu, které cílí na repliku pro čtení i zápis, nejde distribuovat do replik jen pro čtení.

Počet replik jen pro čtení se určuje na základě počtu jednotek CU, které vaše dotazy spotřebovávají. Pokud poptávka překračuje výpočetní prostředky, které jsou aktuálně dostupné na uzlu, na kterém je model načtený, a zůstane vysoká, může být na jiném uzlu vytvořena další replika jen pro čtení, aby se zatížení distribuuje. Celkový počet jednotek CU spotřebovaných všemi replikami v kombinaci ale nemůže překročit maximální počet jednotek CU, které může jeden model spotřebovat na dané skladové poště kapacity.

Například daný sémantický model v kapacitě F64 bude mít dostatek prostředků na jednom uzlu pro využití všech povolených jednotek CU v této skladové poště. Kapacity F64 proto obvykle nepřesahují kapacitu nad rámec jedné repliky jen pro čtení. Kapacity F256 a F1024+ naopak pravděpodobně vytvoří druhou repliku jen pro čtení, protože jeden uzel nemusí být dostatečný k tomu, aby poskytovaly všechny jednotky CU, které je možné použít v kapacitě F256/F1024+ .

QSO je navržený tak, aby co nejefektivněji a co nejefektivněji využíval dostupný výpočetní výkon dané skladové položky kapacity s nejmenším počtem replik jen pro čtení a bez režie na správu pro sémantické vlastníky modelů.

Aktuální zatížení kapacity ale může být dostatečně vysoké, aby mohlo způsobit omezování , pokud se přidá více replik. Omezování brání dalším replikám jen pro čtení v dosažení udržitelného vysokého využití procesoru. V takových případech se nevytvořila nová replika jen pro čtení.

Replika se odebere, když využití CU pro model dostatečně sníží a konzistentně zůstane dostatečně nízké.

Požadavky

Ve výchozím nastavení je pro vašeho tenanta povolené horizontální navýšení kapacity, ale není povolené pro sémantické modely ve vašem tenantovi. Pokud chcete povolit horizontální navýšení kapacity pro sémantický model, musíte použít rozhraní REST API Power BI. Před povolením musí být splněny následující požadavky:

  • Jsou povolené dotazy horizontálního navýšení kapacity pro nastavení velkých sémantických modelů pro vašeho tenanta (výchozí).

  • Váš pracovní prostor se nachází v kapacitě Power BI Premium:

    • Premium na uživatele (PPU)
    • Skladové položky Power BI Premium P
    • Skladové položky Power BI A pro Power BI Embedded (označované také jako vložení pro vaše zákazníky).
    • Skladové položky Infrastruktury F
  • Je povoleno nastavení formátu úložiště velkého sémantického modelu.

  • Pokud chcete spravovat sémantické modely pomocí rozhraní REST API, použijte rutiny pro správu Power BI. Nainstalujte ho tak, že otevřete PowerShell v režimu správce a spustíte příkaz:

    Install-Module -Name MicrosoftPowerBIMgmt
    
  • Následující (nebo vyšší) aplikace, knihovny a verze služeb podporují připojení k replikám jen pro čtení:

    Aplikace, knihovna nebo služba Verze
    Zprostředkovatel OLE DB služby Microsoft Analysis Services pro Microsoft SQL Server (MSOLAP) 16.0.20.201 (březen 2022)
    Microsoft.AnalysisServices.AdomdClient (ADOMD.NET) 19.36.0 (březen 2022)
    Power BI Desktop Červen 2022
    SQL Server Management Studio (SSMS) 19,0
    Tabulkový editor 2 2.16.6
    Tabulkový editor 3 3.2.3
    DAX Studio 3.0.0

Konfigurace horizontálního navýšení kapacity pro sémantický model

Informace o povolení nebo zakázání horizontálního navýšení kapacity pro sémantický model nebo získání stavu horizontálního navýšení kapacity pomocí PowerShellu a rozhraní REST API najdete v tématu Konfigurace horizontálního navýšení kapacity sémantických modelů.

Připojení ke konkrétnímu sémantickému typu modelu

Pokud je povolené horizontální navýšení kapacity, zachovají se následující připojení:

  • Power BI Desktop se ve výchozím nastavení připojuje k replice jen pro čtení.

  • Sestavy živého připojení se připojují k replice jen pro čtení.

  • Klientské aplikace XMLA se ve výchozím nastavení připojují k sémantickému modelu pro čtení i zápis.

  • Aktualizuje se v služba Power BI a aktualizuje pomocí rozhraní REST API rozšířené aktualizace připojení k sémantickému modelu pro čtení i zápis.

K replice jen pro čtení nebo k sémantickému modelu jen pro čtení se můžete připojit připojením jednoho z následujících řetězců k adrese URL sémantického modelu:

  • Jen pro čtení - ?readonly
  • Čtení i zápis - ?readwrite

Zakázání sémantického modelu pro vašeho tenanta

Horizontální navýšení kapacity sémantických modelů Power BI je pro tenanta ve výchozím nastavení povolené. Toto nastavení můžou zakázat správci tenanta Power BI. Pokud chcete zakázat horizontální navýšení kapacity sémantických modelů pro tenanta, postupujte takto:

  1. Přejděte do nastavení tenanta.

  2. V nastavení horizontálního navýšení kapacity rozbalte dotazy horizontálního navýšení kapacity pro velké sémantické modely.

  3. Přepněte přepínač na Zakázáno.

  4. Vyberte Použít.

    Snímek obrazovky znázorňující, jak zakázat nastavení tenanta horizontálního navýšení kapacity na portálu pro správu Power BI

Úvahy a omezení

  • Klientské aplikace se můžou připojit k replice jen pro čtení prostřednictvím koncového bodu XMLA za předpokladu, že podporují režim zadaný v připojovací řetězec. Klientské aplikace se také můžou připojit k instanci pro čtení i zápis pomocí koncového bodu XMLA.

  • Ruční a plánované aktualizace se vždy automaticky synchronizují s nejnovější verzí replik jen pro čtení. Aktualizace rozhraní REST API respektují konfiguraci automatické synchronizace. Pokud je automatická synchronizace zakázaná, musí se sémantický model synchronizovat s replikami jen pro čtení pomocí rozhraní REST API pro ruční synchronizaci.

  • Když je automatická synchronizace zakázaná, musí se aktualizace a aktualizace XMLA synchronizovat s kopiemi sémantického modelu jen pro čtení pomocí rozhraní REST API synchronizace.

  • Když odstraníte sémantický model Power BI se škálováním na více systémů a vytvoříte jiný sémantický model se stejným názvem, před vytvořením nového sémantického modelu povolte pět minut. Odebrání replik primárního sémantického modelu může chvíli trvat.

  • Pokud je sémantický model Power BI povolený a autoSyncReadOnlyReplicas=falsezměny následujících funkcí se nepodporují:

    • Přidání nebo odstranění rolí
    • Aktualizace sady členství rolí pro libovolnou roli
    • Úprava zdroje dat
    • Odstranění zdrojů dat používaných DirectQuery nebo duální tabulkou
    • Změny výrazů zabezpečení na úrovni objektů (OLS) nebo dynamického zabezpečení na úrovni řádků (RLS)

    Pokud chcete v těchto funkcích provést změny, zakažte horizontální navýšení kapacity a počkejte několik minut, než se změna provede, než se znovu nasdílí.

  • Zjišťování členství rolí pomocí zobrazení dynamické správy (DMV) TMSCHEMA_ROLE_MEMBERSHIPS sadě řádků nevrací žádné výsledky při spuštění proti replice jen pro čtení.

  • Sestavy, které používají živé připojení, se vždy připojují k replice jen pro čtení, i když připojovací řetězec používá ?readwrite. V Power BI Desktopu ale sestavy živého připojení používající ?readwrite připojení k replice pro čtení i zápis.

  • Sady řádků dynamického zobrazení správy (DMV) DBSCHEMA_CATALOGS a DISCOVER_XML_METADATA vrátí informace repliky pro čtení i zápis při použití ?readonly v připojovací řetězec.

  • Profiler SQL Serveru nefunguje s ?readonly připojovací řetězec.

  • Tyto operace aktivují automatickou synchronizaci, i když je automatická synchronizace vypnutá (AutoSync=Off).

    • Migrace pracovního prostoru z jedné kapacity do jiné.
    • Přepínání (nebo obměně) verze klíče použitého pro používání vlastních šifrovacích klíčů (BYOK).
    • Přesunutí pracovního prostoru sémantického modelu z kapacity, která nepoužívá BYOK, do kapacity, která používá BYOK.
    • Přesunutí pracovního prostoru sémantického modelu z kapacity, která používá BYOK, do kapacity, která nepoužívá BYOK.
    • Obnovení sémantického modelu pomocí veřejného koncového bodu XMLA
  • Zakázání formátu úložiště velkých sémantických modelů zakáže horizontální navýšení kapacity a ztratí všechny informace o synchronizaci.