Table.Buffer
Помещает таблицу в буфер памяти, изолируя ее из внешних изменений во время оценки.
Syntax
Table.Buffer(
table as table,
optional options as record
) as table
Remarks
Помещает таблицу в буфер памяти, изолируя ее от внешних изменений во время оценки. Буферизация неполная. Она обеспечивает оценку всех скалярных значений ячеек, но оставляет нескалярные значения (записи, списки, таблицы и т. д.) как есть.
Обратите внимание, что использование этой функции может привести к ускорению выполнения запросов. В некоторых случаях выполнение запросов может замедлиться из-за добавленных затрат на чтение всех данных и их сохранение в памяти, а также из-за того, что буферизация предотвращает последующее свертывание. Если данные не нужно помещать в буфер и вы хотите просто предотвратить последующее свертывание, воспользуйтесь Table.StopFolding
.
Examples
Example #1
Загрузка всех строк таблицы SQL в память, чтобы любые последующие операции больше не могли выполнять запросы к SQL Server.
let
Source = Sql.Database("SomeSQLServer", "MyDb"),
MyTable = Source{[Item="MyTable"]}[Data],
BufferMyTable = Table.Buffer(dbo_MyTable)
in
BufferMyTable
Result:
table
Category
Table.Other