Freigeben über


Trigger für Speicherereignisse in Datenpipelines in Data Factory

Einführung

Ein gängiger Anwendungsfall für das Aufrufen von Data Factory-Datenpipelines besteht darin, eine Pipeline bei Dateiereignissen wie Dateiankunft und Dateilöschung auszulösen. Für Kunden, die von Azure Data Factory (ADF) zu Microsoft Fabric wechseln, ist die Verwendung von ADLS/Blob Storage-Ereignissen üblich. Neue Fabric-Benutzer, die mit ADF noch nicht vertraut waren, können in der Regel Dateiereignisse von OneLake verwenden. Auslöser in Fabric Data Factory verwenden Fabric-Plattformfunktionen, einschließlich Eventstreams und Reflexauslöser. Innerhalb des Entwurfsbereichs für Pipelines in Fabric Data Factory gibt es eine Trigger-Schaltfläche, um einen Reflextrigger für Ihre Pipeline zu erstellen. Alternativ können Sie den Trigger direkt aus der Fabric Activator-Erfahrung erstellen.

Festlegen von Triggern für Speicherereignisse in einer Pipeline

  1. Wählen Sie die Schaltfläche "Trigger" im Menüband "Home" am oberen Rand des Pipeline-Canvas-Editor-Fensters aus.

    Screenshot der Schaltfläche „Trigger“ auf dem Menüband „Start“ auf der Pipelinecanvas im Editorfenster.

  2. Der Bereich " Warnung festlegen " wird geöffnet, in dem Sie Quellereignisse für Ihren Trigger mithilfe des Reflex-Warnungsdiensts definieren können.

    Screenshot des Bereichs „Warnung erstellen“.

  3. Hier wählen Sie den Typ der Ereignisse aus, auf die Sie lauschen möchten. Wählen Sie OneLake-Ereignisse für OneLake-Dateiereignisse, Azure Blob usw. aus.

    Screenshot des Dialogfelds

  4. Wählen Sie "Quelle" und dann "Ereignisse " aus, um die Speicherereignisse auszuwählen, auf die Sie im Trigger lauschen möchten.

    Screenshot, der zeigt, wo eine Verbindung mit Azure Blob Storage-Ereignissen für ein Blob Storage-Konto hergestellt werden soll.

  5. Wählen Sie Ihr Azure-Abonnement und Blob-Speicherkonto aus.

  6. In Ihrem Fabric-Arbeitsbereich wird ein neues Eventstream-Objekt erstellt. Achten Sie daher darauf, den richtigen Arbeitsbereich unter Streamdetails auszuwählen.

  7. Wählen Sie Weiter aus.

  8. Wählen Sie Ereignistypen aus. Sie können sehen, dass es viele weitere Ereignisoptionen gibt, die Sie wählen können, abgesehen von der Dateierstellung und Dateilöschung.

    Screenshot der Seite

  9. Mithilfe des Felds "Betreff" können Sie Ereignisse nach übereinstimmenden Dateien und Ordnern filtern, indem Sie den Ordnernamen, den Dateinamen, den Dateityp und den Container angeben.

    Ein Ereignis weist die folgenden Daten auf oberster Ebene aus:

    Eigenschaft Typ Beschreibung Beispiel
    source string Vollständiger Ressourcenpfad zur Ereignisquelle. Dieses Feld ist nicht beschreibbar. Dieser Wert wird von Event Grid bereitgestellt. /Abonnements/{subscription-id}/resourceGroups/Storage/Anbieter/Microsoft.Storage/storageAccounts/my-storage-account
    subject Zeichenfolge Vom Herausgeber definierter Pfad zum Ereignisbetreff /blobServices/default/containers/my-file-system/blobs/new-file.txt
    Typ Zeichenfolge Einer der registrierten Ereignistypen für die Ereignisquelle. Microsoft.Storage.BlobCreated
    time Zeichenfolge Die Zeit, in der das Ereignis generiert wird, basierend auf der UTC-Zeit des Anbieters. 2017-06-26T18:41:00.9584103Z
    id Zeichenfolge Eindeutiger Bezeichner für das Ereignis. 00000000-0000-0000-0000-000000000000
    Daten Objekt Ereignisdaten für Blob Storage. Datenobjekt
    specversion Zeichenfolge Version der CloudEvents-Schemaspezifikation. 1.0

    Screenshot der Filterkonfigurationsseite.

    Hinweis

    Dateiname und Ordnername sind Teil des Felds "Betreff ".

  10. Wählen Sie, wenn Sie wieder im Triggerkonfigurationsbereich sind, den Arbeitsbereich aus, um die Triggerelemente, den Pipelinenamen, die Pipelineaktion und den Namen des Triggers als Reflexelement unter Verwendung des Elementnamenszu speichern.

  11. Klicken Sie auf OK, um den Trigger zu erstellen. Der Trigger ist jetzt in Ihrer Pipeline aktiv und reagiert auf die Speicherereignisse, die Sie dafür definiert haben.

    Screenshot der Benachrichtigung „Warnung erstellt“.

  12. Um den Auslöser anzuzeigen, navigieren Sie zu Ihrer Arbeitsbereichslistenansicht, und suchen Sie das Reflex-Objekt anhand des Namens aus Ihrem Fabric-Browser.

  13. Der Typ des Objekts ist Reflex.

  14. Wählen Sie den Trigger aus, um das Reflex-Objekt zum Anzeigen und Bearbeiten zu öffnen.

    Screenshot der Details des Reflex-Objekts.

Festlegen von Ausdruckswerten mithilfe des Trigger-Dateinamens und Ordnernamens

Innerhalb der Pipeline können Sie den Dateinamen und den Ordnerpfad aus dem Speicherereignis mithilfe integrierter Triggerparameter verwenden. Data Factory legt diese Parameter fest, wenn es das Speicherereignis empfängt. Blobpfad- und Dateinamenparameter werden durch die Triggeraktivierung festgelegt. Wählen Sie die Registerkarte "Triggerparameter" im Ausdrucks-Generator in Ihrer Pipeline aus, und Data Factory analysiert automatisch den Dateinamen und Ordnernamen für Sie, sodass Sie sie dynamisch zu Ihrem Pipelineausdruck hinzufügen können.

Screenshot, das den Dialog „Dynamische Inhalte hinzufügen“ zeigt.

Diese integrierten Parameter werden aus den Feldern "Betreff " und "Thema " des eingehenden Dateiereignisses festgelegt und automatisch erstellt, damit Sie sie in Ihrer Pipelinelogik verwenden können.

@pipeline()?.TriggerEvent?.FileName

Möglicherweise bemerken Sie die Verwendung eines ? nach dem Pipeline()-Objektverweis, bei dem es sich um eine Methode handelt, die in der Pipelineausdruckssprache zum Behandeln von NULL-Werten verwendet wird. Sie benötigen diese Syntax beim Testen einer Pipeline, die die Triggerparameter verwendet, da während manueller Tests Datei- und Ordnernamenparameter nicht festgelegt sind und ein NULL-Wert zurückgegeben wird. Wenn Sie die Pipeline jedoch durch ein Dateiereignis auslösen, werden der Dateiname und der Ordnername in diesen Feldern ausgefüllt.