Teilen über


Verwenden von Fabric-Variablenbibliotheken in Dataflow Gen2 (Vorschau)

Hinweis

Dieses Feature befindet sich derzeit in der Vorschau und ist nur für Dataflow Gen2 mit CI/CD verfügbar. Weitere Informationen darüber, wie Sie diese Funktion in Szenarien der fortlaufenden Integration und Bereitstellung (CI/CD) nutzen können, finden Sie im Artikel über CI/CD- und ALM-Lösungsarchitekturen für Dataflow Gen2 und in der End-to-End-Anleitung zu Variablenverweise bei einem Dataflow.

Fabric-Variablenbibliotheken bieten eine zentrale Möglichkeit zum Verwalten von Konfigurationswerten über Microsoft Fabric-Workloads hinweg. Mit der neuen Integration in Dataflow Gen2 (Vorschau) können Sie direkt in Ihrem Dataflow auf diese Variablen verweisen und das dynamische Verhalten in umgebungenübergreifenden Umgebungen ermöglichen und CI/CD-Workflows vereinfachen.

Voraussetzungen

Um Fabric-Variablenbibliotheken in Dataflow Gen2 zu verwenden, stellen Sie Folgendes sicher:

Verwenden von Fabric-Variablenbibliotheken in Dataflow Gen2

Innerhalb der Dataflow Gen2 können Sie mithilfe einer der folgenden Funktionen auf eine Variable verweisen:

Der erwartete Bezeichner, der an eine dieser beiden Funktionen übergeben werden muss, muss dem Format folgen:

$(/**/LibraryName/VariableName)

Die folgenden Beispiele für beide Funktionen im Szenario, in dem Sie über eine Variablebibliothek mit dem Namen "Meine Bibliothek " und eine Variable der Typzeichenfolge mit dem Namen "Meine Variable" verfügen:

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

Wenn Sie diese Funktion auf ein Abfrageskript anwenden, nehmen wir die folgende Beispielabfrage an, die eine Verbindung mit einer Tabelle mit dem Namen "Table1 " von einer bestimmten LakehouseId und WorkspaceId mithilfe des Fabric Lakehouse-Connectors herstellt.

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"

Sie planen, die übergebenen Werte für workspaceId und lakehouseId zu ersetzen, sodass diese in CI/CD-Szenarien dynamisch auf das richtige Element in der richtigen Phase verweisen.

Zu diesem Zweck haben Sie im selben Arbeitsbereich, in dem sich ihr Datenfluss befindet, auch eine Variablebibliothek namens "Meine Bibliothek ", die die folgenden Variablen enthält, auf die Sie im Datenfluss verweisen möchten:

Variablenname Variablentyp Standardwert
Arbeitsbereichs-ID String a8a1bffa-7eea-49dc-a1d2-6281c1d031f1
Lakehouse-ID String 37dc8a41-dea9-465d-b528-3e95043b2356

Mit diesen Informationen können Sie Ihr Abfrageskript ändern, um die Werte zu ersetzen, die zum nächsten Skript führen:

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"

Wenn Sie den Datenfluss mit dem geänderten Skript ausführen, wird er auf den Wert der Variablen aufgelöst und der richtige, durch die Variable definierte Datentyp festgelegt. Dies verweist auf einen anderen Arbeitsbereich und Lakehouse, je nachdem, welche Werte zum Zeitpunkt der Ausführung des Dataflows verfügbar sind.

Vorsicht

Der Power Query-Editor unterstützt derzeit die Auswertung von Variablen nicht. Es wird empfohlen, die Variable.ValueOrDefault-Funktion zu verwenden, um sicherzustellen, dass die Erstellungsoberfläche den Standardwert für die Prototyperstellung verwendet.

Die Verwendung eines Standardwerts über Variable.ValueOrDefault stellt sicher, dass Ihre Formel auch dann aufgelöst wird, wenn Sie Ihre Lösung in eine andere Umgebung kopieren oder verschieben, die nicht über die Referenzvariablenbibliothek verfügt. Zur Laufzeit wird die Variable in den richtigen Wert aufgelöst.

Überlegungen und Einschränkungen

In der folgenden Liste werden wichtige Einschränkungen und Verhaltensweisen beschrieben, die Bei der Verwendung von Fabric-Variablenbibliotheken mit Dataflow Gen2 beachtet werden müssen. Diese Einschränkungen wirken sich darauf aus, wie Variablen während des Entwurfs und der Laufzeit referenziert, ausgewertet und angewendet werden.

  • Arbeitsbereich: Variable Bibliotheken müssen sich im gleichen Arbeitsbereich wie Dataflow Gen2 mit CI/CD befinden.

  • Referenzspeicherort: Variablen können nur in der Mashup.pq-Datei eines Dataflow Gen2 mit CI/CD verwendet werden.

  • Laufzeitverhalten: Variablenwerte werden zu Beginn eines Ausführungsvorgangs abgerufen und während des gesamten Vorgangs beibehalten. Änderungen, die während einer Datenflussausführung an einer Bibliothek vorgenommen werden, halten nicht an oder wirken sich nicht auf die Ausführung aus.

  • Unterstützung des Power Query-Editors: Keine aktuelle Unterstützung zum Auflösen oder Auswerten von Variablen im Power Query-Editor.

  • Verwenden eines Standardwerts: Stellen Sie bei Verwendung eines Standardwerts über die Funktion Variable.ValueOrDefault sicher, dass der Datentyp des Standardwerts dem Datentyp der Variablen entspricht, auf die verwiesen wird.

  • Unterstützte Typen: Nur Variablen von Basistypen werden unterstützt (boolean, datetime, , guid, integernumberund string).

  • Feste Verbindungen: Variablen können Verbindungsinformationen nicht ändern. Verbindungen bleiben mit den Konfigurationen des Autoren-Ressourcenpfads fixiert.

  • Risiko des Überschreibens: Benutzer mit Zugriff auf die Bearbeitung von Variablenbibliotheken können Variablenwerte überschreiben, was sich möglicherweise auf den Ausgabewert des Datenflusses auswirkt.

  • Schemazuordnung: Variablen können keine Zielschemazuordnungen ändern; Zuordnungen folgen dem erstellten Setup.

  • Sichtbarkeit der Linien: Linienansichten zeigen keine Verknüpfungen zwischen Dataflow Gen2 und den Variablenbibliotheken an, auf die verwiesen wird.

  • Variabler Grenzwert: Datenflüsse können nur maximal 50 Variablen abrufen.

  • SPN-Unterstützung: Datenflüsse können nur erfolgreich aktualisiert werden, wenn die Aktualisierung keinen SPN für die Authentifizierung verwendet.