Eseguire un'attività di processo di Azure Databricks con parametri in un ciclo
Questo articolo illustra l'uso dell'attività For each
con i processi di Azure Databricks, inclusi i dettagli sull'aggiunta e la configurazione dell'attività nell'interfaccia utente dei processi. Usare l'attività per eseguire un'attività For each
in un ciclo, passando un set diverso di parametri a ogni iterazione dell'attività.
L'aggiunta dell'attività a un processo richiede la definizione di due attività: l'attività For each
For each
e un'attività nidificata. L'attività nidificata è l'attività da eseguire per ogni iterazione dell'attività For each
ed è uno dei tipi di attività standard di Processi di Azure Databricks. Non è possibile aggiungere un'altra For each
attività come attività nidificata.
Ad esempio, è possibile usare l'attività For each
per eseguire un set comune di trasformazioni in più tabelle, passando un nome di tabella da un elenco di nomi di tabella a ogni iterazione dell'attività.
Quali tipi di parametri è possibile usare con l'attività For each
?
Per passare parametri da un'attività For each
, è possibile:
- Definire una raccolta in formato JSON quando si crea o si modifica un'attività.
- Usare i valori delle attività passati da un'attività precedente. Per altre informazioni sui valori delle attività, vedere Condividere informazioni tra attività in un processo di Azure Databricks.
- Usare i parametri del processo. Per altre informazioni sui parametri del processo, vedere Aggiungere parametri per tutte le attività del processo.
Per informazioni su come usare questi diversi tipi di parametri quando si aggiunge o si modifica un'attività For each
, vedere la sezione successiva Aggiungere l'attività For each a un processo.
Aggiungere l'attività For each
a un processo
È possibile aggiungere un'attività For each
quando si crea un processo o si modifica un'attività in un processo esistente. Per configurare un'attività For each
:
Nel menu a discesa Tipo selezionare Per ogni.
Immettere un nome per l'attività nel campo Nome attività.
Nella casella di testo Input definire i valori per l'attività su cui eseguire l'iterazione
For each
. Le opzioni a disposizione sono:Matrice json formattata di valori. Può trattarsi di una matrice dei tipi di dati seguenti:
- coppie chiave-valore
- Stringhe, numeri o tipi booleani
- Oggetti JSON arbitrariamente complessi
Riferimenti ai valori dell'attività. Per fare riferimento ai valori dell'attività passati da un'attività precedente, usare la
{{tasks.<task_name>.values.<task_value_name>}}
sintassi per impostare il valore nella casella di testo Input. Ad esempio, se un'attività denominatagenerate_countries_list
che precede l'attività imposta il valore dell'attivitàFor each
seguente:dbutils.jobs.taskValues.set(key = "countries", value = countries_array)
L'attività fa quindi riferimento al valore dell'attività
For each
nella casella di testo Input usando la sintassi seguente:{{tasks.generate_countries_list.values.countries}}
.Parametri del processo. Per fare riferimento a un parametro del processo, usare la sintassi seguente nella casella di testo Input :
{{job.parameters.<name>}}
. Ad esempio:{{job.parameters.countries}}
.Per impostare facoltativamente il numero di iterazioni eseguibili in parallelo, immettere un valore di concorrenza per l'attività. Il valore predefinito è 1.
Per ricevere facoltativamente notifiche per l'avvio, l'esito positivo o negativo dell'attività, fare clic su + Aggiungi. Vedere Aggiungere notifiche di posta elettronica e di sistema per gli eventi del processo.
Per completare la configurazione dell'attività e aggiungere un'attività
For each
nidificata da eseguire per ogni iterazione, fare clic su Aggiungi un'attività per eseguire un ciclo.Selezionare un tipo di attività e le opzioni di configurazione per l'attività nidificata. Le attività annidate sono tipi di attività standard e hanno le stesse opzioni di configurazione. Vedere Opzioni del tipo di attività.
Per fare riferimento ai parametri passati dall'attività
For each
, fare clic su Parametri. Usare il{{input}}
riferimento per impostare il valore sul valore della matrice di ogni iterazione o{{input.<key>}}
per fare riferimento a singoli campi oggetto quando si esegue l'iterazione su un elenco di oggetti.Fare clic su Crea attività.
Passare dall'attività all'attività For each
nidificata
L'attività For each
viene visualizzata nell'interfaccia utente Processi come nodo con il nodo attività annidato all'interno del For each
nodo. Per passare dall'attività all'attività For each
nidificata, fare clic sui rispettivi nodi.
Fare riferimento a un'attività For each
nelle attività downstream
L'attività For each
è l'attività di primo livello e le attività downstream possono specificarla come dipendenza. Le attività downstream non possono dipendere o fare riferimento all'attività nidificata.
Eseguire e monitorare un processo con un'attività For each
L'esecuzione di un processo con un'attività For each
è identica all'esecuzione di qualsiasi altro processo. Vedere Eseguire un processo.
Anche la visualizzazione e la gestione delle esecuzioni dei processi sono identiche a qualsiasi altro processo, ad eccezione della cronologia di esecuzione delle attività per un'attività For each
, che viene presentata come tabella di iterazioni delle attività. Per ogni attività, vedere Visualizzare la cronologia di esecuzione delle attività.