Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Prediktivní optimalizace se automaticky spouští OPTIMIZEVACUUMa ANALYZE v tabulkách spravovaných v katalogu Unity (Delta Lake a Iceberg) na Azure Databricks, což eliminuje ruční údržbu a čas strávený sledováním problémů s výkonem.
Poznámka:
Prediktivní optimalizace je ve výchozím nastavení povolená pro účty vytvořené 11. listopadu 2024 nebo po 11. listopadu 2024. Databricks tuto funkci postupně zpřístupňuje pro stávající účty. Toto zavedení se očekává do srpna 2026. Pokud chcete zkontrolovat, jestli je váš účet už povolený, přečtěte si téma Ověření, jestli je povolená prediktivní optimalizace.
Když je povolená prediktivní optimalizace, Databricks automaticky provede následující:
- Identifikuje tabulky, které by mohly těžit z operací údržby a zařadí tyto operace do front ke spuštění.
- Shromažďuje statistiky při zápisu dat do spravované tabulky.
Tím se eliminují zbytečné běhy údržby a zatížení při ručním sledování a řešení potíží s výkonem.
Databricks doporučuje prediktivní optimalizaci pro všechny spravované tabulky Katalogu Unity. Například automatické shlukování kapalin používá inteligentní optimalizaci rozložení dat na základě vzorů využití dat. Viz Použití metody 'liquid clustering' pro tabulky.
Jaké operace spouští prediktivní optimalizace?
Prediktivní optimalizace spouští následující operace ve spravovaných tabulkách Katalogu Unity:
| Operace | Popis |
|---|---|
OPTIMIZE |
Aktivuje přírůstkové seskupování pro aktivované tabulky. Viz Použití metody 'liquid clustering' pro tabulky. 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ů, které tabulka již neodkazuje. viz Odebrání nepoužívaných datových souborů pomocí příkazu VACUUM. |
ANALYZE |
Prohledává tabulku a shromažďuje statistiky za účelem zlepšení výkonu dotazů. Viz ANALYZE TABLE ... VÝPOČETNÍ STATISTIKA. Pokud chcete odebrat statistiky shromážděné prediktivní optimalizací, přečtěte si...ANALYZE TABLE DROP STATISTICS. |
Poznámka:
OPTIMIZE se nespustí ZORDER při provádění prediktivní optimalizace. U tabulek, které používají pořadí Z, prediktivní optimalizace ignoruje soubory seřazené podle Z.
Pokud je povolené automatické shlukování kapalin, prediktivní optimalizace může před clusteringem dat vybrat nové klíče clusteringu. Viz automatické shlukování kapalin.
Varování
Interval VACUUM uchovávání informací je určen delta.deletedFileRetentionDuration vlastností tabulky, která má výchozí hodnotu 7 dnů.
VACUUM odebere datové soubory, na které už v daném okně neodkazuje verze tabulky Delta. Chcete-li uchovávat data po delší dobu (například pro podporu delšího časového cestování), nastavte tuto vlastnost před povolením prediktivní optimalizace:
ALTER TABLE table_name SET TBLPROPERTIES ('delta.deletedFileRetentionDuration' = '30 days');
Výpočty a fakturace
Prediktivní optimalizace běží ANALYZEa OPTIMIZEVACUUM operace využívající bezserverové výpočetní prostředky pro úlohy. Vašemu účtu bude účtováno za tuto výpočetní službu pomocí skladové položky bezserverové úlohy.
Podívejte se na ceny spravovaných služeb Databricks. Podívejte se na Sledování prediktivní optimalizace pomocí systémových tabulek.
Předpoklady
Aby bylo možné použít prediktivní optimalizaci, musí být splněny následující požadavky:
- Váš pracovní prostor Azure Databricks musí být v plánu Premium v podporované oblasti.
- 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ě požadujete privátní připojení, nakonfigurujte bezserverové privátní připojení. Viz Konfigurace privátního připojení k prostředkům Azure.
Povolení prediktivní optimalizace
Můžete povolit prediktivní optimalizaci pro účet, katalog, schéma nebo tabulku. Všechny spravované tabulky katalogu Unity dědí ve výchozím nastavení hodnotu účtu. Výchozí nastavení účtu můžete přepsat na úrovni katalogu, schématu nebo tabulky.
Abyste mohli povolit nebo zakázat prediktivní optimalizaci, musíte mít následující oprávnění:
| Objekt katalogu Unity | Oprávnění |
|---|---|
| Účet | Správce účtu |
| Katalog | Vlastník katalogu nebo uživatel s oprávněním MANAGE v katalogu |
| Schéma | Vlastník schématu nebo uživatel s oprávněním MANAGE ke schématu |
| Tabulka | Vlastník tabulky nebo uživatel s oprávněním MANAGE k tabulce |
Povolení nebo zakázání prediktivní optimalizace pro váš účet
Správce účtu může povolit prediktivní optimalizaci pro všechny metastory v účtu. Katalogy a schémata zdědí toto nastavení ve výchozím nastavení, ale můžete ho přepsat na každé z úrovní.
- Přejděte do konzoly účtů.
- Přejděte do Nastavení a pak povolte funkci.
- Vyberte požadovanou možnost (například Povoleno) vedle možnosti Prediktivní optimalizace.
Poznámka:
- Metastory v oblastech, které nepodporují prediktivní optimalizaci, nejsou povolené.
- Zakázání prediktivní optimalizace na úrovni účtu ho nezakazuje pro katalogy nebo schémata, která je výslovně povolila.
Povolení nebo zakázání prediktivní optimalizace pro katalog, schéma nebo tabulku
Prediktivní optimalizace používá model dědičnosti. Pokud je pro katalog povoleno, schémata v daném katalogu dědí nastavení a tabulky v rámci povoleného schématu také. Pokud chcete toto chování přepsat, můžete explicitně povolit nebo zakázat prediktivní optimalizaci katalogu, schématu nebo tabulky.
Poznámka:
Před povolením na úrovni účtu můžete prediktivní optimalizaci zakázat na úrovni katalogu, schématu nebo tabulky. Pokud je prediktivní optimalizace později povolená na úrovni účtu, zůstane blokovaná pro objekty, které ho výslovně zakázaly.
Pomocí následující syntaxe povolte, zakažte nebo resetujte prediktivní optimalizaci, která dědí z nadřazeného objektu:
ALTER CATALOG [catalog_name] { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;
ALTER { SCHEMA | DATABASE } schema_name { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;
ALTER TABLE table_name { ENABLE | DISABLE | INHERIT } PREDICTIVE OPTIMIZATION;
Viz ALTER TABLE.
Ověření, jestli je povolená prediktivní optimalizace
Toto Predictive Optimization pole je vlastnost katalogu Unity, která ukazuje, jestli je povolená prediktivní optimalizace. Pokud je nastavení zděděno z nadřazeného objektu, hodnota pole to označuje.
Ke kontrole stavu použijte následující syntaxi:
DESCRIBE (CATALOG | SCHEMA | TABLE) EXTENDED name
Kontrola, proč prediktivní optimalizace přeskočila tabulku
Po vyhodnocení spravované tabulky DESCRIBE TABLE EXTENDED ... AS JSON v Databricks Runtime 18 a novějších se po prediktivní optimalizaci ve výstupu zobrazí část Vyhodnocení prediktivní optimalizace . Tato část uvádí jednotlivé typy operací a důvod, proč přeskočil všechny operace.
Pokud chcete zkontrolovat výsledky vyhodnocení tabulky, spusťte následující příkaz:
DESCRIBE TABLE EXTENDED catalog_name.schema_name.table_name AS JSON
V části vyhodnocení se zobrazí nejnovější výsledek pro každý typ operace. Výsledky jsou okamžité: zobrazuje se pouze nejnovější hodnocení bez historie. Zobrazení výsledků může trvat až 24 hodin.
Výstup vyhodnocení nezobrazuje důvody pro přeskočení ANALYZE operací.
Použijte kartu Historie v Průzkumníku katalogu
Důvody přeskočení můžete zobrazit na kartě Historie u tabulky v Průzkumníku katalogu. Ve sloupci Operace popisek Auto označuje, že operace proběhla, a popisek Neaplikováno označuje, že operace byla přeskočena. Označení Auto zahrnuje prediktivní optimalizaci a další automatické operace, jako je automatické zhušťování streamu.
Pokud chcete zobrazit důvod přeskočení, klikněte na řádek s popiskem Nepoužité ve sloupci Operace .
Následující tabulka ukazuje, jak typy operací ve výstupu DESCRIBE TABLE EXTENDED odpovídají operacím zobrazeným v Průzkumníku katalogu:
DESCRIBE TABLE EXTENDED typ operace |
Operace Průzkumníka katalogu | Popis |
|---|---|---|
COMPACTION |
OPTIMIZE |
Komprimace souborů za účelem zlepšení výkonu dotazů |
CLUSTERING |
OPTIMIZE |
Přírůstkové shlukování kapalin |
AUTO_CLUSTERING_COLUMN_SELECTION |
AUTO LIQUID |
Vyhodnocení nebo vývoj klíčů pro shlukování kapalin |
VACUUM |
VACUUM |
Odstranění datových souborů, na které tabulka již neodkazuje |
Sledování prediktivní optimalizace pomocí systémových tabulek
Databricks poskytuje systémovou tabulku system.storage.predictive_optimization_operations_history pro pozorovatelnost operací prediktivní optimalizace, nákladů a dopadu. Viz tabulkovou referenci 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, nemusí být bezserverové privátní propojení správně nakonfigurované. Viz Konfigurace privátního připojení k prostředkům Azure.
Omezení
Prediktivní optimalizace se nespustí u následujících typů tabulek:
- Tabulky nahrané do pracovního prostoru pro příjemce OpenSharingu
- Externí tabulky