Analitika360

Inkrementinis atnaujinimas Power BI: kaip jį nustatyti

Inkrementinis atnaujinimas (angl. incremental refresh) leidžia Power BI kiekvieną kartą įkelti tik naujus ir pasikeitusius duomenis, o ne perskaičiuoti visą lentelę nuo pirmo įrašo. Kai pardavimų, pirkimų ar didžiosios knygos operacijų lentelė auga milijonais eilučių, būtent šis nustatymas lemia, ar ataskaita atsinaujina per kelias minutes, ar stringa pusvalandį ir baigiasi klaida. Žemiau rasite, kaip mechanizmas veikia, ko reikia prieš pradedant, nustatymą žingsnis po žingsnio ir klaidas, kurias dažniausiai matome diegdami ataskaitas iš apskaitos sistemų.

Trumpai

  • Inkrementinis atnaujinimas padalija lentelę į laikotarpių dalis (particijas): senieji duomenys lieka nepaliesti, atnaujinamas tik naujausias langas.
  • Jam reikia dviejų Power Query parametrų, pavadintų tiksliai RangeStart ir RangeEnd, ir datos stulpelio, pagal kurį filtruojama.
  • Funkcija veikia su Power BI Pro, Premium per user, Premium ir Embedded licencijomis, todėl brangios talpos nebūtina.
  • Didžiausia rizika: nutrūkęs užklausų suliejimas (query folding), dėl kurio Power BI vis tiek parsisiunčia visus duomenis.
  • Pirmasis atnaujinimas paslaugoje užtrunka ilgiausiai, vėlesni būna gerokai greitesni.

Turinys

Kaip veikia inkrementinis atnaujinimas

Įprastas suplanuotas atnaujinimas kiekvieną kartą ištrina lentelės duomenis ir įkelia juos iš naujo. Mažam modeliui tai netrukdo. Tačiau, kaip nurodo Microsoft dokumentacija apie inkrementinį atnaujinimą, kai lentelėje yra dešimtys milijonų eilučių ar daugiau, toks atnaujinimas gali trukti ilgai ir sunaudoti per daug išteklių.

Inkrementinis atnaujinimas šią problemą sprendžia politika (angl. policy), kurią apibrėžiate Power BI Desktop programoje. Kai ataskaita publikuojama, Power BI paslauga per pirmąjį atnaujinimą sukuria dviejų tipų particijas:

  1. Istorines particijas: ankstesnių laikotarpių duomenys, kurie nebesikeičia ir nebeatnaujinami.
  2. Atnaujinamas particijas: naujausias laikotarpis, pavyzdžiui, paskutinės 30 dienų, kurios perskaičiuojamos per kiekvieną atnaujinimą.

Pasirinktinai galima pridėti ir realaus laiko DirectQuery particiją, tačiau ši galimybė skirta tik Premium aplinkai.

KriterijusPilnas atnaujinimasInkrementinis atnaujinimas
Kokie duomenys įkeliamiVisa lentelė kiekvieną kartąTik naujausias laikotarpio langas
Apkrova duomenų šaltiniuiDidelė, auga kartu su istorijaMaža ir stabili
Atnaujinimo trukmėIlgėja kiekvieną mėnesįIšlieka panaši
Nustatymo sudėtingumasJokio papildomo darboParametrai, filtras ir politika
Kada tinkaMažos lentelės, žinynaiDidelės operacijų (faktų) lentelės

Svarbu suprasti ir ribas. Pasak Microsoft, net ir su inkrementiniu atnaujinimu atnaujinimo operacijoms galioja tie patys dviejų ir penkių valandų laiko limitai, nebent jos vykdomos per XMLA galinį tašką. Gerai sudaryta politika ne tik sutrumpina atnaujinimą, bet ir padeda nelaikyti modelyje nereikalingos istorijos.

Ko reikia prieš pradedant

Prieš atidarydami Power Query, patikrinkite keturis dalykus. Jei bent vienas neišpildytas, nustatymai bus išsaugoti, bet laukiamo efekto nebus.

Tinkama licencija

Pagal Microsoft nurodytus palaikomus planus, inkrementinis atnaujinimas palaikomas Power BI Premium, Premium per user, Power BI Pro ir Power BI Embedded modeliams. Daugumai mažų ir vidutinių įmonių užtenka Pro licencijos. Realaus laiko DirectQuery particija ir kai kurios pažangios galimybės lieka Premium aplinkai.

