Partager via


Utiliser des bibliothèques de variables Fabric dans Dataflow Gen2 (préversion)

Note

Cette fonctionnalité est actuellement en préversion et disponible uniquement pour Dataflow Gen2 avec CI/CD. Pour plus d’informations sur l’utilisation de cette fonctionnalité dans les scénarios d’intégration continue/de déploiement continu (CI/CD), veillez à lire l’article sur les architectures de solution CI/CD et ALM pour Dataflow Gen2 et le didacticiel de bout en bout sur les références de variables dans un dataflow.

Les bibliothèques de variables fabric offrent un moyen centralisé de gérer les valeurs de configuration dans les charges de travail Microsoft Fabric. Avec la nouvelle intégration dans Dataflow Gen2 (préversion), vous pouvez référencer ces variables directement dans votre flux de données, en activant le comportement dynamique entre les environnements et en simplifiant les flux de travail CI/CD.

Prerequisites

Pour utiliser des bibliothèques de variables Fabric dans Dataflow Gen2, vérifiez les éléments suivants :

Comment utiliser des bibliothèques de variables Fabric dans Dataflow Gen2

Dans votre Dataflow Gen2, vous pouvez référencer une variable à l’aide de l’une des fonctions suivantes :

L’identificateur attendu qui doit être passé à l’une de ces deux fonctions doit suivre le format suivant :

$(/**/LibraryName/VariableName)

Les exemples suivants pour les deux fonctions dans le scénario où vous disposez d’une bibliothèque de variables nommée My Library et d’une variable de la chaîne de type nommée My Variable :

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

En appliquant cette fonction à un script de requête, prenons l’exemple de requête suivant qui se connecte à une table nommée Table1 à partir d’un LakehouseId et d’WorkspaceId spécifiques à l’aide du connecteur 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"

Vous prévoyez de remplacer les valeurs utilisées pour les workspaceId et lakehouseId afin que, dans les scénarios de CI/CD, elles pointent dynamiquement vers l'élément approprié dans la phase appropriée.

À cette fin, dans le même espace de travail que celui où se trouve votre dataflow, vous disposez également d’une bibliothèque de variables nommée My Library qui contient les variables suivantes que vous envisagez de référencer dans votre dataflow :

Nom de la variable Type de variable Ensemble de valeurs par défaut
ID de l’espace de travail Chaîne a8a1bffa-7eea-49dc-a1d2-6281c1d031f1
Identifiant du Lakehouse Chaîne 37dc8a41-dea9-465d-b528-3e95043b2356

Avec ces informations, vous pouvez modifier votre script de requête pour remplacer les valeurs qui entraînent le script suivant :

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"

Lorsque vous exécutez le dataflow avec le script modifié, il se résout à la valeur de la variable et au type de données correct défini par la variable. Cela pointe vers un espace de travail différent et Lakehouse en fonction des valeurs disponibles au moment de l’exécution de votre dataflow.

Caution

L’éditeur Power Query ne prend actuellement pas en charge l’évaluation des variables. Nous vous recommandons d’utiliser la fonction Variable.ValueOrDefault pour vous assurer que votre expérience de création utilise la valeur par défaut pour le prototypage.

L’utilisation d’une valeur par défaut via Variable.ValueOrDefault garantit que votre formule est résolue même lorsque vous copiez ou déplacez votre solution vers un autre environnement qui n’a pas la bibliothèque de variables de référence. Au moment de l’exécution, la variable est résolue en valeur correcte.

Considérations et limitations

La liste suivante décrit les contraintes et comportements importants à garder à l’esprit lors de l’utilisation de bibliothèques de variables Fabric avec Dataflow Gen2. Ces limitations affectent la façon dont les variables sont référencées, évaluées et appliquées pendant la conception et l’exécution.

  • Étendue de l’espace de travail : les bibliothèques de variables doivent résider dans le même espace de travail que dataflow Gen2 avec CI/CD.

  • Emplacement de référence : les variables peuvent uniquement être utilisées dans le fichier mashup.pq d’un Dataflow Gen2 avec CI/CD.

  • Comportement d’exécution : les valeurs des variables sont récupérées au début d’une opération d’exécution et conservées tout au long de l’opération. Les modifications qui se produisent dans une bibliothèque pendant une exécution dataflow ne s’arrêtent pas ou n’affectent pas son exécution.

  • Prise en charge de l’éditeur Power Query : pas de prise en charge actuelle pour résoudre ou évaluer des variables dans l’éditeur Power Query.

  • Utilisation d’une valeur par défaut : lors de l’utilisation d’une valeur par défaut via la fonction Variable.ValueOrDefault, assurez-vous que le type de données de la valeur par défaut correspond au type de données de la variable référencée.

  • Types pris en charge : seules les variables de base sont prises en charge (boolean, datetime, guid, integer, numberet string).

  • Connexions fixes : les variables ne peuvent pas modifier les informations de connexion. Les connexions restent attachées aux configurations de chemin des ressources autorisées.

  • Risque de remplacement : les utilisateurs ayant accès pour modifier les bibliothèques de variables peuvent remplacer les valeurs des variables, ce qui pourrait affecter la sortie du flux de données.

  • Mappage de schéma : les variables ne peuvent pas modifier les mappages de schéma de destination ; les mappages suivent la configuration établie.

  • Visibilité de la traçabilité : les vues de traçabilité n’affichent pas les liens entre Dataflow Gen2 et les bibliothèques de variables qu'elles référencent.

  • Limite de variable : les dataflows ne peuvent récupérer qu’un maximum de 50 variables.

  • Prise en charge du SPN : les dataflows peuvent uniquement s’actualiser correctement si l’actualisation n’utilise pas de SPN pour l’authentification.