Udostępnij za pośrednictwem


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ć.

Zrzut ekranu przedstawiający okno tworzenia zależności.

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

Diagram przedstawiający przykład przesunięcia.

Rozmiar zależności

Diagram przedstawiający przykład rozmiaru.

Samodzielna zależność

Diagram przedstawiający przykład samodzielnej zależności.

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.

Diagram przedstawiający przykład zależności.

Zależność od siebie

Poniższy przykład przedstawia codzienne zadanie bez przerw w strumieniach wyjściowych zadania.

Diagram przedstawiający przykład samodzielnej zależności bez przerw w strumieniach wyjściowych.

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.

Zrzut ekranu przedstawiający przebiegi wyzwalacza Monitor.

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.

Zrzut ekranu przedstawiający widok listy Monitor dependencies (Monitorowanie zależności).

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.

Zrzut ekranu przedstawiający wykres Gantta zależności monitora.

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.