Datos stulpelis

Lentelėje turi būti datos stulpelis, pagal kurį bus skaidomi duomenys: dažniausiai tai dokumento, operacijos ar užsakymo data. Jis gali būti date/time arba sveikojo skaičiaus tipo. Jei data saugoma kaip skaičius formatu yyyymmdd (pvz., 20261022), Microsoft rekomenduoja sukurti funkciją, kuri RangeStart ir RangeEnd reikšmes paverčia tokiu pat skaičiumi.

Šaltinis, palaikantis užklausų suliejimą

Geriausiai inkrementinis atnaujinimas veikia su reliacinėmis duomenų bazėmis, pavyzdžiui, SQL Server. Filtras pagal RangeStart ir RangeEnd turi būti perduotas pačiam šaltiniui kaip jo užklausos dalis. Microsoft nurodo, kad funkciją galima pritaikyti ir Excel failams aplanke, failams SharePoint ar RSS sklaidos kanalams, tačiau tai pažangūs scenarijai, reikalaujantys papildomo pritaikymo ir testavimo.

Prieiga prie vietinių duomenų

Jei apskaitos duomenų bazė yra įmonės serveryje, Power BI paslaugai reikės duomenų šliuzo. Be jo debesis neturės kelio iki duomenų, o atnaujinimas apskritai neįvyks.

Nustatymas žingsnis po žingsnio

Toliau aprašyta seka atitinka oficialų Microsoft konfigūravimo vadovą.

  1. Sukurkite parametrus. Power BI Desktop pasirinkite Transform data, tada Manage Parameters → New Parameter. Sukurkite parametrą RangeStart, tipas Date/Time, ir antrą parametrą RangeEnd. Pavadinimai skiria didžiąsias ir mažąsias raides, todėl „rangestart“ nebus atpažintas.
  2. Nurodykite nedidelį pradinį intervalą. Desktop programoje šios reikšmės naudojamos tik tam, kad į modelį būtų įkeltas mažas duomenų kiekis, pavyzdžiui, nuo 2026 m. spalio 1 d. iki spalio 22 d. Publikavus ataskaitą, politika šias reikšmes perima ir pakeičia.
  3. Pritaikykite filtrą datos stulpeliui. Stulpelio filtre pasirinkite Custom Filter: data is after or equal to RangeStart ir is before RangeEnd. Viena lygybė turi būti griežta. Jei abiejose pusėse paliksite „mažiau arba lygu“, įrašas, kurio data sutampa su riba, pateks į dvi particijas ir bus dubliuojamas.
  4. Uždarykite Power Query. Spauskite Close & Apply. Modelis įkels tik pasirinkto intervalo duomenis.
  5. Apibrėžkite politiką. Dešiniuoju pelės mygtuku spustelėkite lentelę ir pasirinkite Incremental refresh. Nurodykite, kiek istorijos saugoti (pvz., 5 metus) ir kokį langą atnaujinti (pvz., 30 dienų). Papildomai galite įjungti:
    • Only refresh complete days: neįkeliamos dar nepasibaigusios dienos;
    • Detect data changes: atnaujinamos tik tos dienos, kuriose šaltinyje pasikeitė duomenys. Tam reikia atskiro pakeitimo datos stulpelio, kuris negali būti tas pats, pagal kurį skaidoma lentelė.
  6. Publikuokite ir atlikite pirmąjį atnaujinimą. Pirmasis atnaujinimas paslaugoje įkelia visą saugomos istorijos laikotarpį, todėl gali trukti gana ilgai. Vėlesni atnaujinimai, rankiniai ar suplanuoti, paprastai vyksta daug greičiau.

Galiausiai sukonfigūruokite grafiką: kiek kartų per dieną ir kokiu laiku turi būti atnaujinami duomenys. Limitus ir nustatymus pagal licencijas aptarėme straipsnyje apie Power BI suplanuotą atnaujinimą.

Dažniausios klaidos ir kaip jų išvengti

Nutrūkęs užklausų suliejimas. Microsoft pabrėžia, kad filtras pagal RangeStart ir RangeEnd turi susilieti su pradine šaltinio užklausa. Jei prieš filtrą įterpiate žingsnį, kurio šaltinis negali išversti į savo užklausų kalbą (pavyzdžiui, sudėtingą stulpelio transformaciją), Power BI parsisiunčia visą lentelę ir filtruoja ją pats. Patikrinti paprasta: Power Query dešiniuoju pelės mygtuku spustelėkite filtro žingsnį ir žiūrėkite, ar aktyvi parinktis View Native Query.

