Creare una dipendenza del trigger di finestra a cascata

SI APPLICA A: Azure Data Factory Azure Synapse Analytics

Questo articolo descrive la procedura per creare una dipendenza del trigger di finestra a cascata. Per informazioni più specifiche ed esempi sui trigger di finestra a cascata, vedere Procedura per creare un trigger di finestra a cascata.

Per creare una catena di dipendenze e assicurarsi che un trigger venga eseguito solo dopo l'esecuzione corretta di un altro trigger all'interno del servizio, usare questa funzionalità avanzata per creare una dipendenza finestra a cascata.

Per una dimostrazione su come creare pipeline dipendenti usando un trigger di finestra a cascata, guardare il video seguente:

Creare una dipendenza nell'interfaccia utente

Per creare una dipendenza da un trigger, selezionare Trigger Advanced New (Attiva > nuovo avanzato>) e quindi scegliere il trigger da cui dipendere con l'offset e le dimensioni appropriate. Selezionare Fine e pubblicare le modifiche per rendere effettive le dipendenze.

Screenshot della finestra di creazione delle dipendenze.

Proprietà di una dipendenza in una finestra a cascata

Un trigger finestra a cascata con una dipendenza ha le proprietà seguenti:

{
    "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>>
                }
            ]
        }
    }
}

La tabella seguente fornisce l'elenco degli attributi necessari per definire una dipendenza in una finestra a cascata.

Nome proprietà Descrizione Tipo Obbligatorio
type Tutti i trigger presenti in una finestra a cascata vengono visualizzati nell'elenco a tendina. Scegliere il trigger da cui dipendere. TumblingWindowTriggerDependencyReference o SelfDependencyTumblingWindowTriggerReference
offset Scostamento del trigger delle dipendenze. Specificare un valore in formato intervallo di tempo e sono consentiti offset negativi e positivi. Questa proprietà è obbligatoria se il trigger dipende da se stesso e in tutti gli altri casi è facoltativo. L'auto-dipendenza deve avere sempre uno scostamento negativo. Se non viene specificato alcun valore, la finestra corrisponde al trigger stesso. TimeSpan
(hh:mm:ss)
Dipendenza automatica: Sì
Altro: No
size Dimensione della finestra a cascata di dipendenze. Specificare un valore timepan positivo. Questa proprietà è facoltativa. TimeSpan
(hh:mm:ss)
No

Nota

Un trigger di finestra a cascata può dipendere da un massimo di cinque altri trigger.

Proprietà di auto-dipendenza in una finestra a cascata

Negli scenari in cui il trigger non deve procedere alla finestra successiva fino al completamento della finestra precedente, compilare una dipendenza automatica. Un trigger di dipendenza automatica che dipende dall'esito positivo delle esecuzioni precedenti di se stesso nell'ora precedente avrà le proprietà indicate nel codice seguente.

Nota

Se la pipeline attivata si basa sull'output delle pipeline nelle finestre attivate in precedenza, è consigliabile usare solo la dipendenza automatica del trigger di finestra a cascata. Per limitare le esecuzioni di trigger paralleli, impostare la concorrenza del trigger maximimum.

{
    "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"
                }
            ]
        }
    }
}

Scenari di utilizzo ed esempi

Di seguito sono riportate le illustrazioni degli scenari e l'utilizzo delle proprietà di dipendenza della finestra a cascata.

Scostamento della dipendenza

Esempio di offset

Dimensione della dipendenza

Esempio di dimensioni

Auto-dipendenza

Dipendenza autonoma

Dipendenza di un altro trigger in una finestra a cascata

Un processo di elaborazione dei dati di telemetria giornaliero a seconda di un altro processo giornaliero che aggrega l'output degli ultimi sette giorni e genera flussi della finestra mobile sette giorni:

Esempio di dipendenza

Dipendenza su se stesso

Un processo giornaliero senza interruzioni nei flussi di output del processo:

Esempio di dipendenza autonoma

Monitorare le dipendenze

È possibile monitorare la catena di dipendenze e le finestre corrispondenti dalla pagina di monitoraggio dell'esecuzione del trigger. Passare a Monitoraggio esecuzioni > trigger. Se un trigger finestra a cascata ha dipendenze, il nome del trigger includerà un collegamento ipertestuale alla visualizzazione di monitoraggio delle dipendenze.

Monitorare le esecuzioni del trigger

Fare clic sul nome del trigger per visualizzare le dipendenze dei trigger. Il pannello a destra mostra informazioni dettagliate sull'esecuzione del trigger, ad esempio RunID, intervallo di tempo, stato e così via.

Monitorare la visualizzazione elenco dipendenze

È possibile visualizzare lo stato delle dipendenze e le finestre per ogni trigger dipendente. Se uno dei trigger di dipendenze ha esito negativo, è necessario eseguirlo di nuovo per consentire l'esecuzione del trigger dipendente.

Un trigger di finestra a cascata attenderà le dipendenze per sette giorni prima del timeout. Dopo sette giorni, l'esecuzione del trigger avrà esito negativo.

Nota

Non è possibile annullare un trigger di finestra a cascata mentre si trova nello stato In attesa sulla dipendenza . L'attività dipendente deve terminare prima che il trigger della finestra a cascata possa essere annullato. Questa operazione è progettata per garantire che le attività dipendenti possano essere completate una volta avviate e contribuisce a ridurre la probabilità di risultati imprevisti.

Per un oggetto visivo più visivo per visualizzare la pianificazione delle dipendenze del trigger, selezionare la visualizzazione Gantt.

Monitorare il diagramma di gantt delle dipendenze

Le caselle trasparenti mostrano le finestre di dipendenza per ogni trigger dipendente dal flusso inattivo, mentre le caselle colorate a tinta unita sopra mostrano le singole esecuzioni della finestra. Ecco alcuni suggerimenti per interpretare la visualizzazione diagramma di Gantt:

  • La casella trasparente esegue il rendering blu quando le finestre dipendenti sono in sospeso o in esecuzione
  • Dopo che tutte le finestre hanno esito positivo per un trigger dipendente, la casella trasparente diventa verde
  • La casella trasparente viene visualizzata in rosso quando si verifica un errore di una finestra dipendente. Cercare una casella rossa continua per identificare l'esecuzione della finestra di errore

Per rieseguire una finestra nella visualizzazione diagramma di Gantt, selezionare la casella a tinta unita per la finestra e verrà visualizzato un pannello azioni con i dettagli e le opzioni di riesecuzione

Passaggi successivi