Optimera klusteranvändningen för Delta Live Tables-pipelines med förbättrad autoskalning

Databricks Enhanced Autoscaling optimerar klusteranvändningen genom att automatiskt allokera klusterresurser baserat på arbetsbelastningsvolym, med minimal påverkan på svarstiden för databearbetning för dina pipelines.

Förbättrad autoskalning förbättrar funktionerna för automatisk skalning i Azure Databricks-klustret med följande funktioner:

  • Förbättrad autoskalning implementerar optimering av strömningsarbetsbelastningar och lägger till förbättringar för att förbättra prestanda för batcharbetsbelastningar. Förbättrad autoskalning optimerar kostnaderna genom att lägga till eller ta bort datorer när arbetsbelastningen ändras.
  • Förbättrad autoskalning stänger proaktivt av underutnyttjade noder samtidigt som det garanteras att det inte finns några misslyckade uppgifter under avstängningen. Den befintliga funktionen för automatisk skalning av kluster skalar bara ned noder om noden är inaktiv.

Förbättrad autoskalning är standardläget för automatisk skalning när du skapar en ny pipeline i Delta Live Tables-användargränssnittet. Du kan aktivera förbättrad autoskalning för befintliga pipelines genom att redigera pipelineinställningarna i användargränssnittet. Du kan också aktivera förbättrad autoskalning när du skapar eller redigerar pipelines med API:et Delta Live Tables.

Aktivera förbättrad autoskalning

Kommentar

Eftersom beräkningsresurser automatiskt optimeras för serverlösa pipelines är inställningarna för Databricks Enhanced Autoscaling inte tillgängliga när du väljer Serverlös (offentlig förhandsversion) för en pipeline.

Om du vill veta mer om hur du aktiverar serverlösa DLT-pipelines kontaktar du ditt Azure Databricks-kontoteam.

Om du vill använda förbättrad autoskalning gör du något av följande:

  • Ange Klusterläge till Förbättrad autoskalning när du skapar en pipeline eller redigerar en pipeline i delta live-tabellgränssnittet.
  • Lägg till inställningen autoscale i konfigurationen av pipelineklustret och ange fältet mode till ENHANCED. Se Konfigurera dina beräkningsinställningar.

Använd följande riktlinjer när du konfigurerar förbättrad autoskalning för produktionspipelines:

  • Låt inställningen Min workers vara som standard.
  • Ange inställningen Max workers till ett värde baserat på budget- och pipelineprioritet.

I följande exempel konfigureras ett utökat autoskalningskluster med minst 5 arbetare och högst 10 arbetare. max_workers måste vara större än eller lika med min_workers.

Kommentar

  • Förbättrad autoskalning är endast tillgängligt för updates kluster. Den befintliga funktionen för autoskalning används för maintenance kluster.
  • Konfigurationen autoscale har två lägen:
    • LEGACY: Använd autoskalning av kluster.
    • ENHANCED: Använd förbättrad autoskalning.
{
  "clusters": [
    {
      "autoscale": {
        "min_workers": 5,
        "max_workers": 10,
        "mode": "ENHANCED"
      }
    }
  ]
}

Pipelinen startas om automatiskt efter att konfigurationen för automatisk skalning ändras om pipelinen har konfigurerats för kontinuerlig körning. Efter omstarten förväntar du dig en kort period med ökad svarstid. Efter den här korta perioden med ökad svarstid bör klusterstorleken uppdateras baserat på din autoscale konfiguration och pipelinens svarstid returneras till dess tidigare svarstidsegenskaper.

Övervaka utökade autoskalningsaktiverade pipelines

Du kan använda händelseloggen i Delta Live Tables-användargränssnittet för att övervaka mått för förbättrad autoskalning. Förbättrade autoskalningshändelser har autoscale händelsetypen. Följande är exempelhändelser:

Event Meddelande
Begäran om klusterstorlek har startats Scaling [up or down] to <y> executors from current cluster size of <x>
Begäran om klusterstorlek har slutförts Achieved cluster size <x> for cluster <cluster-id> with status SUCCEEDED
Begäran om klusterstorlek har delvis slutförts Achieved cluster size <x> for cluster <cluster-id> with status PARTIALLY_SUCCEEDED
Begäran om klusterstorlek misslyckades Achieved cluster size <x> for cluster <cluster-id> with status FAILED

Du kan också visa händelser för förbättrad automatisk skalning genom att fråga händelseloggen direkt: