Table.Buffer
Składnia
Table.Buffer(table as table, optional options as nullable record) as table
O nas
Buforuje tabelę w pamięci, izolując ją od zmian zewnętrznych podczas oceny. Buforowanie jest płytkie. Wymusza ocenę wszystkich wartości komórek skalarnych, ale pozostawia wartości nieskalarne (rekordy, listy, tabele itd.) as-is.
-
table
: tabela do buforowania w pamięci. -
options
: [Opcjonalnie] Można użyć następujących wartości opcji rejestrowania:-
BufferMode
: tryb buforu opisujący typ buforowania do wykonania. Ta opcja może być BufferMode.Eager lub BufferMode.Delayed.
-
Użycie tej funkcji może lub nie sprawi, że zapytania będą działać szybciej. W niektórych przypadkach może to sprawić, że zapytania będą działać wolniej ze względu na dodatkowy koszt odczytywania wszystkich danych i przechowywania ich w pamięci, a także fakt, że buforowanie uniemożliwia składanie podrzędne. Jeśli dane nie muszą być buforowane, ale chcesz tylko zapobiec zawijaniu w dół strumienia, zamiast tego użyj Table.StopFolding.
Przykład 1
Załaduj wszystkie wiersze tabeli SQL do pamięci, aby żadne operacje podrzędne nie mogły już wykonywać zapytań względem serwera SQL.
użycie
let
Source = Sql.Database("SomeSQLServer", "MyDb"),
MyTable = Source{[Item="MyTable"]}[Data],
BufferMyTable = Table.Buffer(MyTable)
in
BufferMyTable
Wyjście
table