Prírastkové obnovenie a údaje v reálnom čase pre sémantické modely

Prírastkové obnovenie rozširuje plánované operácie obnovenia tým, že poskytuje automatizované vytváranie a spravovanie oblastí pre tabuľky sémantických modelov, ktoré často načítavajú nové a aktualizované údaje. Pre väčšinu modelov obsahuje jedna alebo viac tabuliek údajov o transakciách, ktoré sa často menia a môžu exponenciálne rásť, ako napríklad tabuľka faktov v schéme relačnej alebo hviezdicovej databázy. Politika prírastkového obnovenia na rozdelenie tabuľky, obnovenie iba najnovších oblastí importu a voliteľne použitie inej oblasti DirectQuery pre údaje v reálnom čase môže výrazne znížiť množstvo údajov, ktoré sa musia obnoviť. Táto politika zároveň zaisťuje, že do výsledkov dotazu sú zahrnuté najnovšie zmeny v zdroji údajov.

S prírastkovým obnovením a údajmi v reálnom čase:

  • Je potrebných menej cyklov obnovenia pre rýchlo sa meniace údaje. Režim DirectQuery získava počas spracovania dotazov najnovšie aktualizácie údajov bez toho, aby vyžadoval vysokú frekvenciu obnovovania.
  • Obnovy prejdú rýchlejšie. Obnovia sa len najnovšie údaje, ktoré sa zmenili.
  • Obnovenia sú spoľahlivejšie. Dlhodobé pripojenia k nestálym zdrojom údajov nie sú potrebné. Dotazy na zdrojové údaje bežia rýchlejšie, čím sa znižuje potenciál rušenia sieťových problémov.
  • Znižuje sa spotreba zdrojov. Vďaka menšiemu počtu údajov na obnovu sa znižuje celková spotreba pamäte a ďalších zdrojov v službách Power BI aj v systémoch zdrojov údajov.
  • Veľké sémantické modely sú povolené. Sémantické modely s potenciálnymi miliardami riadkov môžu narásť bez potreby úplného obnovenia celého modelu pri každej operácii obnovenia.
  • Nastavenie je jednoduché. Politiku prírastkového obnovovania nájdete v aplikácii Power BI Desktop len s niekoľkými úlohami. Keď Power BI Desktop publikuje zostavu, služba automaticky použije tieto politiky pri každom obnovení.

Keď publikujete model aplikácie Power BI Desktop do služby, každá tabuľka v novom modeli má jednu oblasť. Táto jedna oblasť obsahuje všetky riadky pre danú tabuľku. Ak je tabuľka veľká, povedzme, že s desiatkami miliónov riadkov alebo viac, obnovenie pre danú tabuľku môže trvať dlho a môže spotrebúvať nadmerné množstvo zdrojov.

Pri prírastkovom obnovení služba dynamicky rozdeľuje a oddeľuje údaje, ktoré je potrebné často obnovovať z údajov, ktoré je možné menej často obnovovať. Údaje tabuľky sa filtrujú pomocou parametrov dátumu a času Power Query s vyhradenými názvami, názvami RangeStart rozlišujúcimi veľké a malé písmená a RangeEnd. Pri konfigurácii prírastkového obnovenia v aplikácii Power BI Desktop sa tieto parametre používajú iba na filtrovanie malého obdobia údajov, ktoré sa načítajú do modelu. Keď Power BI Desktop publikuje zostavu do služba Power BI, pri prvej operácii obnovenia služba vytvorí prírastkové obnovenie a historické oblasti a voliteľne oblasť DirectQuery v reálnom čase na základe nastavení politiky prírastkového obnovenia. Služba potom prepíše hodnoty parametrov na filtrovanie a dotazovanie údajov pre každú oblasť na základe hodnôt dátumu a času pre každý riadok.

Pri každom ďalšom obnovení filtre dotazu vrátia iba riadky v rámci obdobia obnovenia dynamicky definované parametrami. Riadky s dátumom a časom v rámci obdobia obnovenia sa obnovia. Riadky s dátumom a časom, ktoré sa v období obnovenia už nenachádzali, sa potom stanú súčasťou historického obdobia, ktoré sa neobnoví. Ak je oblasť DirectQuery v reálnom čase zahrnutá v politike prírastkového obnovenia, jej filter sa tiež aktualizuje, aby sa aktualizovali všetky zmeny, ktoré sa vyskytnú po období obnovenia. Obdobia obnovenia aj historické obdobia sa posúvajú dopredu. Pri vytváraní nových oblastí prírastkového obnovenia sa oblasti obnovenia už v období obnovenia nestanú historickými oblasťami. V priebehu času sa historické oblasti stávajú menej podrobnými, pretože sa zlúčia. Ak sa historická oblasť už v historickom období definovanom politikou nenachádza, úplne sa z modelu odstráni. Toto správanie je známe ako vzor posuvného okna.

Graphic representing a rolling window pattern.

Krása prírastkového obnovenia spočíva v tom, že služba všetko zvládne za vás na základe politík prírastkového obnovenia, ktoré definujete. Proces a z neho vytvorené oblasti v skutočnosti nie sú v službe viditeľné. Vo väčšine prípadov je potrebná dobre definovaná politika prírastkového obnovenia, ktorá je potrebná na výrazné zlepšenie výkonu obnovenia modelu. Oblasť DirectQuery v reálnom čase je však podporovaná len pre modely v kapacitách Premium. Služba Power BI Premium tiež umožňuje pokročilejšie scenáre oblastí a obnovenia prostredníctvom koncového bodu XML for Analysis (XMLA).

Požiadavky

V nasledujúcich častiach sú popísané podporované plány a zdroje údajov.

Podporované plány

Prírastkové obnovenie je podporované pre modely Power BI Premium, Premium na používateľa, Power BI Pro a Power BI Embedded.

Získanie najnovších údajov v reálnom čase pomocou režimu DirectQuery je podporované len pre modely Power BI Premium, Premium na používateľa a Power BI Embedded.

Podporované zdroje údajov

Prírastkové obnovenie a údaje v reálnom čase fungujú najlepšie v prípade štruktúrovaných relačných zdrojov údajov, ako je databáza SQL a Azure Synapse, ale môžu fungovať aj pre iné zdroje údajov. V každom prípade musí váš zdroj údajov podporovať nasledujúce:

Filtrovanie dátumov – zdroj údajov musí podporovať určitý mechanizmus filtrovania údajov podľa dátumu. V prípade relačného zdroja ide zvyčajne o stĺpec dátumu a času alebo celočíselný typ údajov v cieľovej tabuľke. Parametre RangeStart a RangeEnd, ktoré musia byť typu údajov dátumu a času, filtrujú údaje tabuľky podľa stĺpca dátumu. Pre stĺpce dátumov celých náhradných kľúčov vo forme yyyymmddmôžete vytvoriť funkciu, ktorá skonvertuje hodnotu dátumu a času v parametroch RangeStart a RangeEnd tak, aby zodpovedali celým číslam náhradných kľúčov stĺpca dátumov. Ďalšie informácie nájdete v téme Konfigurácia prírastkového obnovenia – Konverzia dátumu a času na celé číslo.

V prípade iných zdrojov údajov musia byť parametre RangeStart a RangeEnd prenesené do zdroja údajov takým spôsobom, ktorý umožňuje filtrovanie. V prípade zdrojov údajov založených na súboroch, kde sú súbory a priečinky usporiadané podľa dátumu, možno parametre RangeStart a RangeEnd použiť na filtrovanie súborov a priečinkov a výber súborov, ktoré sa majú načítať. Pre webové zdroje údajov je možné parametre RangeStart a RangeEnd integrovať do požiadavky HTTP. Nasledujúci dotaz možno použiť napríklad na prírastkové obnovenie trasovania z aplikácie Prehľady inštancie:

let 
    strRangeStart = DateTime.ToText(RangeStart,[Format="yyyy-MM-dd'T'HH:mm:ss'Z'", Culture="en-US"]),
    strRangeEnd = DateTime.ToText(RangeEnd,[Format="yyyy-MM-dd'T'HH:mm:ss'Z'", Culture="en-US"]),
    Source = Json.Document(Web.Contents("https://api.applicationinsights.io/v1/apps/<app-guid>/query", 
    [Query=[#"query"="traces 
    | where timestamp >= datetime(" & strRangeStart &") 
    | where timestamp < datetime("& strRangeEnd &")
    ",#"x-ms-app"="AAPBI",#"prefer"="ai.response-thinning=true"],Timeout=#duration(0,0,4,0)])),
    TypeMap = #table(
    { "AnalyticsTypes", "Type" }, 
    { 
    { "string",   Text.Type },
    { "int",      Int32.Type },
    { "long",     Int64.Type },
    { "real",     Double.Type },
    { "timespan", Duration.Type },
    { "datetime", DateTimeZone.Type },
    { "bool",     Logical.Type },
    { "guid",     Text.Type },
    { "dynamic",  Text.Type }
    }),
    DataTable = Source[tables]{0},
    Columns = Table.FromRecords(DataTable[columns]),
    ColumnsWithType = Table.Join(Columns, {"type"}, TypeMap , {"AnalyticsTypes"}),
    Rows = Table.FromRows(DataTable[rows], Columns[name]), 
    Table = Table.TransformColumnTypes(Rows, Table.ToList(ColumnsWithType, (c) => { c{0}, c{3}}))
in
Table

Keď je prírastkové obnovenie nakonfigurované, výraz Power Query, ktorý obsahuje filter dátumu a času založený na parametroch RangeStart a RangeEnd, sa vykoná na zdroji údajov. Ak je filter zadaný v kroku dotazu po počiatočnom zdrojovom dotaze, je dôležité, aby postupné posúvanie dotazov skombinuje počiatočný krok dotazu s krokmi odkazu na parametre RangeStart a RangeEnd. Napríklad pri nasledujúcom výraze dotazu sa zobrazí skladanie, Table.SelectRows pretože hneď nasleduje za Sql.Database krokom a SQL Server podporuje skladanie:

let
  Source = Sql.Database("dwdev02","AdventureWorksDW2017"),
  Data  = Source{[Schema="dbo",Item="FactInternetSales"]}[Data],
  #"Filtered Rows" = Table.SelectRows(Data, each [OrderDateKey] >= Int32.From(DateTime.ToText(RangeStart,[Format="yyyyMMdd"]))),
  #"Filtered Rows1" = Table.SelectRows(#"Filtered Rows", each [OrderDateKey] < Int32.From(DateTime.ToText(RangeEnd,[Format="yyyyMMdd"])))
  
in
  #"Filtered Rows1"

Konečné skladanie podpory dotazu sa nevyžaduje. V nasledujúcom výraze napríklad použijeme ne skladanie režimu NativeQuery, ale priamo integrujeme parametre RangeStart a RangeEnd do sql:

let
  Query = "select * from dbo.FactInternetSales where OrderDateKey >= '"& Text.From(Int32.From( DateTime.ToText(RangeStart,"yyyyMMdd") )) &"' and OrderDateKey < '"& Text.From(Int32.From( DateTime.ToText(RangeEnd,"yyyyMMdd") )) &"' ",
  Source = Sql.Database("dwdev02","AdventureWorksDW2017"),
  Data = Value.NativeQuery(Source, Query, null, [EnableFolding=false])
in
  Data

Ak však politika prírastkového obnovenia zahŕňa získavanie údajov v reálnom čase pomocou režimu DirectQuery, transformácie bez skladania nie je možné použiť. Ak ide o politiku čistého režimu importu bez údajov v reálnom čase, mashup modul dotazov môže kompenzovať a použiť filter lokálne, čo vyžaduje načítanie všetkých riadkov pre tabuľku zo zdroja údajov. To môže spôsobiť, že prírastkové obnovenie bude pomalé a proces môže mať za následok nedostatok prostriedkov buď vo služba Power BI, alebo v lokálnej bráne údajov. Môže tak viesť k efektívnemu porážke účelu prírastkového obnovenia.

Keďže podpora postupného posúvania dotazov sa v prípade rôznych typov zdrojov údajov líši, malo by sa overiť, či je logika filtra zahrnutá v dotazoch, ktoré sa spúšťajú na zdroji údajov. Vo väčšine prípadov sa aplikácia Power BI Desktop pokúsi vykonať toto overenie pri definovaní politiky prírastkového obnovenia. V prípade zdrojov údajov založených na jazyku SQL, ako sú napríklad DATABÁZA SQL, Azure Synapse, Oracle a Teradata, je toto overenie spoľahlivé. Overiť iné zdroje údajov však nemusí byť možné bez trasovania dotazov. Ak aplikácia Power BI Desktop nedokáže potvrdiť dotazy, zobrazí sa upozornenie v dialógovom okne Konfigurácia politiky prírastkového obnovenia.

Screenshot of the query folding warning

Ak sa zobrazí toto upozornenie a chcete overiť, či sa vyskytuje potrebné skladanie dotazov, použite funkciu Diagnostika doplnku Power Query alebo dotazy sledovania pomocou nástroja podporovaného zdrojom údajov, ako je napríklad SQL Profiler. Ak sa nevyskytuje postupné posúvanie dotazov, overte, či je logika filtra zahrnutá v dotaze odovzdanom do zdroja údajov. Ak nie, je pravdepodobné, že dotaz zahrnie transformáciu, ktorá bráni postupnému posúvaniu.

Pred konfiguráciou riešenia prírastkového obnovenia si dôkladne prečítajte a porozumejte pokynom na postupné posúvanie dotazov v aplikácii Power BI Desktop a postupné posúvanie dotazov Power Query. Tieto články vám môžu pomôcť určiť, či váš zdroj údajov a dotazy podporujú postupné posúvanie dotazov.

Jeden zdroj údajov

Keď nakonfigurujete prírastkové obnovenie a údaje v reálnom čase pomocou aplikácie Power BI Desktop alebo nakonfigurujete pokročilé riešenie pomocou jazyka na skriptovanie tabuľkového modelu (TMSL) alebo tabuľkového objektového modelu (TOM), cez koncový bod XMLA musia všetky oblasti, či už importované, alebo DirectQuery, dotazovať údaje z jedného zdroja.

Iné typy zdrojov údajov

Pomocou ďalších vlastných funkcií dotazov a logiky dotazu je možné prírastkové obnovenie použiť s inými typmi zdrojov údajov, ak sú filtre založené na RangeStart a RangeEnd môžu byť prenesené do jedného dotazu, napríklad v prípade zdrojov údajov, ako sú napríklad súbory excelového zošita uložené v priečinku, súbory v SharePointe a informačné kanály RSS. Pamätajte na to, že ide o pokročilé scenáre, ktoré si vyžadujú ďalšie prispôsobenie a testovanie nad rámec toho, čo je popísané tu. Nezabudnite si pozrieť časť Komunita ďalej v tomto článku, kde nájdete návrhy, ako nájsť ďalšie informácie o používaní prírastkového obnovenia pre jedinečné scenáre.

Lehoty

Bez ohľadu na prírastkové obnovenie majú modely Power BI Pro časový limit obnovenia dve hodiny a nepodporujú získavanie údajov v reálnom čase pomocou režimu DirectQuery. V prípade modelov v kapacite Premium je časový limit päť hodín. Operácie obnovenia sú náročné na spracovanie a pamäť. Operácia úplného obnovenia môže využiť dvojnásobok pamäte vyžadovaný samotným modelom, pretože služba až do dokončenia operácie obnovenia zachová snímku modelu v pamäti. Operácie obnovenia môžu byť tiež náročné na proces a spotrebúvajú značné množstvo dostupných zdrojov procesora. Operácie obnovenia sa tiež musia spoliehať na nestále pripojenia k zdrojom údajov a na schopnosť týchto systémov zdrojov údajov rýchlo vrátiť výstup dotazu. Časový limit predstavuje ochranu na obmedzenie nadmernej spotreby vašich dostupných zdrojov.

Poznámka

S kapacitami Premium nemajú operácie obnovenia vykonávané prostredníctvom koncového bodu XMLA žiadne časové obmedzenie. Ďalšie informácie nájdete v téme Rozšírené prírastkové obnovenie s koncovým bodom XMLA.

Prírastkové obnovenie optimalizuje operácie obnovenia na úrovni oblasti v modeli, a preto je možné výrazne znížiť spotrebu zdrojov. Zároveň, dokonca aj pri prírastkovom obnovení, pokiaľ neprejdú koncovým bodom XMLA, operácie obnovenia sú viazané týmito rovnakými dvojhodinovými a päťhodinovými limitmi. Efektívna politika prírastkového obnovenia nielenže zmenší množstvo údajov spracovaných pomocou operácie obnovenia, ale aj zníži množstvo nepotrebných historických údajov uložených vo vašom modeli.

Dotazy môžu byť tiež obmedzené predvoleným časovým limitom pre zdroj údajov. Väčšina relačných zdrojov údajov povoľuje prepisovanie časových limitov vo výraze jazyka Power Query M. Nižšie uvedený výraz napríklad používa funkciu prístupu k údajom sql Servera na nastavenie hodnoty CommandTimeout na 2 hodiny. Počas každého obdobia definovaného rozsahmi politiky sa odošle dotaz, ktorý dodržiava nastavenie časového limitu príkazu:

let
    Source = Sql.Database("myserver.database.windows.net", "AdventureWorks", [CommandTimeout=#duration(0, 2, 0, 0)]),
    dbo_Fact = Source{[Schema="dbo",Item="FactInternetSales"]}[Data],
    #"Filtered Rows" = Table.SelectRows(dbo_Fact, each [OrderDate] >= RangeStart and [OrderDate] < RangeEnd)
in
    #"Filtered Rows"

V prípade veľmi veľkých modelov v kapacitách Premium, ktoré pravdepodobne obsahujú miliardy riadkov, je možné spustiť počiatočnú operáciu obnovenia. Bootstrapping umožňuje službe vytvárať objekty tabuľky a oblasti pre model, ale nenačíta a nespracováva údaje do žiadnej z oblastí. Pomocou nástroja SQL Server Management Studio môžete nastaviť oblasti, ktoré sa majú spracovať jednotlivo, v príslušnom poradí alebo paralelne, aby sa zmenšil objem údajov vrátený v jednom dotaze, čím sa obíde aj päťhodinový časový limit. Ďalšie informácie nájdete v téme Rozšírené prírastkové obnovenie – Zabránenie uplynutiu časového limitu pri počiatočnom úplnom obnovení.

Aktuálny dátum a čas

Aktuálny dátum a čas je založený na systémovom dátume v čase obnovenia. Ak je pre model v službe povolené plánované obnovenie, pri určovaní aktuálneho dátumu a času sa berie do úvahy zadané časové pásmo. Individuálne aj plánované obnovenia prostredníctvom služby dodržujú časové pásmo, ak je k dispozícii. Napríklad obnovenie, ktoré sa vyskytuje o 20:00 tichomorského času (USA a Kanada) so zadaným časovým pásmom určuje aktuálny dátum a čas na základe tichomorského času, nie koordinovaného svetového času (UTC), čo by vrátilo nasledujúci deň. Operácie obnovenia, ktoré sa nevyvolávajú prostredníctvom služba Power BI, ako napríklad príkaz na obnovenie TMSL, nezovažujú časové pásmo plánovaného obnovenia.

Screenshot of Scheduled refresh dialog showing the Time zone input field

Konfigurácia prírastkového obnovenia a údajov v reálnom čase

Táto časť popisuje dôležité koncepty konfigurácie prírastkového obnovenia a údajov v reálnom čase. Ak ste pripravení na podrobnejšie podrobné pokyny, pozrite si tému Konfigurácia prírastkového obnovenia a údajov v reálnom čase pre sémantické modely.

Konfigurácia prírastkového obnovenia prebieha v aplikácii Power BI Desktop. Pre väčšinu modelov sa vyžaduje len niekoľko úloh. Majte však na pamäti nasledujúce body:

  • Po publikovaní do služba Power BI už nebudete môcť znova publikovať rovnaký model z aplikácie Power BI Desktop. Opätovním publikovaním sa odstránia všetky existujúce oblasti a údaje, ktoré už sú v modeli. Ak publikujete do kapacity Premium, následné zmeny schémy metaúdajov je možné vykonať s nástrojmi, ako je napríklad open-source ALM Toolkit alebo pomocou TMSL. Ďalšie informácie nájdete v téme Rozšírené prírastkové obnovenie – nasadenie iba metaúdajov.
  • Po publikovaní do služba Power BI nie je možné model do aplikácie Power BI Desktop stiahnuť späť ako súbor .pbix. Modely v službe sa môžu zväčšovať a sťahovať a otvárať ich v bežnom počítači.
  • Keď získavate údaje v reálnom čase pomocou režimu DirectQuery, nemôžete model publikovať do pracovného priestoru mimo kapacity Premium. Prírastkové obnovenie s údajmi v reálnom čase je podporované len so službou Power BI Premium.

Vytvorenie parametrov

Ak chcete nakonfigurovať prírastkové obnovenie v aplikácii Power BI Desktop, najskôr vytvorte dva parametre dátumu a času Power Query s vyhradenými názvami RangeStart rozlišujúcimi veľké a malé písmená a RangeEnd. Tieto parametre, ktoré sú definované v dialógovom okne Spravovať parametre v Editor Power Query, sa pôvodne používajú na filtrovanie údajov načítaných do tabuľky modelu aplikácie Power BI Desktop tak, aby sa do tabuľky modelu aplikácie Power BI Desktop zahrnuli iba riadky s dátumom a časom v danom období. RangeStart predstavuje najstarší alebo najskorší dátum a čas a RangeEnd predstavuje najnovší, alebo najnovší dátum a čas. Po publikovaní modelu do služby sa RangeEnd služba automaticky prepíše tak, RangeStart aby dotazla údaje definované obdobím obnovenia zadaným v nastaveniach politiky prírastkového obnovenia.

Napríklad tabuľka zdroja údajov FactInternetSales vypočíta priemer 10 000 nových riadkov za deň. Ak chcete obmedziť počet riadkov, ktoré boli pôvodne načítané do modelu v aplikácii Power BI Desktop, zadajte dvojdňové obdobie medzi RangeStart a RangeEnd.

Screenshot of the Manage Parameters dialog showing the RangeStart and RangeEnd parameters.

Filtrovanie údajov

Keď sú RangeStart parametre a RangeEnd definované, použijete vlastné filtre dátumov v stĺpci dátumov tabuľky. Filtre, ktoré použijete, vyberú podmnožinu údajov, ktoré sa načítajú do modelu po výbere položky Použiť.

Screenshot of column context menu with Custom Filter selected

V našom príklade factInternetSales sa po vytvorení filtrov na základe parametrov a použití krokov načítajú do modelu dva dni údajov (približne 20 000 riadkov).

Definovanie politiky

Po použití filtrov a načítaní podmnožiny údajov do modelu definujete politiku prírastkového obnovenia pre tabuľku. Po publikovaní modelu do služby používa služba túto politiku na vytvorenie a spravovanie oblastí tabuliek a vykonávanie operácií obnovenia. Na definovanie politiky sa používa dialógové okno Prírastkové obnovenie a údaje v reálnom čase na určenie požadovaných aj voliteľných nastavení.

Screenshot of the Incremental refresh and real-time data dialog showing the Incrementally refresh this table option on.

Table

Zoznam Vybrať tabuľku sa predvolene nastaví na tabuľku, ktorú ste vybrali v zobrazení údajov. Povoľte prírastkové obnovenie tabuľky pomocou jazdca. Ak výraz Power Query pre tabuľku neobsahuje filter založený na RangeStart parametroch a RangeEnd , prepínač nie je k dispozícii.

Požadované nastavenia

Nastavenie Archivovať údaje začínajúce pred dátumom obnovenia určuje historické obdobie, v ktorom sú do modelu zahrnuté riadky s dátumom a časom v danom období, plus riadky pre aktuálne neúplné historické obdobie plus riadky v období obnovenia do aktuálneho dátumu a času.

Ak napríklad zadáte päť rokov, tabuľka uloží posledných päť celých rokov historických údajov v oblasti roka. Tabuľka bude obsahovať aj riadky pre aktuálny rok v oblasti štvrťroku, mesiaca alebo dňa, a to až po obdobie obnovenia.

V prípade modelov v kapacitách Premium možno backdated historical partitions selektívne obnovovať podľa granularity určenej týmto nastavením. Ďalšie informácie nájdete v téme Rozšírené prírastkové obnovenie – Oblasti.

Nastavenie Prírastkové obnovenie údajov začínajúce pred dátumom obnovenia určuje obdobie prírastkového obnovenia, v ktorom sú všetky riadky s dátumom a časom v danom období zahrnuté do oblastí obnovenia a obnovené pri každej operácii obnovenia.

Ak napríklad zadáte obdobie obnovenia tri dni, pri každej operácii obnovenia služba prepíše RangeStart parametre a RangeEnd na vytvorenie dotazu pre riadky s dátumom a časom v rámci troch dní, pričom začiatok a koniec závisia od aktuálneho dátumu a času. Riadky s dátumom a časom v posledných troch dňoch až do aktuálneho času operácie obnovenia sa obnovia. Pri tomto type politiky môžete očakávať našu tabuľku modelu FactInternetSales v službe, v ktorej je priemerne 10 000 nových riadkov denne, aby sa pri každej operácii obnovenia obnovilo približne 30 000 riadkov.

Zadajte obdobie, ktoré obsahuje iba minimálny počet riadkov požadovaných na zabezpečenie presného vytvárania zostáv. Pri definovaní politík pre viac ako jednu tabuľku je potrebné použiť rovnaké RangeStart parametre aj RangeEnd vtedy, ak sú pre každú tabuľku definované rôzne obdobia ukladania a obnovovania.

Voliteľné nastavenia

Nastavenie Získať najnovšie údaje v reálnom čase pomocou režimu DirectQuery (iba Premium) umožňuje načítanie najnovších zmien z vybratej tabuľky v zdroji údajov po období prírastkového obnovenia pomocou režimu DirectQuery. Všetky riadky s dátumom a časom neskorším ako obdobie prírastkového obnovenia sú zahrnuté v oblasti DirectQuery a načítané zo zdroja údajov s každým dotazom modelu.

Ak je toto nastavenie povolené, pri každej operácii obnovenia služba stále prepíše RangeStart parametre a RangeEnd na vytvorenie dotazu pre riadky s dátumom a časom po období obnovenia, pričom začiatok závisí od aktuálneho dátumu a času. Riadky s dátumom a časom po aktuálnom čase operácie obnovenia sú tiež zahrnuté. Pri tomto type politiky tabuľka modelu FactInternetSales v službe obsahuje najnovšie aktualizácie údajov.

Nastavenie Obnoviť iba dokončené dni zabezpečí, že do operácie obnovenia budú zahrnuté všetky riadky za celý deň. Toto nastavenie je voliteľné , pokiaľ nepovolítenastavenie Získať najnovšie údaje v reálnom čase s režimom DirectQuery (len vo verzii Premium). Povedzme napríklad, že obnovenie je naplánované na spustenie každé ráno o 4:00. Ak sa nové riadky údajov zobrazia v tabuľke zdroja údajov počas štyroch hodín medzi polnocou a 4:00 am, nechcete ich kontá. Pri niektorých obchodných metrikách, napríklad bareloch za deň v ropnom a plynárenskom priemysle, čiastkové dni nedávali zmysel. Ďalším príkladom je obnova údajov z finančného systému, do ktorého sa údaje za predchádzajúci mesiac schvaľujú v dvanásty kalendárny deň v mesiaci. Obdobie obnovenia by ste mohli nastaviť na jeden mesiac a naplánovať spustenie obnovenia v dvanásty deň v mesiaci. Keď by bola táto možnosť vybratá, januárové údaje by sa napríklad obnovili 12. februára.

Pamätajte, že ak nie je plánované obnovenie nakonfigurované pre časové pásmo iné ako UTC, operácie obnovenia v službe sa spúšťajú v čase UTC, čo môže určiť dátum účinnosti a dokončené obdobia.

Nastavenie Zistiť zmeny údajov umožňuje ešte selektívnejšie obnovenie. Môžete vybrať stĺpec dátumu a času používaný na identifikáciu a obnovenie iba tých dní, v ktorých sa údaje zmenili. Toto nastavenie predpokladá, že takýto stĺpec existuje v zdroji údajov, ktorý zvyčajne slúži na účely auditu. Tento stĺpec by nemal byť rovnaký stĺpec, ktorý sa používa na rozdelenie údajov s RangeStart parametrami a RangeEnd . Maximálna hodnota tohto stĺpca sa vyhodnotí pre každé obdobie v prírastkovom rozsahu. Ak sa od posledného obnovenia nezmenila, nemusíte obnovovať obdobie, čo by potenciálne mohlo ešte viac znížiť počet obnovovaných dní z troch na jedno.

V aktuálnom návrhu musí byť stĺpec, ktorý má zisťovať zmeny údajov, trvalý a uložený vo vyrovnávacej pamäti. Na zníženie kardinality a spotreby pamäte možno použiť nasledujúce techniky:

  • V čase obnovenia zachovajte len maximálnu hodnotu stĺpca napríklad pomocou funkcie Power Query.
  • Znížte presnosť na prijateľnú úroveň vzhľadom na vaše požiadavky na frekvenciu obnovovania.
  • Definujte vlastný dotaz na zisťovanie zmien údajov pomocou koncového bodu XMLA a vyhnite sa zachovaniu hodnoty stĺpca.

V niektorých prípadoch je možné ďalej zvýšiť povolenie možnosti Zistiť zmeny údajov*. Môžete sa napríklad vyhnúť trvalej aktualizácii stĺpca vo vyrovnávacej pamäti alebo povoliť scenáre, v ktorých je tabuľka konfigurácie/inštrukcií pripravená procesmi načítania a transformácie (ETL), aby sa označovali iba tie oblasti, ktoré je potrebné obnoviť. V takých prípadoch v prípade kapacít Premium použite na prepísanie správania pri zisťovaní zmien údajov TMSL a/alebo tom. Ďalšie informácie nájdete v téme Rozšírené prírastkové obnovenie – vlastné dotazy na zisťovanie zmien údajov.

Publikovať

Po nakonfigurovaní politiky prírastkového obnovenia publikujete model v službe. Po dokončení publikovania môžete v modeli vykonať počiatočnú operáciu obnovenia.

Poznámka

Sémantické modely s politikou prírastkového obnovenia na získanie najnovších údajov v reálnom čase pomocou režimu DirectQuery je možné publikovať iba v pracovnom priestore Premium.

Ak si myslíte, že model publikovaný v pracovných priestoroch priradených ku kapacitám Premium sa bude zväčšovať za hranicu 1 GB, môžete zlepšiť výkon operácií obnovenia a zabezpečiť, aby model pred vykonaním prvej operácie obnovenia v službe neobmedzil limity veľkosti tým, že povolíte formát úložiska pre veľké modely. Ďalšie informácie nájdete v téme Veľké modely v službe Power BI Premium.

Dôležité

Keď aplikácia Power BI Desktop publikuje model do služby, daný súbor .pbix už nie je možné stiahnuť späť.

Obnoviť

Po publikovaní do služby vykonáte v modeli počiatočnú operáciu obnovenia. Toto obnovenie by malo byť individuálne (manuálne) obnovenie, aby ste mohli monitorovať priebeh. Dokončenie počiatočného obnovenia môže chvíľu trvať. Musia sa vytvoriť oblasti, načítané historické údaje, objekty, ako sú vzťahy a hierarchie vytvorené alebo obnovené, a vypočítané objekty sa prepočítavajú.

Následné operácie obnovenia, buď individuálne, alebo plánované, sú oveľa rýchlejšie, pretože sa obnovia iba oblasti prírastkového obnovenia. Iné operácie spracovania musia ešte nastať, napríklad zlúčenie oblastí a prepočítanie, ale zvyčajne to trvá oveľa menej času ako počiatočné obnovenie.

Automatické obnovenie zostavy

V prípade zostáv, ktoré používajú model s politikou prírastkového obnovenia na získanie najnovších údajov v reálnom čase pomocou režimu DirectQuery, je vhodné povoliť automatické obnovenie strany v pevnom intervale alebo na základe zisťovania zmien, aby zostavy mohli bez meškania obsahovať najnovšie údaje. Ďalšie informácie nájdete v téme Automatické obnovenie strany v službe Power BI.

Rozšírené prírastkové obnovenie

Ak je váš model v kapacite Premium s povoleným koncovým bodom XMLA, prírastkové obnovenie je možné ďalej rozšíriť pre pokročilé scenáre. Môžete napríklad použiť aplikáciu SQL Server Management Studio na zobrazenie a spravovanie oblastí, spustenie počiatočnej operácie obnovenia alebo obnovenie spätne zastaraných historických oblastí. Ďalšie informácie nájdete v téme Rozšírené prírastkové obnovenie s koncovým bodom XMLA.

Komunita

Power BI je pulzujúca komunita, v ktorej poslanci, profesionáli v oblasti BI a rovesníci zdieľajú odborné znalosti v diskusných skupinách, videách, blogoch a ďalších. Pri učení o prírastkových obnoveniach nájdete v týchto zdrojoch: