Tworzenie zależności wyzwalacza okna wirowania
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ą !
Ten artykuł zawiera kroki tworzenia zależności od wyzwalacza okna wirowania. Aby uzyskać ogólne informacje na temat wyzwalaczy okien stałoczasowych, zobacz Tworzenie wyzwalacza okna wirowania.
Aby utworzyć łańcuch zależności i upewnić się, że wyzwalacz jest wykonywany dopiero po pomyślnym wykonaniu innego wyzwalacza w usłudze, użyj tej funkcji zaawansowanej, aby utworzyć zależność okna wirowania.
Aby dowiedzieć się, jak tworzyć potoki zależne przy użyciu wyzwalacza okna wirowania, obejrzyj następujący film wideo:
Tworzenie zależności w interfejsie użytkownika
Aby utworzyć zależność od wyzwalacza, wybierz pozycję Wyzwalaj>zaawansowane>nowe. Następnie wybierz wyzwalacz, który będzie zależeć od odpowiedniego przesunięcia i rozmiaru. Wybierz pozycję Zakończ i opublikuj zmiany, aby zależności zaczęły obowiązywać.
Właściwości zależności okna wirowania
Wyzwalacz okna wirowania z zależnością ma następujące właściwości:
{
"name": "MyTriggerName",
"properties": {
"type": "TumblingWindowTrigger",
"runtimeState": <<Started/Stopped/Disabled - readonly>>,
"typeProperties": {
"frequency": <<Minute/Hour>>,
"interval": <<int>>,
"startTime": <<datetime>>,
"endTime": <<datetime - optional>>,
"delay": <<timespan - optional>>,
"maxConcurrency": <<int>> (required, max allowed: 50),
"retryPolicy": {
"count": <<int - optional, default: 0>>,
"intervalInSeconds": <<int>>,
},
"dependsOn": [
{
"type": "TumblingWindowTriggerDependencyReference",
"size": <<timespan - optional>>,
"offset": <<timespan - optional>>,
"referenceTrigger": {
"referenceName": "MyTumblingWindowDependency1",
"type": "TriggerReference"
}
},
{
"type": "SelfDependencyTumblingWindowTriggerReference",
"size": <<timespan - optional>>,
"offset": <<timespan>>
}
]
}
}
}
Poniższa tabela zawiera listę atrybutów wymaganych do zdefiniowania zależności okna wirowania.
Nazwa właściwości | Opis | Type | Wymagania |
---|---|---|---|
type |
Wszystkie istniejące wyzwalacze okna wirowania są wyświetlane na tej liście rozwijanej. Wybierz wyzwalacz, na który ma być zależny. | TumblingWindowTriggerDependencyReference lub SelfDependencyTumblingWindowTriggerReference |
Tak |
offset |
Przesunięcie wyzwalacza zależności. Podaj wartość w formacie przedziału czasu. Dozwolone są zarówno przesunięcia ujemne, jak i dodatnie. Ta właściwość jest obowiązkowa, jeśli wyzwalacz jest zależny od siebie. We wszystkich innych przypadkach jest to opcjonalne. Samozależność zawsze powinna być ujemnym przesunięciem. Jeśli nie określono żadnej wartości, okno jest takie samo jak sam wyzwalacz. | Zakres czasu (hh:mm:ss) |
Samodzielna zależność: Tak Inne: Nie |
size |
Rozmiar okna wirowania zależności. Podaj dodatnią wartość przedziału czasu. Ta właściwość jest opcjonalna. | Zakres czasu (hh:mm:ss) |
Nie. |
Uwaga
Wyzwalacz okna wirowania może zależeć od maksymalnie pięciu innych wyzwalaczy.
Właściwości samodzielnej zależności okna wirowania
W scenariuszach, w których wyzwalacz nie powinien przechodzić do następnego okna, dopóki poprzednie okno nie zostanie pomyślnie ukończone, skompiluj zależność własną. Wyzwalacz samodzielnej zależności, który zależy od powodzenia wcześniejszych przebiegów samego siebie w ciągu poprzedniej godziny, ma właściwości wskazane w poniższym kodzie.
Uwaga
Jeśli wyzwalany potok opiera się na danych wyjściowych potoków w wcześniej wyzwalanych oknach, zalecamy używanie tylko wyzwalacza okien stałoczasowych samodzielnej zależności. Aby ograniczyć uruchomienia wyzwalacza równoległego, ustaw maksymalną współbieżność wyzwalacza.
{
"name": "DemoSelfDependency",
"properties": {
"runtimeState": "Started",
"pipeline": {
"pipelineReference": {
"referenceName": "Demo",
"type": "PipelineReference"
}
},
"type": "TumblingWindowTrigger",
"typeProperties": {
"frequency": "Hour",
"interval": 1,
"startTime": "2018-10-04T00:00:00Z",
"delay": "00:01:00",
"maxConcurrency": 50,
"retryPolicy": {
"intervalInSeconds": 30
},
"dependsOn": [
{
"type": "SelfDependencyTumblingWindowTriggerReference",
"size": "01:00:00",
"offset": "-01:00:00"
}
]
}
}
}
Scenariusze użycia i przykłady
W poniższych scenariuszach przedstawiono użycie właściwości zależności okna wirowania.
Przesunięcie zależności
Rozmiar zależności
Samodzielna zależność
Zależność od innego wyzwalacza okna wirowania
W poniższym przykładzie pokazano codzienne zadanie przetwarzania danych telemetrycznych, które zależy od innego codziennego zadania agregowania ostatnich siedmiu dni danych wyjściowych i generuje siedmiodniowe strumienie okien kroczących.
Zależność od siebie
Poniższy przykład przedstawia codzienne zadanie bez przerw w strumieniach wyjściowych zadania.
Monitorowanie zależności
Łańcuch zależności i odpowiednie okna można monitorować na stronie monitorowania przebiegu wyzwalacza. Przejdź do obszaru Monitorowanie>przebiegów wyzwalacza. Jeśli wyzwalacz okna wirowania ma zależności, nazwa wyzwalacza nosi hiperlink do widoku monitorowania zależności.
Kliknij nazwę wyzwalacza, aby wyświetlić zależności wyzwalacza. Okienko po prawej stronie zawiera informacje o przebiegu wyzwalacza, takie jak identyfikator przebiegu, czas okna i stan.
Można zobaczyć stan zależności i okien dla każdego wyzwalacza zależnego. Jeśli jeden z wyzwalaczy zależności zakończy się niepowodzeniem, należy pomyślnie ponownie uruchomić wyzwalacz zależny do uruchomienia.
Wyzwalacz okna wirowania czeka na zależności przez siedem dni przed upływem limitu czasu. Po siedmiu dniach uruchomienie wyzwalacza kończy się niepowodzeniem.
Uwaga
Nie można anulować wyzwalacza okna wirowania, gdy znajduje się on w stanie oczekiwania na zależność . Działanie zależne musi zakończyć się przed anulowaniem wyzwalacza okna wirowania. To ograniczenie jest zgodnie z projektem, aby upewnić się, że działania zależne mogą zakończyć się po rozpoczęciu. Pomaga również zmniejszyć prawdopodobieństwo nieoczekiwanych wyników.
Aby wyświetlić bardziej wizualny sposób wyświetlania harmonogramu zależności wyzwalacza, wybierz widok Gantta.
Przezroczyste pola pokazują okna zależności dla każdego wyzwalacza zależnego od podrzędnego. Kolorowe pola pokazane na powyższym obrazie pokazują poszczególne uruchomienia okien. Poniżej przedstawiono kilka wskazówek dotyczących interpretowania widoku wykresu Gantta:
- Przezroczyste pola renderują kolor niebieski, gdy zależne okna są w stanie Oczekiwanie lub Uruchomiono .
- Po pomyślnym wykonaniu wszystkich okien dla wyzwalacza zależnego przezroczyste pole zmieni kolor na zielony.
- Przezroczyste pola są renderowane na czerwono, gdy okno zależne zakończy się niepowodzeniem. Poszukaj solidnego czerwonego pola, aby zidentyfikować uruchomienie okna niepowodzenia.
Aby ponownie uruchomić okno w widoku wykresu Gantta, wybierz pole koloru stałego dla okna. Zostanie wyświetlone okienko akcji z informacjami i ponownym uruchamianiem opcji.