Osvědčené postupy konfigurace výpočetních prostředků

Tento článek popisuje doporučení pro nastavení volitelných konfigurací výpočetních prostředků. Aby se snížila rozhodnutí o konfiguraci, Azure Databricks doporučuje využívat zásady výpočetních prostředků bez serveru i výpočetních prostředků.

  • Bezserverové výpočetní prostředky nevyžadují konfiguraci nastavení výpočetních prostředků. Bezserverové výpočetní prostředky jsou vždy dostupné a škálují se podle vašich úloh. Viz typy výpočetních prostředků.

  • Zásady výpočetních prostředků umožňují vytvářet předem nakonfigurované výpočetní prostředky navržené pro konkrétní případy použití, jako jsou osobní výpočetní prostředky, sdílené výpočetní prostředky, výkonní uživatelé a úlohy. Pokud nemáte přístup k zásadám, obraťte se na správce pracovního prostoru. Viz Výchozí zásady a rodiny zásad.

Pokud se rozhodnete vytvořit výpočetní prostředky s vlastními konfiguracemi, níže uvedené části poskytují doporučení pro typické případy použití.

Poznámka:

Tento článek předpokládá, že máte neomezené vytváření clusteru. Správci pracovních prostorů by toto oprávnění měli udělit jenom pokročilým uživatelům.

Důležité informace o velikosti výpočetních prostředků

Lidé často zvažovat velikost výpočetních prostředků z hlediska počtu pracovních procesů, ale je potřeba vzít v úvahu i další důležité faktory:

  • Total Executor cores (compute): Celkový počet jader napříč všemi exekutory. Určuje maximální paralelismus výpočetních prostředků.
  • Celková paměť exekutoru: Celková velikost paměti RAM napříč všemi exekutory. Určuje, kolik dat může být uloženo v paměti před jejich přelitím na disk.
  • Místní úložiště exekutoru: Typ a množství místního diskového úložiště. Místní disk se primárně používá v případě přelití během náhodného prohazování a ukládání do mezipaměti.

Mezi další aspekty patří typ a velikost instance pracovního procesu, které také ovlivňují výše uvedené faktory. Při nastavování velikosti výpočetních prostředků zvažte:

  • Kolik dat bude vaše úloha spotřebovávat?
  • Jaká je výpočetní složitost vaší úlohy?
  • Odkud čtete data?
  • Jak jsou data rozdělená do externího úložiště?
  • Kolik paralelismu potřebujete?

Zodpovězení těchto otázek vám pomůže určit optimální konfigurace výpočetních prostředků na základě úloh.

Existuje vyrovnávání mezi počtem pracovních procesů a velikostí typů instancí pracovního procesu. Konfigurace výpočetních prostředků se dvěma pracovními procesy, každý se 40 jádry a 100 GB paměti RAM, má stejný výpočetní výkon a paměť jako konfigurace výpočetních prostředků s 10 jádry a 25 GB paměti RAM.

Příklady určení velikosti výpočetních prostředků

Následující příklady ukazují doporučení výpočetních prostředků na základě konkrétních typů úloh. Mezi tyto příklady patří také konfigurace, které se mají vyhnout a proč tyto konfigurace nejsou vhodné pro typy úloh.

Analýza dat

Datoví analytici obvykle provádějí zpracování vyžadující data z více oddílů, což vede k mnoha operacím náhodného prohazování. Výpočetní prostředky s menším počtem uzlů můžou snížit počet vstupně-výstupních operací sítě a disku potřebných k provedení těchto náhodného prohazování.

Pokud píšete jenom SQL, nejlepší možností pro analýzu dat bude bezserverový SQL Warehouse.

Poznámka:

Pokud je váš pracovní prostor povolený pro bezserverové výpočetní prostředí ve verzi Public Preview, můžete ke spuštění analýzy v Pythonu nebo SQL použít bezserverové výpočetní prostředí. Viz Výpočetní prostředí bez serveru pro poznámkové bloky.

