Dela via


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

I den här artikeln beskrivs hur du använder förbättrad automatisk skalning för att optimera dina Delta Live Tables-pipelines på Azure Databricks.

Förbättrad autoskalning är aktiverad som standard för alla nya pipelines.

För serverlösa pipelines är förbättrad autoskalning alltid på och kan inte inaktiveras. Se Konfigurera en serverlös Delta Live Tables-pipeline.

Vad är förbättrad autoskalning?

Förbättrad automatisk skalning i Databricks 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 Delta Live Tables-API:et.

Vilka mått använder förbättrad autoskalning för att fatta ett beslut om uppskalning eller nedskalning?

Förbättrad autoskalning använder två mått för att bestämma hur du skalar upp eller ned:

  • Användning av aktivitetsfack: Det här är det genomsnittliga förhållandet mellan antalet upptagna aktivitetsfack och det totala antalet tillgängliga aktivitetsfack i klustret.
  • Storlek på aktivitetskö: Det här är antalet aktiviteter som väntar på att köras i aktivitetsfack.

Aktivera förbättrad autoskalning för en Delta Live Tables-pipeline

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 en pipeline med Delta Live Tables-API:et.

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

  • Ange Klusterläge till Utökad autoskalning när du skapar eller redigerar en pipeline i Delta Live Tables-användargränssnittet.
  • Lägg till inställningen autoscale i konfigurationen av pipelineklustret och ange fältet mode till ENHANCED. Se Konfigurera beräkning för en Delta Live Tables-pipeline.

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 förbättrat 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. Äldre 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"
      }
    }
  ]
}

Om pipelinen har konfigurerats för kontinuerlig körning startas den om automatiskt efter att konfigurationen för automatisk skalning har ändrats. 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 bör återgå till dess tidigare svarstidsegenskaper.

Begränsa kostnader för pipelines som använder förbättrad autoskalning

Kommentar

Du kan inte konfigurera arbetare för serverlösa pipelines.

Om du anger parametern Max workers i fönstret Pipelines Compute anges en övre gräns för automatisk skalning. Att minska antalet tillgängliga arbetare kan öka svarstiden för vissa arbetsbelastningar, men förhindrar att kostnader för beräkningsresurser spricker under beräkningsintensiva åtgärder.

Databricks rekommenderar att du justerar maxinställningarna för arbetare för att balansera kompromissen med kostnadsfördröjningen för dina specifika behov.

Fönstret Beräkning i pipelines-användargränssnittet, där du kan ange Maximalt antal arbetare för automatisk skalning

Övervaka utökade autoskalningsaktiverade klassiska pipelines

Du kan använda händelseloggen i Delta Live Tables-användargränssnittet för att övervaka förbättrade mått för automatisk skalning för klassiska pipelines. 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 förbättrade autoskalningshändelser genom att fråga händelseloggen direkt: