Condividi tramite


Usare librerie di variabili di Fabric in Dataflow Gen2 (anteprima)

Annotazioni

Questa funzionalità è attualmente disponibile in anteprima e disponibile solo per Dataflow Gen2 con CI/CD. Per altre informazioni su come sfruttare questa funzionalità negli scenari di integrazione continua/distribuzione continua (CI/CD), leggere l'articolo sulle architetture di soluzioni CI/CD e ALM per Dataflow Gen2 e l'esercitazione end-to-end sui riferimenti alle variabili in un flusso di dati.

Le librerie di variabili di Fabric offrono un modo centralizzato per gestire i valori di configurazione nei carichi di lavoro di Microsoft Fabric. Con la nuova integrazione in Dataflow Gen2 (anteprima), è possibile fare riferimento a queste variabili direttamente nel flusso di dati, abilitando il comportamento dinamico in ambienti e semplificando i flussi di lavoro CI/CD.

Prerequisiti

Per usare le librerie di variabili di Fabric in Dataflow Gen2, verificare quanto segue:

Come usare le librerie di variabili di Fabric in Dataflow Gen2

All'interno di Dataflow Gen2 è possibile fare riferimento a una variabile usando una delle funzioni seguenti:

L'identificatore previsto che deve essere passato a una di queste due funzioni deve seguire il formato di:

$(/**/LibraryName/VariableName)

Gli esempi seguenti per entrambe le funzioni nello scenario in cui è disponibile una libreria di variabili denominata My Library e una variabile della stringa di tipo denominata My Variable:

Variable.ValueOrDefault("$(/**/My Library/My Variable)", "Sample")
Variable.Value("$(/**/My Library/My Variable)")

Applicando questa funzione a uno script di query, prendiamo come esempio la seguente query che si connette a una tabella denominata Table1 da uno specifico LakehouseId e WorkspaceId utilizzando il connettore Fabric Lakehouse.

let
  Source = Lakehouse.Contents([]),
  #"Navigation 1" = Source{[workspaceId = "cfafbeb1-8037-4d0c-896e-a46fb27ff229"]}[Data],
  #"Navigation 2" = #"Navigation 1"{[lakehouseId = "5b218778-e7a5-4d73-8187-f10824047715"]}[Data],
  #"Navigation 3" = #"Navigation 2"{[Id = "Table1", ItemKind = "Table"]}[Data]
in
  #"Navigation 3"

Si prevede di sostituire i valori passati per workspaceId e lakehouseId in modo che negli scenari CI/CD punti dinamicamente all'elemento corretto nella fase corretta.

A tale scopo, nella stessa area di lavoro in cui si trova il flusso di dati è disponibile anche una libreria di variabili denominata Libreria personale che contiene le variabili seguenti a cui si prevede di fare riferimento nel flusso di dati:

Nome variabile Tipo di variabile Set di valori predefinito
ID area di lavoro String a8a1bffa-7eea-49dc-a1d2-6281c1d031f1
ID del Lakehouse String 37dc8a41-dea9-465d-b528-3e95043b2356

Con queste informazioni, è possibile modificare lo script di query per sostituire i valori risultanti nello script successivo:

let
  Source = Lakehouse.Contents([]),
  #"Navigation 1" = Source{[workspaceId = Variable.ValueOrDefault("$(/**/My Library/Workspace ID)",  "cfafbeb1-8037-4d0c-896e-a46fb27ff229")]}[Data],
  #"Navigation 2" = #"Navigation 1"{[lakehouseId =  Variable.ValueOrDefault("$(/**/My Library/Lakehouse ID)","5b218778-e7a5-4d73-8187-f10824047715")]}[Data],
  #"Navigation 3" = #"Navigation 2"{[Id = "Table1", ItemKind = "Table"]}[Data]
in
  #"Navigation 3"

Quando si esegue il flusso di dati con lo script modificato, si risolve al valore della variabile e al tipo di dati corretto definito dalla variabile. A seconda dei valori disponibili al momento dell'esecuzione del flusso di dati, si fa riferimento a un diverso spazio di lavoro o a Lakehouse.

Attenzione

L'editor di Power Query attualmente non supporta la valutazione delle variabili. È consigliabile usare la funzione Variable.ValueOrDefault per garantire che l'esperienza di creazione usi il valore predefinito per la creazione di prototipi.

L'uso di un valore predefinito tramite Variable.ValueOrDefault garantisce che la formula si risolva anche quando si copia o si sposta la soluzione in un altro ambiente che non dispone della libreria di variabili di riferimento. In fase di esecuzione, la variabile viene risolta nel valore corretto.

Considerazioni e limitazioni

L'elenco seguente illustra i vincoli e i comportamenti importanti da tenere presenti quando si usano librerie di variabili di Fabric con Dataflow Gen2. Queste limitazioni influiscono sulla modalità di riferimento, valutazione e applicazione delle variabili durante la progettazione e il runtime.

  • Ambito dell'area di lavoro: le librerie variabili devono trovarsi nella stessa area di lavoro di Dataflow Gen2 con CI/CD.

  • Percorso di riferimento: le variabili possono essere usate solo all'interno del file mashup.pq di un dataflow Gen2 con CI/CD.

  • Comportamento di runtime: i valori delle variabili vengono recuperati all'inizio di un'operazione di esecuzione e resi persistenti durante l'operazione. Le modifiche apportate a una libreria durante un'esecuzione del flusso di dati non vengono interrotte o ne influiscono sull'esecuzione.

  • Supporto dell'editor di Power Query: nessun supporto corrente per risolvere o valutare le variabili all'interno dell'editor di Power Query.

  • Uso di un valore predefinito: quando si usa un valore predefinito tramite la funzione Variable.ValueOrDefault, assicurarsi che il tipo di dati del valore predefinito corrisponda al tipo di dati della variabile a cui si fa riferimento.

  • Tipi supportati: sono supportate solo le variabili dei tipi di base (boolean, datetime, guidinteger, number, e string).

  • Connessioni fisse: le variabili non possono modificare le informazioni di connessione. Le connessioni rimangono ancorate alle configurazioni del percorso delle risorse definite.

  • Rischio di override: gli utenti con accesso per modificare le librerie di variabili possono eseguire l'override dei valori delle variabili, che potrebbero influire sull'output del flusso di dati.

  • Mappatura degli schemi: le variabili non possono modificare le mappature dello schema di destinazione; le mappature seguono la configurazione creata.

  • Visibilità della derivazione: le visualizzazioni di derivazione non mostrano collegamenti tra Dataflow Gen2 e le librerie di variabili a cui fa riferimento.

  • Limite di variabili: i flussi di dati possono recuperare solo un massimo di 50 variabili.

  • Supporto SPN: i flussi di dati possono essere aggiornati correttamente solo se l'aggiornamento non usa un nome SPN per l'autenticazione.