Sdílet prostřednictvím


Optimalizace využití clusteru kanálů Delta Live Tables s vylepšeným automatickým škálováním

Tento článek popisuje, jak pomocí rozšířeného automatického škálování optimalizovat kanály Delta Live Tables v Azure Databricks.

Vylepšené automatické škálování je ve výchozím nastavení povolené pro všechny nové kanály.

U bezserverových kanálů je rozšířené automatické škálování vždy zapnuté a není možné ho zakázat. Viz Konfigurace kanálu bezserverových živých tabulek Delta.

Co je vylepšené automatické škálování?

Vylepšené automatické škálování Databricks optimalizuje využití clusteru automatickým přidělováním prostředků clusteru na základě svazku úloh s minimálním dopadem na latenci zpracování dat vašich kanálů.

Vylepšené automatické škálování vylepšuje funkce automatického škálování clusteru Azure Databricks s následujícími funkcemi :

  • Vylepšené automatické škálování implementuje optimalizaci úloh streamování a přidává vylepšení pro zlepšení výkonu dávkových úloh. Vylepšené automatické škálování optimalizuje náklady přidáním nebo odebráním počítačů při změnách úloh.
  • Vylepšené automatické škálování proaktivně vypne nevyužité uzly a zaručuje, že během vypínání nejsou žádné neúspěšné úlohy. Stávající funkce automatického škálování clusteru vertikálně navyšuje kapacitu uzlů pouze v případě, že je uzel nečinný.

Vylepšené automatické škálování je výchozí režim automatického škálování při vytváření nového kanálu v uživatelském rozhraní Delta Live Tables. Rozšířené automatické škálování pro existující kanály můžete povolit úpravou nastavení kanálu v uživatelském rozhraní. Rozšířené automatické škálování můžete povolit také při vytváření nebo úpravách kanálů pomocí rozhraní Delta Live Tables API.

Které metriky vylepšené automatické škálování používají k rozhodování o vertikálním navýšení nebo snížení kapacity?

Vylepšené automatické škálování využívá dvě metriky k rozhodování o vertikálním navýšení nebo snížení kapacity:

  • Využití slotu úloh: Jedná se o průměrný poměr počtu zaneprázdněných slotů úkolů k celkovému počtu slotů úloh dostupných v clusteru.
  • Velikost fronty úloh: Jedná se o počet úkolů čekajících na spuštění v slotech úloh.

Povolení rozšířeného automatického škálování pro kanál Delta Live Tables

Vylepšené automatické škálování je výchozí režim automatického škálování při vytváření nového kanálu v uživatelském rozhraní Delta Live Tables. Rozšířené automatické škálování pro existující kanály můžete povolit úpravou nastavení kanálu v uživatelském rozhraní. Rozšířené automatické škálování můžete také povolit při vytváření nebo úpravách kanálu pomocí rozhraní Delta Live Tables API.

Pokud chcete použít vylepšené automatické škálování, udělejte jednu z těchto věcí:

  • Při vytváření nebo úpravě kanálu v uživatelském rozhraní Delta Live Tables nastavte režim clusteru na rozšířené automatické škálování .
  • autoscale Přidejte nastavení do konfigurace clusteru kanálu a nastavte mode pole na ENHANCED. Viz Konfigurace výpočetních prostředků pro kanál Delta Live Tables.

Při konfiguraci rozšířeného automatického škálování pro produkční kanály použijte následující pokyny:

  • Min workers Ponechte nastavení ve výchozím nastavení.
  • Max workers Nastavte nastavení na hodnotu na základě priority rozpočtu a kanálu.

Následující příklad nakonfiguruje vylepšený cluster automatického škálování s minimálně 5 pracovními procesy a maximálně 10 pracovních procesů. max_workers musí být větší než nebo rovno min_workers.

Poznámka:

  • Rozšířené automatické škálování je dostupné jenom pro updates clustery. Starší automatické škálování se používá pro maintenance clustery.
  • Konfigurace autoscale má dva režimy:
{
  "clusters": [
    {
      "autoscale": {
        "min_workers": 5,
        "max_workers": 10,
        "mode": "ENHANCED"
      }
    }
  ]
}

Pokud je kanál nakonfigurovaný pro průběžné spouštění, po změně konfigurace automatického škálování se automaticky restartuje. Po restartování očekáváme krátkou dobu zvýšené latence. Po tomto krátkém období zvýšené latence by se měla velikost clusteru aktualizovat na základě vaší autoscale konfigurace a latence kanálu by se měla vrátit k předchozím charakteristikám latence.

Omezení nákladů na kanály, které používají vylepšené automatické škálování

Poznámka:

Pracovní procesy nelze konfigurovat pro bezserverové kanály.

Nastavení parametru Max worker v podokně Výpočty kanálů nastaví horní mez automatického škálování. Snížení počtu dostupných pracovních procesů může u některých úloh zvýšit latenci, ale zabraňuje nárůstu nákladů na výpočetní prostředky během operací náročných na výpočetní výkon.

Databricks doporučuje vyladit nastavení maximálního počtu pracovních procesů , aby se vyrovnaly kompromisy s latencí nákladů pro vaše konkrétní potřeby.

Podokno Výpočty v uživatelském rozhraní Pipelines, kde můžete nastavit maximální počet pracovních procesů pro automatické škálování

Monitorování rozšířených klasických kanálů s povoleným automatickým škálováním

Pomocí protokolu událostí v uživatelském rozhraní Delta Live Tables můžete monitorovat rozšířené metriky automatického škálování pro klasické kanály. Rozšířené události automatického autoscale škálování mají typ události. Následuje příklad událostí:

Událost Zpráva
Žádost o změnu velikosti clusteru se spustila. Scaling [up or down] to <y> executors from current cluster size of <x>
Žádost o změnu velikosti clusteru byla úspěšná. Achieved cluster size <x> for cluster <cluster-id> with status SUCCEEDED
Žádost o částečně úspěšnou změnu velikosti clusteru Achieved cluster size <x> for cluster <cluster-id> with status PARTIALLY_SUCCEEDED
Žádost o změnu velikosti clusteru se nezdařila. Achieved cluster size <x> for cluster <cluster-id> with status FAILED

Rozšířené události automatického škálování můžete zobrazit také přímo dotazováním protokolu událostí: