Attivare i processi quando arrivano nuovi file
È possibile usare i trigger di arrivo dei file per attivare un'esecuzione del processo di Azure Databricks quando arrivano nuovi file in una posizione esterna, ad esempio Amazon S3, Archiviazione di Azure, o Google Cloud Storage. È possibile utilizzare questa funzionalità quando un processo pianificato potrebbe risultare inefficiente perché i nuovi dati arrivano in base a una pianificazione irregolare.
I trigger di arrivo dei file fanno il massimo per verificare ogni minuto la presenza di nuovi file, anche se ciò può essere influenzato dalle prestazioni dell'archiviazione cloud sottostante. I trigger di arrivo dei file non comportano costi aggiuntivi diversi dai costi del provider cloud associati all'elenco dei file nel percorso di archiviazione.
Un trigger di arrivo dei file può essere configurato per monitorare la radice di una posizione esterna o di un volume del catalogo Unity, oppure un percorso secondario di un percorso o di un volume esterno. Ad esempio, per il volume radice del catalogo Unity /Volumes/mycatalog/myschema/myvolume/
, i percorsi seguenti sono validi per un trigger di arrivo dei file:
/Volumes/mycatalog/myschema/myvolume/
/Volumes/mycatalog/myschema/myvolume/mydirectory/
Un trigger di arrivo file verifica in modo ricorsivo la presenza di nuovi file in tutte le sottodirectory del percorso configurato. Ad esempio, se si crea un trigger di arrivo file per il percorso /Volumes/mycatalog/myschema/myvolume/mydirectory/
e questa posizione include le sottodirectory seguenti:
/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirA
/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirB
/Volumes/mycatalog/myschema/myvolume/mydirectory/subdirC/subdirD
Il trigger verifica la presenza di nuovi file in mydirectory
, subdirA
subdirB
, subdirC
, e subdirC/subdirD
.
Requisiti
Per usare i trigger di arrivo dei file, è necessario quanto segue:
- L'area di lavoro deve avere Unity Catalog abilitato.
- È necessario usare un percorso di archiviazione che sia un volume del catalogo Unity o un percorso esterno aggiunto al metastore del catalogo Unity. Si veda Creare una posizione esterna per connettere la memorizzazione cloud ad Azure Databricks.
- È necessario disporre delle autorizzazioni
READ
per il percorso di archiviazione e delle autorizzazioni CAN MANAGE per il processo. Per maggiori informazioni sulle autorizzazioni dei processi, vedere ACL dei processi.
Limiti
- Viene eseguito solo il trigger di nuovi file. La sovrascrittura di un file esistente con un file con lo stesso nome non attiva un'esecuzione.
- È possibile configurare un massimo di cinquanta processi con un trigger di arrivo file in un'area di lavoro di Azure Databricks.
- Un percorso di archiviazione configurato per un trigger di arrivo file può contenere solo fino a 10.000 file. Le posizioni con più file non possono essere monitorate per gli arrivi di nuovi file. Se il percorso di archiviazione configurato è un sottopercorso di un percorso esterno o di un volume del catalogo Unity, il limite di 10.000 file si applica al percorso secondario e non alla radice del percorso di archiviazione. Ad esempio, la radice del percorso di archiviazione può contenere più di 10.000 file nelle relative sottodirectory, ma la sottodirectory configurata non deve superare il limite di 10.000 file.
- Il percorso utilizzato per un trigger di arrivo dei file non deve contenere tabelle esterne o percorsi gestiti di cataloghi e schemi.
- Il percorso usato per un trigger di arrivo file non può contenere caratteri jolly, ad esempio
*
o?
.
Aggiungere un trigger di arrivo file
Per aggiungere un trigger di arrivo file a un processo:
- Nella barra laterale fare clic su Flussi di lavoro.
- Nella colonna Nome della scheda Processi, fare clic sul nome del processo.
- Nel pannello Dettagli processo a destra fare clic su Aggiungi trigger.
- In Tipo di trigger selezionare Arrivo file.
- In Percorso di archiviazione immettere l'URL della radice o di un sottopercorso di una posizione esterna del catalogo Unity, o della radice o di un sottopercorso di un volume del catalogo Unity da monitorare.
- (Facoltativo) Configurare le opzioni avanzate:
- Tempo minimo tra i trigger in secondi: tempo minimo di attesa per attivare un'esecuzione dopo il completamento di un'esecuzione precedente. I file che arrivano in questo periodo di tempo attivano un'esecuzione solo dopo la scadenza del tempo di attesa. Usare questa impostazione per controllare la frequenza di creazione dell'esecuzione.
- Attesa dopo l'ultima modifica in secondi: tempo di attesa per attivare un'esecuzione dopo l'arrivo dei file. Un altro arrivo file in questo periodo reimposta il timer. Questa impostazione può essere usata quando arrivano i file in batch e l'intero batch deve essere elaborato dopo l'arrivo di tutti i file.
- Per convalidare la configurazione fare clic su Test connessione.
- Fare clic su Salva.
Ricevere notifiche di trigger di arrivo dei file non riusciti
Per ricevere una notifica se un trigger di arrivo dei file non viene valutato, configurare le notifiche di destinazione e-mail o di sistema in caso di errore del processo. Vedere Aggiungere notifiche di posta elettronica e di sistema per gli eventi del processo.