Sdílet prostřednictvím


Doporučení pro optimalizaci v Azure Databricks

Azure Databricks poskytuje mnoho optimalizací podporujících celou řadu úloh v jezeře, od rozsáhlého zpracování ETL až po ad hoc interaktivní dotazy. Mnohé z těchto optimalizací probíhají automaticky. Jejich výhody získáte jednoduše pomocí Azure Databricks. Kromě toho většina funkcí Databricks Runtime vyžaduje Delta Lake, výchozí formát používaný k vytváření tabulek v Azure Databricks.

Azure Databricks konfiguruje výchozí hodnoty, které optimalizují většinu úloh. V některých případech ale změna nastavení konfigurace zlepšuje výkon.

Vylepšení výkonu Databricks Runtime

Poznámka:

Nejnovější vylepšení výkonu můžete využít pomocí nejnovějšího modulu Databricks Runtime. Všechna zde zdokumentovaná chování jsou ve výchozím nastavení povolená ve službě Databricks Runtime 10.4 LTS a vyšší.

  • Ukládání do mezipaměti na disku zrychluje opakované čtení datových souborů Parquet načtením dat na diskové svazky připojené ke výpočetním clusterům.
  • Dynamické vyřezávání souborů zlepšuje výkon dotazů přeskakováním adresářů, které neobsahují datové soubory, které odpovídají predikátům dotazů.
  • Sloučení s nízkým počtem shuffle snižuje počet datových souborů přepsaných operacemi MERGE a snižuje potřebu přepsat ZORDER clustery.
  • Apache Spark 3.0 zavedl adaptivní spouštění dotazů, které poskytuje vyšší výkon pro mnoho operací.

Doporučení Databricks pro zvýšení výkonu

  • Tabulky v Azure Databricks můžete naklonovat , abyste mohli vytvářet hloubkové nebo mělké kopie zdrojových datových sad.
  • Optimalizátor založený na nákladech zrychluje výkon dotazů díky využití statistik tabulek.
  • Spark SQL můžete použít k interakci s řetězci JSON bez analýzy řetězců.
  • Funkce vyššího pořadí poskytují integrovaný optimalizovaný výkon pro mnoho operací, které nemají běžné operátory Sparku. Vyšší funkce pořadí poskytují výhodu výkonu oproti uživatelem definovaným funkcím.
  • Azure Databricks poskytuje řadu předdefinovaných operátorů a speciální syntaxi pro práci se složitými datovými typy, včetně polí, struktur a řetězců JSON.
  • Nastavení spojení rozsahu můžete ručně ladit. Viz Optimalizace spojení rozsahu.

Chování výslovného souhlasu

  • Azure Databricks poskytuje ve výchozím nastavení záruku serializovatelné izolace zápisu; Změna úrovně izolace na serializovatelnou může snížit propustnost pro souběžné operace, ale může být nutná, pokud je vyžadována serializovatelnost čtení.
  • Indexy filtru bloom můžete použít ke snížení pravděpodobnosti skenování datových souborů, které neobsahují záznamy odpovídající dané podmínce.