Prediktivní optimalizace spravovaných tabulek v Katalogu Unity

Prediktivní optimalizace eliminuje potřebu ruční správy operací údržby pro spravované tabulky Katalogu Unity v Azure Databricks.

Díky povolené prediktivní optimalizaci Azure Databricks automaticky identifikuje tabulky, které by mohly těžit z operací údržby a spouští je pro uživatele. Operace údržby se spouštějí pouze podle potřeby, takže eliminují nepotřebná spuštění operací údržby a zatížení spojené se sledováním a řešením potíží s výkonem.

Důležité

Prediktivní optimalizace se spouští pouze ve spravovaných tabulkách Katalogu Unity.

Prediktivní optimalizace se nespouští na streamovaných tabulkách nebo materializovaných zobrazeních vytvořených v Databricks SQL nebo pomocí kanálů Delta Live Tables.

Jaké operace se spouští prediktivní optimalizace?

Prediktivní optimalizace spouští následující operace automaticky pro povolené tabulky:

Operation Popis
OPTIMIZE(1) Aktivuje přírůstkové clustering pro povolené tabulky. Viz Použití liquid clusteringu pro tabulky Delta.

Zlepšuje výkon dotazů optimalizací velikostí souborů. Viz Optimalizace rozložení datového souboru.
VACUUM Snižuje náklady na úložiště odstraněním datových souborů, na které už tabulka odkazuje. Viz Odebrání nepoužívaných datových souborů pomocí vakua.
ANALYZE(2) Aktivuje přírůstkovou aktualizaci statistik za účelem zlepšení výkonu dotazů.

(1) OPTIMIZE se nespustí ZORDER při provádění s prediktivní optimalizací.

(2) Prediktivní optimalizace je ANALYZE ve verzi Public Preview. Zahrnuje inteligentní stastistické kolekce během zápisů. Pomocí tohoto formuláře se zaregistrujte do verze Public Preview. Během počáteční verze Public Preview ANALYZE se příkazy můžou spouštět v tabulkách s až 1 TB dat a méně než 500 sloupců.

Upozorňující

Okno uchovávání informací pro VACUUM příkaz je určeno delta.deletedFileRetentionDuration vlastností tabulky, která má výchozí hodnotu 7 dnů. To znamená VACUUM , že odebere datové soubory, na které už v posledních 7 dnech neodkazuje verze tabulky Delta. Pokud chcete uchovávat data delší dobu (například pro podporu doby trvání delší doby trvání), musíte tuto vlastnost tabulky nastavit odpovídajícím způsobem, než povolíte prediktivní optimalizaci, jako v následujícím příkladu:

ALTER TABLE table_name SET TBLPROPERTIES ('delta.deletedFileRetentionDuration' = '30 days');

Kde se spouští prediktivní optimalizace?

Prediktivní optimalizace identifikuje tabulky, které by mohly být přínosné ANALYZEOPTIMIZE, a operace a VACUUM zařadí je do fronty pro spouštění pomocí bezserverového výpočetního prostředí pro úlohy. Váš účet se účtuje za výpočetní prostředky přidružené k těmto úlohám pomocí skladové položky specifické pro spravované služby Databricks. Podívejte se na ceny spravovaných služeb Databricks. Azure Databricks poskytuje systémové tabulky pro pozorovatelnost operací prediktivní optimalizace, nákladů a dopadu. Viz Použití systémových tabulek ke sledování prediktivní optimalizace.

Požadavky na prediktivní optimalizaci

Pokud chcete povolit prediktivní optimalizaci, musíte splnit následující požadavky:

  • Váš pracovní prostor Azure Databricks musí být v plánu Premium v oblasti, která podporuje prediktivní optimalizaci. Viz oblasti Azure Databricks.

  • Pokud povolíte prediktivní optimalizaci, musíte použít sql warehouses nebo Databricks Runtime 12.2 LTS nebo vyšší.

  • Podporují se jenom spravované tabulky Katalogu Unity.

  • Pokud pro účty úložiště vyžadujete privátní připojení, musíte nakonfigurovat bezserverové privátní připojení. Viz Konfigurace privátního připojení z bezserverového výpočetního prostředí.

Povolení prediktivní optimalizace

Na úrovni účtu musíte povolit prediktivní optimalizaci.

Pokud chcete povolit nebo zakázat prediktivní optimalizaci na zadané úrovni, musíte mít následující oprávnění:

Objekt katalogu Unity Oprávnění
Obchodní vztah Správce účtu
Katalog Vlastník katalogu
Schéma Vlastník schématu

Poznámka:

Když poprvé povolíte prediktivní optimalizaci, Azure Databricks automaticky vytvoří instanční objekt ve vašem účtu Azure Databricks. Azure Databricks používá tento instanční objekt k provádění požadovaných operací údržby. Viz Správa instančních objektů.

Povolení prediktivní optimalizace pro váš účet

Správce účtu musí provést následující kroky, aby bylo možné povolit prediktivní optimalizaci pro všechny metastory v účtu:

  1. Přejděte ke konzole účtů.
  2. Přejděte do Nastavení a pak povolte funkci.
  3. Vyberte Možnost Povoleno vedle možnosti Prediktivní optimalizace.

Poznámka:

Metastory v oblastech, které nepodporují prediktivní optimalizaci, nejsou povolené.

Povolení nebo zakázání prediktivní optimalizace pro katalog nebo schéma

Prediktivní optimalizace používá model dědičnosti. Pokud je pro katalog povoleno, schémata dědí vlastnost. Tabulky v rámci povoleného schématu dědí prediktivní optimalizaci. Chcete-li toto chování dědičnosti přepsat, můžete explicitně zakázat prediktivní optimalizaci katalogu nebo schématu.

Poznámka:

Před povolením na úrovni účtu můžete prediktivní optimalizaci zakázat na úrovni katalogu nebo schématu. Pokud je v účtu později povolená prediktivní optimalizace, je blokovaná pro tabulky v těchto objektech.

Pomocí následující syntaxe povolte nebo zakažte prediktivní optimalizaci:

ALTER CATALOG [catalog_name] {ENABLE | DISABLE} PREDICTIVE OPTIMIZATION;
ALTER {SCHEMA | DATABASE} schema_name {ENABLE | DISABLE} PREDICTIVE OPTIMIZATION;

Kontrola, jestli je povolená prediktivní optimalizace

Toto Predictive Optimization pole je vlastnost katalogu Unity, která podrobně popisuje, jestli je povolená prediktivní optimalizace. Pokud je prediktivní optimalizace zděděna z nadřazeného objektu, je uvedena v hodnotě pole.

Důležité

Chcete-li zobrazit toto pole, musíte povolit prediktivní optimalizaci na úrovni účtu.

Pomocí následující syntaxe zjistíte, jestli je povolená prediktivní optimalizace:

DESCRIBE (CATALOG | SCHEMA | TABLE) EXTENDED name

Sledování prediktivní optimalizace pomocí systémových tabulek

Azure Databricks poskytuje systémovou tabulku pro sledování historie operací prediktivní optimalizace. Viz referenční informace k tabulce systému prediktivní optimalizace.

Pokud systémová tabulka označí operace jako neúspěšné FAILED: PRIVATE_LINK_SETUP_ERROR, je možné, že jste pro bezserverové výpočetní prostředky správně nenakonfigurovali privátní propojení. Viz Konfigurace privátního připojení z bezserverového výpočetního prostředí.

Omezení

Prediktivní optimalizace není dostupná ve všech oblastech. Viz oblasti Azure Databricks.

Prediktivní optimalizace nespouští OPTIMIZE příkazy u tabulek, které používají pořadí Z.

Prediktivní optimalizace nespouští VACUUM operace s tabulkami s oknem uchovávání souborů nakonfigurovaným pod výchozí hodnotou 7 dnů. Viz Konfigurace uchovávání dat pro dotazy na časové cesty.

Prediktivní optimalizace neprovádí operace údržby v následujících tabulkách: