Condividi tramite


Table.Buffer

Sintassi

Table.Buffer(table as table, optional options as nullable record) as table

Informazioni su

Memorizza una tabella nel buffer, isolandola da modifiche esterne durante la valutazione. Il buffering è superficiale. Forza la valutazione di qualsiasi valore di cella scalare, ma lascia invariati i valori non scalari (record, elenchi, tabelle e così via).

  • table: tabella da inserire nel buffer di memoria.
  • options: [Facoltativo] È possibile usare i valori dei record di opzioni seguenti:

L'uso di questa funzione potrebbe o meno rendere più veloci le query. In alcuni casi, le query possono essere eseguite più lentamente a causa del costo aggiuntivo della lettura di tutti i dati e della loro archiviazione in memoria, oltre al fatto che il buffering impedisce la compressione a valle. Se i dati non devono essere memorizzati nel buffer, ma si vuole invece impedire la piegatura a valle, usare Table.StopFolding.

Esempio 1

Caricare tutte le righe di una tabella SQL in memoria, in modo che tutte le operazioni downstream non siano più in grado di eseguire query su SQL Server.

Utilizzo

let
    Source = Sql.Database("SomeSQLServer", "MyDb"),
    MyTable = Source{[Item="MyTable"]}[Data],
    BufferMyTable = Table.Buffer(MyTable)
in
    BufferMyTable

Output

table