Configurare il calcolo per una pipeline Delta Live Tables
Questo articolo contiene istruzioni e considerazioni per la configurazione delle impostazioni di calcolo personalizzate per le pipeline di Tables Delta Live.
Le pipeline serverless non forniscono opzioni di configurazione di calcolo. Consultare Configurare una pipeline Delta Live Tables serverless.
Select una politica cluster
Gli utenti devono disporre dell'autorizzazione per distribuire il calcolo per configurare e update pipeline di Tables Delta Live. Gli amministratori dell'area di lavoro possono configurare i criteri del cluster per fornire agli utenti l'accesso alle risorse di calcolo per Delta Live Tables. Consultare Definire i limiti del calcolo della pipeline Delta Live Tables.
Nota
I criteri del cluster sono facoltativi. Rivolgiti all'amministratore dell'area di lavoro se ti mancano i privilegi di calcolo richiesti per Delta Live Tables.
Per assicurarsi che le values predefinite dei criteri del cluster vengano applicate correttamente, set
apply_policy_default_values
atrue
nelle configurazioni del cluster nella configurazione della pipeline:{ "clusters": [ { "label": "default", "policy_id": "<policy-id>", "apply_policy_default_values": true } ] }
Configurare i tag del cluster
È possibile usare i tag di cluster per monitorare l'utilizzo dei cluster della pipeline. Aggiungere tag di cluster nell'interfaccia utente di Delta Live Tables quando si crea o si modifica una pipeline o modificando le impostazioni JSON per i cluster della pipeline.
Select tipi di istanza per eseguire una pipeline
Per impostazione predefinita, Delta Live Tables seleziona i tipi di istanza per i nodi driver e di lavoro della pipeline. Facoltativamente, è possibile configurare i tipi di istanza.
Ad esempio, si possono usare i tipi di istanza select per migliorare le prestazioni della pipeline o per risolvere i problemi di memoria durante l'esecuzione della pipeline. È possibile configurare i tipi di istanza quando si creare o modificare una pipeline con l'API REST o nell'interfaccia utente di Delta Live Tables.
Per configurare i tipi di istanza quando si crea o si modifica una pipeline nell'interfaccia utente di Delta Live Tables:
- Fare clic sul pulsante Settings .
- Nella sezione Advanced delle impostazioni della pipeline, nel Tipo di lavoro e Tipo di driver menu a discesa select i tipi di istanza per la pipeline.
Configurazioni di calcolo avanzate
Nota
Poiché le risorse di calcolo sono completamente gestite per le pipeline DLT Serverless, le impostazioni di calcolo non sono disponibili quando si selectServerless per una pipeline.
Ogni pipeline Delta Live Tables ha due cluster associati:
- Il cluster
updates
elabora gli aggiornamenti della pipeline. - Il cluster
maintenance
esegue attività di manutenzione giornaliere.
Le impostazioni di calcolo specificate usando l'interfaccia utente di configurazione della pipeline dell'area di lavoro si applicano sia ai cluster di update che ai cluster di manutenzione. È necessario modificare la configurazione JSON per modificare queste impostazioni in modo indipendente.
La configurazione usata da questi cluster è determinata dall'attributo clusters
specificato nelle impostazioni della pipeline.
Usando le etichette del cluster, è possibile aggiungere impostazioni di calcolo applicabili solo a un tipo di cluster specifico. Per la configurazione dei cluster della pipeline è possibile usare tre etichette:
Nota
L'impostazione dell'etichetta del cluster può essere omessa se si definisce una sola configurazione del cluster. L'etichetta default
viene applicata alle configurazioni del cluster se non viene fornita alcuna impostazione per l'etichetta. L'impostazione dell'etichetta del cluster è necessaria solo se si devono personalizzare le impostazioni per tipi di cluster diversi.
- L'etichetta
default
definisce le impostazioni di calcolo per iupdates
cluster emaintenance
. L'applicazione delle stesse impostazioni a entrambi i cluster migliora l'affidabilità delle esecuzioni di manutenzione assicurandosi che le configurazioni necessarie, ad esempio l'accesso ai dati credentials per un percorso di archiviazione, vengano applicate al cluster di manutenzione. - L'etichetta
maintenance
definisce le impostazioni di calcolo applicabili solo al clustermaintenance
. È anche possibile usare l'etichettamaintenance
per eseguire l'override delle impostazioni configurate dall'etichettadefault
. - L'etichetta
updates
definisce le impostazioni che si applicano solo al clusterupdates
. Usarlo per configurare le impostazioni che non devono essere applicate almaintenance
cluster.
Le impostazioni definite usando le etichette default
e updates
vengono unite per creare la configurazione finale per il cluster updates
. Se la stessa impostazione viene definita usando entrambe le etichette default
e updates
, l'impostazione definita con l'etichetta updates
sostituisce l'impostazione definita con l'etichetta default
.
L'esempio seguente definisce un parametro di configurazione Spark aggiunto solo alla configurazione per il cluster updates
:
{
"clusters": [
{
"label": "default",
"autoscale": {
"min_workers": 1,
"max_workers": 5,
"mode": "ENHANCED"
}
},
{
"label": "updates",
"spark_conf": {
"key": "value"
}
}
]
}
Delta Live Tables offre opzioni analoghe a quelle di altre risorse di calcolo per quanto riguarda le impostazioni del cluster in Azure Databricks. Analogamente ad altre impostazioni della pipeline, è possibile modificare la configurazione JSON per i cluster per specificare le opzioni non presenti nell'interfaccia utente. Vedere Ambiente di calcolo.
Nota
Poiché il runtime di Delta Live Tables gestisce il ciclo di vita dei cluster della pipeline ed esegue una versione personalizzata di Databricks Runtime, non è possibile set manualmente alcune impostazioni del cluster nella configurazione della pipeline, ad esempio la versione di Spark o i nomi dei cluster. Vedere Attributi del cluster che non sono impostabili dall'utente.
Configurare i tipi di istanza per update e per i cluster di manutenzione
Per configurare i tipi di istanza nelle impostazioni JSON della pipeline, fare clic sul pulsante JSON e immettere le configurazioni del tipo di istanza nella configurazione del cluster:
Nota
Per evitare di assegnare risorse non necessarie al cluster maintenance
, in questo esempio viene usata l'etichetta updates
per set i tipi di istanza solo per il cluster updates
. Per assegnare i tipi di istanza a entrambi i cluster updates
e maintenance
, usare l'etichetta default
o omettere l'impostazione per l'etichetta. Se non viene fornita alcuna impostazione per l'etichetta, l'etichetta default
viene applicata alle configurazioni del cluster della pipeline. Vedere Configurazioni di calcolo avanzate.
{
"clusters": [
{
"label": "updates",
"node_type_id": "Standard_D12_v2",
"driver_node_type_id": "Standard_D3_v2",
"..." : "..."
}
]
}
Arresto ritardato del calcolo
Per controllare il comportamento di arresto del cluster, è possibile usare la modalità di sviluppo o di produzione oppure usare l'impostazione pipelines.clusterShutdown.delay
nella configurazione della pipeline. Nell'esempio seguente il valore pipelines.clusterShutdown.delay
viene impostato su 60 secondi:
{
"configuration": {
"pipelines.clusterShutdown.delay": "60s"
}
}
Quando è abilitata la modalità production
, il valore predefinito per pipelines.clusterShutdown.delay
è 0 seconds
. Quando è abilitata la modalità development
, il valore predefinito è 2 hours
.
Nota
Poiché un cluster Delta Live Tables si arresta automaticamente quando non è in uso, fare riferimento a un criterio del cluster che imposta autotermination_minutes
nella configurazione del cluster genera un errore.
Creare un cluster a nodo singolo
Se imposti setnum_workers
a 0 nelle impostazioni del cluster, il cluster viene creato come un cluster a nodo singolo . La configurazione di un cluster di scalabilità automatica e l'impostazione di min_workers
su 0 e max_workers
su 0 crea un cluster a nodo singolo.
Se si configura un cluster di scalabilità automatica e set solo min_workers
su 0, il cluster non viene creato come cluster a nodo singolo. Il cluster ha sempre almeno un ruolo di lavoro attivo fino al completamento.
Configurazione del cluster di esempio per creare un cluster a nodo singolo in Delta Live Tables:
{
"clusters": [
{
"num_workers": 0
}
]
}