Penkios inkrementinio atnaujinimo klaidos

Netinkamas datos stulpelis. Skaidymui rinkitės datą, kuri po įrašo sukūrimo nebesikeičia. Jei dokumentas gali būti perkeltas į kitą laikotarpį, apsvarstykite platesnį atnaujinimo langą, pavyzdžiui, du ar tris mėnesius vietoj kelių dienų.

Inkrementinis atnaujinimas žinynams. Klientų, prekių ar padalinių sąrašai paprastai nedideli, o jų įrašai keičiasi bet kada. Juos dažniausiai paprasčiau atnaujinti pilnai, o inkrementinį atnaujinimą taikyti tik didelėms operacijų lentelėms.

Per siauras langas apskaitoje. Buhalterinėje apskaitoje praėjusio mėnesio dokumentai dažnai koreguojami dar kelias savaites. Jei atnaujinate tik paskutines 7 dienas, vėlesni pataisymai į ataskaitą nepateks. Atnaujinimo langas turi apimti bent tą laikotarpį, kurį jūsų įmonėje dar galima keisti iki mėnesio uždarymo.

Lūkestis, kad laiko limitai išnyks. Inkrementinis atnaujinimas sumažina apkrovą, bet nepanaikina limitų. Jei pirmasis pilnas įkėlimas į juos netelpa, tenka mažinti saugomą istoriją arba įkelti duomenis dalimis.

Mūsų požiūris: inkrementinis atnaujinimas apskaitos duomenims

Diegdami Power BI ataskaitas iš Rivilė ir Finvalda, matome, kad inkrementinis atnaujinimas dažnai laikomas technine smulkmena, kol modelis pradeda atsinaujinti per lėtai. Mūsų patirtimi, tai architektūros klausimas, kurį verta spręsti nuo pirmos dienos.

Apskaitos duomenys turi savo specifiką. Operacijų daugėja kiekvieną dieną, o praėjusių laikotarpių dokumentai vis dar koreguojami iki mėnesio ar metų uždarymo. Todėl atnaujinimo langą derinkite su apskaitos procesu, o ne vien su techniniu patogumu. Kai vienas Power BI modelis apjungia apskaitos duomenis su SharePoint, Excel ar CRM šaltiniais, kiekvienai lentelei verta atskirai apsvarstyti, ar ją atnaujinti inkrementiškai, ar pilnai.

Svarbiausia, kad vadovas ar finansų direktorius ryte atsidarytų ataskaitą ir matytų teisingus pajamų, sąnaudų ir pelno skaičius, nesvarstydamas, kokiu būdu jie atsinaujino. Būtent todėl mūsų ataskaitos atsinaujina automatiškai, be papildomo vartotojo darbo.

— Analitika360

Paruošti Power BI paketai Rivilė ir Finvalda naudotojams

Jei nenorite patys konfigūruoti parametrų, filtrų ir atnaujinimo politikos, Analitika360 siūlo paruoštus ataskaitų rinkinius su automatiniu duomenų atnaujinimu. Rivilė Basic ir Finvalda Basic planai kainuoja 59 € per mėnesį, Rivilė PRO ir Finvalda PRO planai kainuoja 89 € per mėnesį. Specifiniams poreikiams, pavyzdžiui, papildomų šaltinių integracijai, atliekame individualius projektus už 70 € per valandą. Visus planus palyginti galite verslo analitikos kainų puslapyje, o daugiau apie tai, kaip veikia automatinis ataskaitų atnaujinimas, rasite atskirame straipsnyje.

Paruošti Power BI paketai Rivilė ir Finvalda naudotojams — overview diagram

Dažniausiai užduodami klausimai

Ar inkrementiniam atnaujinimui būtina Premium licencija?

Ne. Microsoft nurodo, kad funkcija palaikoma Power BI Pro, Premium per user, Premium ir Embedded modeliams. Premium reikalinga tik kai kurioms papildomoms galimybėms, pavyzdžiui, realaus laiko DirectQuery particijai.

Kuo skiriasi incremental load ir incremental refresh?

