Verweisen auf Triggermetadaten in Pipelineausführungen
GILT FÜR: Azure Data Factory Azure Synapse Analytics
Tipp
Testen Sie Data Factory in Microsoft Fabric, eine All-in-One-Analyselösung für Unternehmen. Microsoft Fabric deckt alle Aufgaben ab, von der Datenverschiebung bis hin zu Data Science, Echtzeitanalysen, Business Intelligence und Berichterstellung. Erfahren Sie, wie Sie kostenlos eine neue Testversion starten!
In diesem Artikel erfahren Sie, wie Sie Triggermetadaten (beispielsweise die Startzeit eines Triggers) in einer Pipelineausführung verwenden.
Eine Pipeline muss manchmal Metadaten des Triggers, durch den sie aufgerufen wird, interpretieren und lesen können. Bei einer Triggerausführung mit rollierendem Fenster verarbeitet die Pipeline beispielsweise auf der Grundlage der Start- und Endzeit des Fensters verschiedene Datenslices oder Ordner. In Azure Data Factory werden Parametrisierung und die Systemvariable verwendet, um Metadaten des Triggers an die Pipeline zu übergeben.
Dieses Muster ist besonders nützlich für einen Trigger mit rollierendem Fenster, bei dem der Trigger die Start- und Endzeit des Fensters angibt, und für einen benutzerdefinierten Ereignisauslöser, bei dem der Trigger die Werte in einem benutzerdefinierten Daten-Feld analysiert und verarbeitet.
Hinweis
Verschiedene Triggertypen stellen unterschiedliche Metadateninformationen bereit. Weitere Informationen finden Sie unter Systemvariablen.
Data Factory-Benutzeroberfläche
In diesem Abschnitt erfahren Sie, wie Sie Metadateninformationen eines Triggers innerhalb der Data Factory-Benutzeroberfläche (UI) an eine Pipeline übergeben.
Navigieren Sie zum Erstellungsbereich und bearbeiten Sie eine Pipeline.
Klicken Sie auf den leeren Canvas, um Pipelineeinstellungen anzuzeigen. Wählen Sie keine Aktivität aus. Möglicherweise müssen Sie den Einstellungsbereich vom unteren Rand des Zeichenbereichs nach oben ziehen, da er möglicherweise reduziert ist.
Wählen Sie die Registerkarte Parameter und anschließend + Neu aus, um Parameter hinzuzufügen.
Fügen Sie der Pipeline Trigger hinzu, indem Sie + Trigger auswählen.
Erstellen Sie einen Trigger, oder fügen Sie einen Trigger an die Pipeline an, und wählen Sie anschließend OK aus.
Nachdem Sie OK ausgewählt haben, wird eine weitere Seite Neuer Trigger mit einer Liste der Parameter angezeigt, die für die Pipeline angegeben sind, wie im folgenden Screenshot gezeigt. Geben Sie auf dieser Seite die Triggermetadaten für die einzelnen Parameter ein. Verwenden Sie das in der Systemvariablen definierte Format, um Triggerinformationen abzurufen. Sie müssen nicht die Informationen für alle Parameter ausfüllen. Füllen Sie einfach diejenigen aus, die Triggermetadatenwerte annehmen. Hier weisen wir beispielsweise
parameter_1
die Startzeit für die Triggerausführung zu.Um die Werte in der Pipeline zu verwenden, verwenden Sie Parameter wie
@pipeline().parameters.parameterName
in Pipelinedefinitionen, nicht Systemvariablen. In diesem Fall wird beispielsweise auf@pipeline().parameters.parameter_1
verwiesen, um die Startzeit des Triggers zu lesen.
JSON-Schema
Um Triggerinformationen an Pipelineausführungen zu übergeben, müssen sowohl der JSON-Code des Triggers als auch der JSON-Code der Pipeline mit einem Abschnitt vom Typ parameters
aktualisiert werden.
Definition der Pipeline
Fügen Sie im Abschnitt properties
dem Abschnitt parameters
Parameterdefinitionen hinzu.
{
"name": "demo_pipeline",
"properties": {
"activities": [
{
"name": "demo_activity",
"type": "WebActivity",
"dependsOn": [],
"policy": {
"timeout": "7.00:00:00",
"retry": 0,
"retryIntervalInSeconds": 30,
"secureOutput": false,
"secureInput": false
},
"userProperties": [],
"typeProperties": {
"url": {
"value": "@pipeline().parameters.parameter_2",
"type": "Expression"
},
"method": "GET"
}
}
],
"parameters": {
"parameter_1": {
"type": "string"
},
"parameter_2": {
"type": "string"
},
"parameter_3": {
"type": "string"
},
"parameter_4": {
"type": "string"
},
"parameter_5": {
"type": "string"
}
},
"annotations": [],
"lastPublishTime": "2021-02-24T03:06:23Z"
},
"type": "Microsoft.DataFactory/factories/pipelines"
}
Triggerdefinition
Weisen Sie im Abschnitt pipelines
Parameterwerte im Abschnitt parameters
hinzu. Sie müssen nicht die Informationen für alle Parameter ausfüllen. Füllen Sie einfach diejenigen aus, die Triggermetadatenwerte annehmen.
{
"name": "trigger1",
"properties": {
"annotations": [],
"runtimeState": "Started",
"pipelines": [
{
"pipelineReference": {
"referenceName": "demo_pipeline",
"type": "PipelineReference"
},
"parameters": {
"parameter_1": "@trigger().startTime"
}
}
],
"type": "ScheduleTrigger",
"typeProperties": {
"recurrence": {
"frequency": "Minute",
"interval": 15,
"startTime": "2021-03-03T04:38:00Z",
"timeZone": "UTC"
}
}
}
}
Verwenden von Triggerinformationen in einer Pipeline
Um die Werte in einer Pipeline zu verwenden, verwenden Sie Parameter wie @pipeline().parameters.parameterName
in Pipelinedefinitionen, nicht Systemvariablen.
Zugehöriger Inhalt
Weitere Informationen zu Triggern finden Sie unter Pipelineausführung und -trigger.