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é ANALYZE
OPTIMIZE
, 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:
- Přejděte ke konzole účtů.
- Přejděte do Nastavení a pak povolte funkci.
- 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.
Chybová zpráva služby Private Link
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:
- Tabulky načtené do pracovního prostoru jako příjemci rozdílového sdílení
- Externí tabulky.
- Materializovaná zobrazení. Viz Použití materializovaných zobrazení v Databricks SQL.
- Streamované tabulky. Viz Načtení dat pomocí streamovaných tabulek v Databricks SQL.