„Incremental load“ yra bendras duomenų inžinerijos terminas, reiškiantis tik naujų įrašų įkėlimą į bet kokią sistemą, pavyzdžiui, į duomenų saugyklą per ETL procesą. „Incremental refresh“ yra konkreti Power BI funkcija, kuri šį principą įgyvendina modelio lygiu per RangeStart ir RangeEnd parametrus bei particijas.

Ar galima naudoti inkrementinį atnaujinimą su Excel failais?

Galima, bet tai pažangus scenarijus. Microsoft nurodo, kad su failais aplanke ar SharePoint reikia filtruoti pačius failus pagal datą, nes Excel nepalaiko užklausų suliejimo taip, kaip duomenų bazė. Tokį sprendimą verta kruopščiai išbandyti prieš naudojant gamybinėje aplinkoje.

Kodėl po nustatymo atnaujinimas negreitėja?

Dažniausia priežastis yra nutrūkęs užklausų suliejimas: Power BI vis tiek parsisiunčia visą lentelę. Patikrinkite, ar filtro žingsniui aktyvi parinktis View Native Query, ir perkelkite transformacijas po filtro arba į patį šaltinį.

Šaltiniai

Rekomendacijos

Taip pat skaitykite

Norite tokių ataskaitų savo versle?

Analitika360 paruošia Power BI ataskaitas iš jūsų apskaitos sistemos duomenų — Rivilė, Finvalda ar R-Keeper. Ataskaitos atsinaujina automatiškai, nuo 59 Eur/mėn.

Kainos ir planai
Analitika360 klientų sėkmės istorijos

Duomenys, kurie padeda priimti sprendimus

Sužinokite, kaip įmonės, tokios kaip jūsų, pritaikė Analitika360 ataskaitas savo veikloje naudodami Power BI.

“
Gavome standartinį R-Keeper ataskaitų paketą ir dar pritaikė pagal mūsų poreikius. Viskas veikia!
TB
Tomas B.restorano savininkas
“
20 paruoštų ataskaitų – nereikėjo galvoti, ko prašyti. Finvaldos duomenys pagaliau matomi vizualiai. Rekomenduoju.
IM
Ingrida M.buhalterė
“
Labai patiko, kad Analitika360 turi paruoštą 20 ataskaitų paketą Rivile naudotojams – nereikėjo nuo nulio aiškintis, ko mums reikia. Startavome greitai, o vėliau dar pritaikė kelias ataskaitas pagal mūsų gamybos specifiką. Sutaupėme ir laiko, ir pinigų.
MK
Marius K.finansų vadovas
“
Turime kelių įmonių grupę su Rivile, ir konsoliduotos ataskaitos visada buvo galvos skausmas. Analitika360 pasiūlė standartinį 20 ataskaitų paketą kaip pagrindą, o tada pritaikė jį mūsų grupės struktūrai – dabar matome viską viename Power BI modelyje, atsinaujina automatiškai.
GJ
Giedrė Jankauskaitėfinansininkė
“
Valdome 6 restoranus su R-Keeper ir ilgai ieškojome būdo matyti palyginamus rezultatus tarp objektų. Standartinis 20 ataskaitų paketas padengė didžiąją dalį poreikių, o vėliau buvo pritaikytos individualios ataskaitos mūsų tinklui.
AŠ
Andrius Š.restoranų tinklo direktorius
“
Kreipėmės po rekomendacijos ir iš karto maloniai nustebino paruoštas 20 ataskaitų standartas Finvalda naudotojams. Vadovybė dabar kas pirmadienį gauna aiškią finansinę nuotrauką, o aš nebeleidžiu dienų eksportuojant duomenis į Excel.
RP
Rasa Petrauskienėapskaitos vadovė
“
Naudojame Rivile, bet niekada neturėjome laiko kurti ataskaitų nuo nulio. 20 ataskaitų paketas buvo tiesiog tai, ko reikėjo – įsidiegėme per savaitę.
VP
Vaidas P.prekybos tinklo vadovas
“
Turime 4 kavines su R-Keeper sistema ir ilgai dirbome „pagal nuojautą“. Analitika360 ataskaitos parodė dalykų, kurių anksčiau net nepastebėdavome. Dabar sprendimus priimame remdamiesi duomenimis, ne spėliojimais.
LK
Laura Kazlauskienėkavinių tinklo finansų vadovė