Condividi tramite


Configurare il calcolo per una pipeline di tabelle live Delta

Questo articolo contiene istruzioni e considerazioni per la configurazione delle impostazioni di calcolo personalizzate per le pipeline di tabelle live Delta.

Le pipeline serverless non forniscono opzioni di configurazione di calcolo. Vedere Configurare una pipeline di tabelle live Delta serverless.

Selezionare un criterio del cluster

Gli utenti devono disporre dell'autorizzazione per distribuire le risorse di calcolo per configurare e aggiornare le pipeline delle tabelle 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 le tabelle Delta Live. Vedere Definire i limiti per il calcolo della pipeline delle tabelle Delta Live.

Nota

  • I criteri del cluster sono facoltativi. Rivolgersi all'amministratore dell'area di lavoro se non sono necessari i privilegi di calcolo necessari per le tabelle Live Delta.

  • Per assicurarsi che i valori predefiniti dei criteri del cluster siano applicati correttamente, impostare su apply_policy_default_values true 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 cluster nell'interfaccia utente di Tabelle live Delta quando si crea o si modifica una pipeline o modificando le impostazioni JSON per i cluster della pipeline.

Selezionare i tipi di istanza per eseguire una pipeline

Per impostazione predefinita, Le tabelle live Delta selezionano i tipi di istanza per i nodi driver e di lavoro della pipeline. Facoltativamente, è possibile configurare i tipi di istanza.

Ad esempio, selezionare i tipi di istanza per migliorare le prestazioni della pipeline o risolvere i problemi di memoria durante l'esecuzione della pipeline. È possibile configurare i tipi di istanza quando si crea o modifica una pipeline con l'API REST o nell'interfaccia utente di Tabelle Delta Live.

Per configurare i tipi di istanza quando si crea o si modifica una pipeline nell'interfaccia utente di Tabelle Delta Live:

  1. Fare clic sul pulsante Settings .
  2. Nella sezione Avanzate delle impostazioni della pipeline, nei menu a discesa Tipo di lavoro e Tipo di driver selezionare 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 seleziona Serverless per una pipeline.

Ogni pipeline di 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 aggiornamento che 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 i updates cluster e maintenance . L'applicazione delle stesse impostazioni a entrambi i cluster migliora l'affidabilità delle esecuzioni di manutenzione assicurandosi che le configurazioni necessarie, ad esempio le credenziali di accesso ai dati per un percorso di archiviazione, vengano applicate al cluster di manutenzione.
  • L'etichetta maintenance definisce le impostazioni di calcolo applicabili solo al cluster maintenance. È anche possibile usare l'etichetta maintenance per eseguire l'override delle impostazioni configurate dall'etichetta default.
  • L'etichetta updates definisce le impostazioni che si applicano solo al cluster updates. Usarlo per configurare le impostazioni che non devono essere applicate al maintenance 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"
      }
    }
  ]
}

Le tabelle Delta Live hanno opzioni simili per le impostazioni del cluster come altre risorse di calcolo 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 impostare manualmente alcune impostazioni del cluster in una configurazione della pipeline, ad esempio la versione di Spark o i nomi del cluster. Vedere Attributi del cluster che non sono impostabili dall'utente.

Configurare i tipi di istanza per i cluster di aggiornamento e 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 impostare 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 num_workers viene impostato su 0 nelle impostazioni del cluster, il cluster viene creato come Cluster a nodo singolo. La configurazione di un cluster di scalabilità automatica e l'impostazione min_workers su 0 e max_workers su 0 crea un cluster a nodo singolo.

Se si configura un cluster di scalabilità automatica e si imposta 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.

Di seguito è riportato un esempio di configurazione del cluster per creare un cluster a nodo singolo nelle Delta Live Table:

{
    "clusters": [
      {
        "num_workers": 0
      }
    ]
}