Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Hinweis
Dieser Artikel konzentriert sich auf eine Lösungsarchitektur von CI/CD- und ALM-Lösungsarchitekturen (Application Lifecycle Management) für Dataflow Gen2 , die auf dem Feature für den öffentlichen Parametermodus basiert und nur für Dataflow Gen2 mit CI/CD-Unterstützung gilt.
Mithilfe von Parametern in Fabric Dataflow Gen2 können Sie wiederverwendbare Eingaben definieren, die die Gestaltung eines Datenflusses bestimmen, und mit öffentlichen Parametern können diese Eingaben zur Laufzeit über Pipelines oder APIs festgelegt werden. Dadurch wird ein einzelner Dataflow hochflexibel und vielseitig, da Sie dieselbe Logik in vielen Szenarien einfach wiederverwenden können, indem Sie einfach verschiedene Werte übergeben und dynamische, automatisierte Workflows ermöglichen, ohne die Transformationen neu schreiben oder duplizieren zu müssen.
Dieses Lernprogramm führt Sie durch ein Beispiel, das Ihnen zeigt, wie Sie:
- Parametrisieren einer Quelle: Verwenden eines Lakehouse mit dem WideWorldImpoters-Beispieldatensatz als Quelle
- Parametrisieren der Logik: Verwenden der Eingabe-Widgets, die in der gesamten Dataflow-Oberfläche verfügbar sind
- Parameterisieren des Ziels: Verwenden eines Warehouse als Ziel
- Senden einer Ausführungsanforderung mit Parameterwerten: Übergeben von Parameterwerten über die Dataflow-Aktivitätserfahrung innerhalb einer Fabric-Pipeline
Hinweis
Die in diesem Artikel vorgestellten Konzepte sind universell für Dataflow Gen2 und gelten für andere Quellen und Ziele, die über die hier gezeigten hinausgehen.
Das Szenario
Der in diesem Szenario verwendete Datenfluss ist einfach, aber die beschriebenen Kernprinzipien gelten für alle Datentypen von Datenflüssen. Sie stellt eine Verbindung mit der Tabelle mit dem Namen dimension_city aus dem Beispieldatensatz "Wide World Importers" her, der in einem Lakehouse gespeichert ist. Sie filtert Zeilen, in denen die Spalte "SalesTerritory" "Südost" entspricht, und lädt das Ergebnis in eine neue Tabelle namens "City in a Warehouse". Alle Komponenten – Lakehouse, Warehouse und Dataflow – befinden sich im gleichen Arbeitsbereich. Um den Datenfluss dynamisch zu gestalten, parametrisieren Sie die Quelltabelle, den Filterwert und die Zieltabelle. Diese Änderungen ermöglichen die Ausführung des Datenflusses mit bestimmten Werten anstelle hartcodierter Werte.
Bevor Sie fortfahren, aktivieren Sie den Modus für öffentliche Parameter, indem Sie zur Registerkarte Start wechseln, Optionen auswählen und im Abschnitt Parameter das Kontrollkästchen mit der Bezeichnung Aktivieren von Parametern zur Entdeckung und Aufhebung für die Ausführung aktivieren, damit Ihr Datenfluss Parameter während der Ausführung akzeptieren kann.
Quelle parametrisieren
Wenn Sie einen der Fabric-Connectors wie Lakehouse, Warehouse oder Fabric SQL verwenden, befolgen sie alle dieselbe Navigationsstruktur und verwenden dasselbe Eingabeformat. In diesem Szenario erfordert keiner der Verbinder manuelle Eingaben, um eine Verbindung herzustellen. Jeder zeigt jedoch an, mit welchem Arbeitsbereich und Element es eine Verbindung über die Navigationsschritte in Ihrer Abfrage herstellt. Beispielsweise enthält der erste Navigationsschritt die workspaceId, mit der die Abfrage eine Verbindung herstellt.
Ziel ist es, die hartcodierten Werte in der Bearbeitungsleiste durch Parameter zu ersetzen. Insbesondere müssen Sie einen Parameter für die WorkspaceId und einen anderen für die LakehouseId erstellen. Um Parameter zu erstellen, wechseln Sie im Menüband zur Registerkarte " Start ", wählen Sie "Parameter verwalten" und dann im Dropdownmenü " Neuer Parameter" aus.
Stellen Sie beim Erstellen der Parameter sicher, dass beide als erforderlich gekennzeichnet und auf den Texttyp festgelegt sind. Verwenden Sie für ihre aktuellen Werte die Werte, die den entsprechenden Werten aus Ihrer spezifischen Umgebung entsprechen.
Nachdem beide Parameter erstellt wurden, können Sie das Abfrageskript aktualisieren, um sie anstelle hartcodierter Werte zu verwenden. Dies umfasst das manuelle Ersetzen der ursprünglichen Werte im Formelbereich durch Verweise auf die Parameter „Arbeitsbereichs-ID“ und „Lakehouse-ID“. Das ursprüngliche Abfrageskript sieht wie folgt aus:
let
Source = Lakehouse.Contents([]),
#"Navigation 1" = Source{[workspaceId = "8b325b2b-ad69-4103-93ae-d6880d9f87c6"]}[Data],
#"Navigation 2" = #"Navigation 1"{[lakehouseId = "2455f240-7345-4c8b-8524-c1abbf107d07"]}[Data],
#"Navigation 3" = #"Navigation 2"{[Id = "dimension_city", ItemKind = "Table"]}[Data],
#"Filtered rows" = Table.SelectRows(#"Navigation 3", each ([SalesTerritory] = "Southeast")),
#"Removed columns" = Table.RemoveColumns(#"Filtered rows", {"ValidFrom", "ValidTo", "LineageKey"})
in
#"Removed columns"
Nachdem Sie die Verweise in den Navigationsschritten aktualisiert haben, sieht ihr neues aktualisiertes Skript möglicherweise wie folgt aus:
let
Source = Lakehouse.Contents([]),
#"Navigation 1" = Source{[workspaceId = WorkspaceId]}[Data],
#"Navigation 2" = #"Navigation 1"{[lakehouseId = LakehouseId]}[Data],
#"Navigation 3" = #"Navigation 2"{[Id = "dimension_city", ItemKind = "Table"]}[Data],
#"Filtered rows" = Table.SelectRows(#"Navigation 3", each ([SalesTerritory] = "Southeast")),
#"Removed columns" = Table.RemoveColumns(#"Filtered rows", {"ValidFrom", "ValidTo", "LineageKey"})
in
#"Removed columns"
Und Sie stellen fest, dass sie die Datenvorschau im Dataflow-Editor weiterhin richtig auswertet.
Parametrisieren der Logik
Da die Quelle nun Parameter verwendet, können Sie sich auf die Parametrisierung der Transformationslogik des Datenflusses konzentrieren. In diesem Szenario ist der Filterschritt der Ort, an dem die Logik angewendet wird und der gefilterte Wert, der derzeit als Südostcodiert ist, durch einen Parameter ersetzt werden sollte. Erstellen Sie dazu einen neuen Parameter namens "Territory", legen Sie den Datentyp auf Text fest, markieren Sie ihn als nicht erforderlich, und legen Sie den aktuellen Wert auf "Mideast" fest.
Da Ihr Filterschritt über die Benutzeroberfläche erstellt wurde, können Sie zum Schritt "Gefilterte Zeilen" wechseln, ihn doppelt auswählen und das Einstellungsdialogfeld für den Filterschritt abrufen. In diesem Dialogfeld können Sie über das Eingabe-Widget auswählen, wenn Sie einen Parameter anstelle eines statischen Werts verwenden möchten:
Nachdem Sie die Option zum Auswählen eines Parameters ausgewählt haben, wird eine Dropdownliste angezeigt, um alle verfügbaren Parameter anzuzeigen, die dem erforderlichen Datentyp entsprechen. In dieser Liste können Sie den neu erstellten Parameter "Territory" auswählen.
Beachten Sie, dass die Diagrammansicht die Verknüpfung zwischen dem neu erstellten Parameter und der verwendeten Abfrage bereits erstellt hat. Nicht nur das, aber in der Datenvorschau werden nun Informationen für das Mideast-Gebiet angezeigt.
Parametrieren des Ziels
Hinweis
Es wird empfohlen, sich mit dem Konzept von Datenzielen in Dataflow Gen2 vertraut zu machen und wie das Mashup-Skript aus dem Artikel zu Datenzielen und verwalteten Einstellungen erstellt wird.
Die letzte Komponente, die in diesem Szenario parametrisiert werden soll, ist das Ziel. Dazu verwenden Sie das Feature "Erweiterte Bearbeitung für Datenzielabfragen ", mit dem Sie das Zielabfrageskript direkt im Dataflow-Editor mithilfe von Power Query M-Code ändern können.
Bevor Sie beginnen, erstellen Sie einen Parameter mit dem Namen WarehouseId. Stellen Sie sicher, dass Sie die entsprechende ID Ihres Lagers als aktuellen Wert verwenden, ihn nach Bedarf festlegen und auf den Textdatentyp festlegen.
Erweiterte Bearbeitung für Datenzielabfragen aktivieren
Um die Zielabfrage direkt im Dataflow-Editor zu ändern, müssen Sie zuerst das Feature "Erweiterte Bearbeitung" aktivieren:
Wählen Sie " Optionen " auf der Registerkarte " Start " im Menüband aus.
Scrollen Sie im Dialogfeld "Optionen " nach unten zum Abschnitt "Datenziele ".
Aktivieren Sie das Kontrollkästchen zum Aktivieren der erweiterten Bearbeitung für Datenzielabfragen.
Es wird ein Warndialogfeld angezeigt, in dem erläutert wird, dass das Ändern von Zielabfragen zu unerwartetem Verhalten führen oder den Datenfluss unterbrechen kann. Lesen Sie die Warnung sorgfältig, und wählen Sie "OK " aus, um dies zu bestätigen.
Wählen Sie 'OK' aus, um das Dialogfeld "Optionen" zu schließen.
Ändern der Zielabfrage
Nachdem Sie die erweiterte Bearbeitung aktiviert haben, können Sie auf die Zielabfrage für Ihr Datenziel zugreifen und diese ändern:
Suchen Sie im Bereich "Abfragen " den Abschnitt "Datenziel", in dem Ihre konfigurierten Ziele angezeigt werden.
Klicken Sie mit der rechten Maustaste auf die Zielabfrage mit dem Namen dimension_city.
Wählen Sie im Kontextmenü den erweiterten Editor aus.
Die Zielabfrage sieht wie folgt aus:
let
Pattern = Fabric.Warehouse([HierarchicalNavigation = null, CreateNavigationProperties = false]),
Navigation_1 = Pattern{[workspaceId = "8b325b2b-ad69-4103-93ae-d6880d9f87c6"]}[Data],
Navigation_2 = Navigation_1{[warehouseId = "527ba9c1-4077-433f-a491-9ef370e9230a"]}[Data],
TableNavigation = Navigation_2{[Item = "City", Schema = "dbo"]}?[Data]?
in
TableNavigation
Ähnlich wie das Skript der Quelle für das Lakehouse weist dieses Skript für das Ziel ein ähnliches Muster auf, bei dem die workspaceId und warehouseId hartcodiert werden. Ersetzen Sie diese festen Werte durch die Bezeichner der Parameter, und Ihr Skript sieht wie folgt aus:
let
Pattern = Fabric.Warehouse([HierarchicalNavigation = null, CreateNavigationProperties = false]),
Navigation_1 = Pattern{[workspaceId = WorkspaceId]}[Data],
Navigation_2 = Navigation_1{[warehouseId = WarehouseId]}[Data],
TableNavigation = Navigation_2{[Item = "City", Schema = "dbo"]}?[Data]?
in
TableNavigation
Wählen Sie "OK" aus, um Ihre Änderungen im erweiterten Editor zu speichern.
Von Bedeutung
Nachdem Sie eine Zielabfrage mit erweiterter Bearbeitung geändert haben, funktioniert die Standardbenutzeroberfläche zum Ändern dieses Ziels nicht mehr. Sie müssen den erweiterten Editor weiterhin für weitere Änderungen an diesem Ziel verwenden. Weitere Informationen finden Sie unter "Erweiterte Bearbeitung für Datenzielabfragen".
Sie können überprüfen, ob alle Änderungen vorhanden sind, indem Sie das Datenziel und alle vorherigen Parameterverweise überprüfen, die hinzugefügt wurden. Dies finalisiert die gesamte Parametrisierung Ihres Dataflows und damit können Sie nun den Dataflow ausführen, indem Sie Parameterwerte zur Ausführung übergeben.
Anforderung mit Parameterwerten ausführen
Sie können die Fabric-REST-API verwenden, um eine Ausführungsanforderung mit einer benutzerdefinierten Nutzlast zu senden, die Ihre Parameterwerte für diesen bestimmten Ausführungsvorgang enthält, und Sie können auch die REST-API verwenden, um Datenflussparameter zu ermitteln und zu verstehen, was der Dataflow erwartet, damit er eine Ausführung auslösen kann. In diesem Lernprogramm verwenden Sie die Erfahrung in der Dataflow-Aktivität für Fabric-Pipelines. Erstellen Sie zunächst eine Pipeline, und fügen Sie dem Zeichenbereich eine neue Datenflussaktivität hinzu. Suchen Sie in den Einstellungen der Aktivität den Arbeitsbereich, in dem sich Ihr Dataflow befindet, und wählen Sie dann den Dataflow aus der Dropdownliste aus.
Ein Abschnitt "Dataflow-Parameter" kann erweitert werden, um alle verfügbaren Parameter im Dataflow und deren Standardwerte anzuzeigen. Sie können hier alle Werte ersetzen, und die übergebenen Werte werden verwendet, um zu definieren, welche Quellen, Logik und Ziel zum Auswerten der Datenflussausführung verwendet werden sollen. Sie können auch neue Szenarien ausprobieren, indem Sie ein neues Warehouse erstellen und die WarehouseId für die Auswertung ändern oder dieses Muster in einer Bereitstellungspipeline verwenden, in der die WorkspaceId und andere Parameter übergeben werden müssen, um auf die richtigen Elemente in der entsprechenden Umgebung zu verweisen.