Перейти к основному содержимому

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