Table.Buffer
Syntax
Table.Buffer(table as table, optional options as nullable record) as table
Informácie
Uloží tabuľku do medzipamäte, pričom ju izoluje od externých zmien počas hodnotenia. Vyrovnávacia pamäť je plytká. Vynucuje vyhodnocovanie všetkých hodnôt skalárnych buniek, ale zanecháva neskalárne hodnoty (záznamy, zoznamy, tabuľky atď.) tak, ako sú.
Používanie tejto funkcie môže, ale aj nemusí zrýchliť spúšťanie dotazov. V niektorých prípadoch to môže spomaliť spúšťanie vašich dotazov z dôvodu pridaných nákladov na čítanie všetkých údajov a ich uloženie do pamäte, ako aj skutočnosť, že ukladanie do medzipamäte bráni následnému postupnému posúvaniu. Ak údaje nemusia byť uložené do medzipamäte, ale chcete len zabrániť postupnému posúvaniu v smere toku prúdu, namiesto toho použite Table.StopFolding .
Príklad č. 1
Načítajte všetky riadky tabuľky SQL do pamäte, aby všetky následné operácie už nemohli dotazovať SQL server.
Použitie
let
Source = Sql.Database("SomeSQLServer", "MyDb"),
MyTable = Source{[Item="MyTable"]}[Data],
BufferMyTable = Table.Buffer(dbo_MyTable)
in
BufferMyTable
Výkon
table