Pokud potřebujete nakonfigurovat nový výpočetní výkon, je nejlepší volbou výpočetní prostředí s jedním uzlem s velkým typem virtuálního počítače, zejména pro jednoho analytika.

Analytické úlohy budou pravděpodobně vyžadovat opakované čtení stejných dat, takže doporučené typy uzlů jsou úložiště optimalizované s povolenou mezipamětí disku.

Mezi další funkce doporučené pro analytické úlohy patří:

  • Povolte automatické ukončení, abyste zajistili ukončení výpočetních prostředků po určité době nečinnosti.
  • Zvažte povolení automatického škálování na základě typické úlohy analytika.
  • Zvažte použití fondů, které umožní omezit výpočetní prostředky na předem schválené typy instancí a zajistit konzistentní konfigurace výpočetních prostředků.

Základní dávka ETL

Poznámka:

Pokud je váš pracovní prostor povolený pro bezserverové výpočetní prostředky pro pracovní postupy (Public Preview), můžete ke spouštění úloh použít bezserverové výpočetní prostředky. Viz Výpočetní prostředí bez serveru pro poznámkové bloky.

Jednoduché dávkové úlohy ETL, které nevyžadují rozsáhlé transformace, jako jsou spojení nebo agregace, mají obvykle výhodu z typů pracovních procesů optimalizovaných pro výpočty.

Pracovní procesy optimalizované pro výpočty mají nižší požadavky na paměť a úložiště a můžou vést k úsporám nákladů oproti jiným typům pracovních procesů.

Komplexní dávkové ETL

Poznámka:

Pokud je váš pracovní prostor povolený pro bezserverové výpočetní prostředky pro pracovní postupy (Public Preview), můžete ke spouštění úloh použít bezserverové výpočetní prostředky. Viz Výpočetní prostředí bez serveru pro poznámkové bloky.

U komplexní úlohy ETL, například úlohy, která vyžaduje sjednocení a spojení napříč více tabulkami, doporučuje Databricks snížit počet pracovních procesů, aby se snížil objem dat prohazovaných dat.

Složité transformace můžou být náročné na výpočetní výkon. Pokud zaznamenáte významné přelití na disk nebo chyby OOM, měli byste přidat další uzly.

Databricks doporučuje typy pracovních procesů optimalizované pro výpočty. Pracovní procesy optimalizované pro výpočty mají nižší požadavky na paměť a úložiště a můžou vést k úsporám nákladů oproti jiným typům pracovních procesů. Volitelně můžete pomocí fondů snížit časy spuštění výpočetních prostředků a snížit celkový běh při spouštění kanálů úloh.

Trénování modelů strojového učení

Databricks doporučuje výpočetní prostředky s jedním uzlem s velkým typem uzlu pro počáteční experimentování s trénovacími modely strojového učení. Menší počet uzlů snižuje dopad náhodného prohazování.

Přidání dalších pracovníků může pomoct se stabilitou, ale měli byste se vyhnout přidávání příliš mnoha pracovních procesů kvůli režii při náhodném prohazování dat.

Doporučené typy pracovních procesů jsou úložiště optimalizované pro ukládání do mezipaměti na disku, aby se zohlednily opakované čtení stejných dat a aby bylo možné ukládání trénovacích dat do mezipaměti. Pokud výpočetní prostředky a možnosti úložiště poskytované uzly optimalizovanými pro úložiště nestačí, zvažte uzly optimalizované pro GPU. Možnou nevýhodou je nedostatek podpory ukládání do mezipaměti disku s těmito uzly.

Mezi další funkce doporučené pro úlohy strojového učení patří:

  • Povolte automatické ukončení, abyste zajistili ukončení výpočetních prostředků po určité době nečinnosti.
  • Použijte fondy, které umožní omezit výpočetní prostředky na předem schválené typy instancí a zajistit konzistentní konfigurace výpočetních prostředků.