Condividi tramite


Eseguire processi in base a una pianificazione o continuamente

È possibile eseguire periodicamente il processo di Azure Databricks con il tipo di trigger pianificato o assicurarsi che sia sempre attiva l'esecuzione del processo con il tipo di trigger Continuo .

È possibile usare una pianificazione per eseguire automaticamente il processo di Azure Databricks in orari e periodi specificati. È possibile definire una pianificazione per eseguire il processo in base a minuti, orari, giornalieri, settimanali o mensili e in orari specificati. È anche possibile specificare un fuso orario per la pianificazione e sospendere un processo pianificato in qualsiasi momento.

Quando si esegue il processo con il trigger continuo, i processi di Azure Databricks assicurano che sia sempre presente un'esecuzione attiva del processo. Una nuova esecuzione del processo viene avviata dopo il completamento dell'esecuzione precedente o con uno stato di errore oppure se non è attualmente in esecuzione alcuna istanza del processo.

Aggiungere una pianificazione del processo

Per definire una pianificazione per il processo:

  1. Nella barra laterale fare clic su Flussi di lavoro.
  2. Nella colonna Nome della scheda Processi fare clic sul nome del processo.
  3. Fare clic su Aggiungi trigger nel pannello Dettagli processo e selezionare Pianificato in Tipo di trigger.
  4. Specificare il periodo, l'ora di inizio e il fuso orario. Facoltativamente, selezionare la casella di controllo Mostra sintassi Cron per visualizzare e modificare la pianificazione nella sintassi Cron di Quarzi.
  5. Fare clic su Salva.

È anche possibile pianificare un processo notebook direttamente nell'interfaccia utente del notebook.

Nota

  • Azure Databricks applica un intervallo minimo di 10 secondi tra le esecuzioni successive attivate dalla pianificazione di un processo indipendentemente dalla configurazione dei secondi nell'espressione cron.
  • È possibile scegliere un fuso orario che osserva l'ora legale o l'ora UTC. Se si seleziona un fuso orario che osserva l'ora legale, un processo orario verrà ignorato o potrebbe sembrare ritardato di un'ora o due all'inizio o alla fine dell'ora legale. Per l'esecuzione ogni ora (ora assoluta), scegliere UTC.
  • L'utilità di pianificazione del processo non è destinata a processi a bassa latenza. A causa di problemi di rete o cloud, le esecuzioni dei processi possono occasionalmente essere ritardate fino a diversi minuti. In queste situazioni, i processi pianificati vengono eseguiti immediatamente dopo la disponibilità del servizio.

Sospendere e riprendere una pianificazione del processo

Per sospendere un processo, fare clic su Sospendi nel pannello Dettagli processo.

Per riprendere una pianificazione del processo sospesa, fare clic su Riprendi.

Eseguire un processo continuo

  1. Nella barra laterale fare clic su Flussi di lavoro.
  2. Nella colonna Nome della scheda Processi fare clic sul nome del processo.
  3. Fare clic su Aggiungi trigger nel pannello Dettagli processo, fare clic su Aggiungi trigger nel pannello Dettagli processo, selezionare Tipo di trigger continuo e fare clic su Salva.

Per arrestare un processo continuo, fare clic su Blue Down Caret Accanto a Esegui adesso e fare clic su Arresta.

Nota

  • Può essere presente una sola istanza in esecuzione di un processo continuo.
  • Si verifica un piccolo ritardo tra il completamento di un'esecuzione e l'avvio di una nuova esecuzione. Questo ritardo deve essere inferiore a 60 secondi.
  • Non è possibile usare le dipendenze delle attività con un processo continuo.
  • Non è possibile usare criteri di ripetizione dei tentativi con un processo continuo. I processi continui usano invece un backoff esponenziale per gestire gli errori di esecuzione del processo.
  • Se si seleziona Esegui ora in un processo continuo che viene sospeso, viene attivata una nuova esecuzione del processo. Se il processo non è sottoposto apausing, viene generata un'eccezione.
  • Per fare in modo che il processo continuo rilevi una nuova configurazione del processo, annullare l'esecuzione esistente e quindi viene avviata automaticamente una nuova esecuzione. È anche possibile fare clic su Riavvia esecuzione per riavviare l'esecuzione del processo con la configurazione aggiornata.

Come vengono gestiti gli errori per i processi continui?

Processi di Azure Databricks usa uno schema di backoff esponenziale per gestire processi continui con più errori consecutivi. Il backoff esponenziale consente l'esecuzione di processi continui senza sospendere e tornare a uno stato integro quando si verificano errori ripristinabili.

Quando un processo continuo supera la soglia consentita per gli errori consecutivi, di seguito viene descritto come vengono gestite le esecuzioni successive del processo:

  1. Il processo viene riavviato dopo un periodo di ripetizione impostato dal sistema.
  2. Se l'esecuzione del processo successivo ha esito negativo, il periodo di ripetizione dei tentativi viene aumentato e il processo viene riavviato dopo questo nuovo periodo di tentativi.
    1. Per ogni errore di esecuzione del processo successivo, il periodo di ripetizione dei tentativi viene aumentato di nuovo, fino a un periodo massimo di tentativi impostato dal sistema. Dopo aver raggiunto il periodo massimo di tentativi, il processo continua a essere ritentato usando il periodo massimo di tentativi. Non esiste alcun limite al numero di tentativi per un processo continuo.
    2. Se l'esecuzione del processo viene completata correttamente e viene avviata una nuova esecuzione oppure se l'esecuzione supera una soglia senza errori, il processo viene considerato integro e la sequenza di backoff viene reimpostata.

È possibile riavviare un processo continuo nello stato di backoff esponenziale nell'interfaccia utente processi o passando l'ID processo alla richiesta POST /api/2.1/jobs/run-now nell'API Jobs 2.1 o post /api/2.0/jobs/run-now nell'API Jobs 2.0.