Metadane wyzwalacza odwołania w uruchomieniach potoku
DOTYCZY: Azure Data Factory Azure Synapse Analytics
Napiwek
Wypróbuj usługę Data Factory w usłudze Microsoft Fabric — rozwiązanie analityczne typu all-in-one dla przedsiębiorstw. Usługa Microsoft Fabric obejmuje wszystko, od przenoszenia danych do nauki o danych, analizy w czasie rzeczywistym, analizy biznesowej i raportowania. Dowiedz się, jak bezpłatnie rozpocząć nową wersję próbną !
W tym artykule opisano, jak można używać metadanych wyzwalacza, takich jak czas rozpoczęcia wyzwalacza, w przebiegu potoku.
Potok czasami musi rozumieć i odczytywać metadane z wyzwalacza, który go wywołuje. Na przykład po uruchomieniu wyzwalacza okna wirowania na podstawie czasu rozpoczęcia i zakończenia okna potok będzie przetwarzać różne wycinki danych lub foldery. W usłudze Azure Data Factory używamy parametryzacji i zmiennej systemowej do przekazywania metadanych z wyzwalacza do potoku.
Ten wzorzec jest szczególnie przydatny w przypadku wyzwalacza okien stałoczasowych, gdzie wyzwalacz udostępnia czas rozpoczęcia i zakończenia okna oraz wyzwalacz zdarzeń niestandardowych, gdzie wyzwalacz analizuje i przetwarza wartości w niestandardowym zdefiniowanym polu danych.
Uwaga
Różne typy wyzwalaczy udostępniają różne metadane. Aby uzyskać więcej informacji, zobacz Zmienna systemowa
Interfejs użytkownika usługi Data Factory
W tej sekcji pokazano, jak przekazywać metadane z wyzwalacza do potoku w interfejsie użytkownika usługi Azure Data Factory.
Przejdź do kanwy tworzenia i edytuj potok
Wybierz pustą kanwę, aby wyświetlić ustawienia potoku. Nie wybieraj żadnych działań. Może być konieczne pociągnięcie panelu ustawień z dołu kanwy, ponieważ mogło zostać zwinięte
Wybierz sekcję Parametry i wybierz pozycję + Nowy , aby dodać parametry
Dodaj wyzwalacze do potoku, klikając pozycję + Wyzwalacz.
Utwórz lub dołącz wyzwalacz do potoku, a następnie wybierz przycisk OK
Po wybraniu przycisku OK zostanie wyświetlona inna strona Nowego wyzwalacza z listą parametrów określonych dla potoku, jak pokazano na poniższym zrzucie ekranu. Na tej stronie wypełnij metadane wyzwalacza dla każdego parametru. Użyj formatu zdefiniowanego w zmiennej systemowej , aby pobrać informacje o wyzwalaczu. Nie musisz wypełniać informacji dla wszystkich parametrów— tylko tych, które przyjmą wartości metadanych wyzwalacza. Na przykład w tym miejscu przypisujemy czas rozpoczęcia uruchamiania wyzwalacza do parameter_1.
Aby użyć wartości w potoku, użyj parametrów @pipeline().parameters.parameterName, a nie zmiennej systemowej, w definicjach potoku. Na przykład w naszym przypadku, aby odczytać czas rozpoczęcia wyzwalacza, będziemy się odwoływać.@pipeline().parameters.parameter_1
Schemat systemu JSON
Aby przekazać informacje o wyzwalaczu do przebiegów potoku, należy zaktualizować zarówno wyzwalacz, jak i kod json potoku za pomocą sekcji parametrów .
Definicja potoku
W sekcji właściwości dodaj definicje parametrów do sekcji parametrów
{
"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"
}
Definicja wyzwalacza
W sekcji Potoki przypisz wartości parametrów w sekcji parametrów . Nie musisz wypełniać informacji dla wszystkich parametrów— tylko tych, które przyjmą wartości metadanych wyzwalacza.
{
"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"
}
}
}
}
Używanie informacji o wyzwalaczu w potoku
Aby użyć wartości w potoku, użyj parametrów @pipeline().parameters.parameterName, a nie zmiennej systemowej, w definicjach potoku.
Powiązana zawartość
Aby uzyskać szczegółowe informacje o wyzwalaczach, zobacz Wykonywanie i wyzwalacze potoku.