Prediktív optimalizálás a Delta Lake-hez

Fontos

Ez a funkció a nyilvános előzetes verzióban érhető el.

A prediktív optimalizálás nem igényli manuálisan a karbantartási műveleteket az Azure Databricks Delta-tábláihoz.

Ha engedélyezve van a prediktív optimalizálás, az Azure Databricks automatikusan azonosítja azokat a táblákat, amelyek kihasználnák a karbantartási műveleteket, és futtatják őket a felhasználó számára. A karbantartási műveletek csak szükség szerint futnak, így kiküszöbölik a karbantartási műveletek szükségtelen futását, valamint a nyomon követési és hibaelhárítási teljesítményhez kapcsolódó terheket.

Milyen műveleteket futtat a prediktív optimalizálás?

A prediktív optimalizálás automatikusan futtatja a következő műveleteket az engedélyezett Delta-táblák esetében:

Művelet Leírás
OPTIMIZE A fájlméretek optimalizálásával javítja a lekérdezés teljesítményét. Lásd: Adatfájlok tömörítése optimalizálással a Delta Lake-en.
VACUUM Csökkenti a tárolási költségeket a tábla által már nem hivatkozott adatfájlok törlésével. Lásd: A nem használt adatfájlok eltávolítása vákuummal.

Feljegyzés

OPTIMIZE nem fut ZORDER , ha prediktív optimalizálással hajtják végre.

Figyelmeztetés

A parancs adatmegőrzési időtartamát a VACUUMdelta.deletedFileRetentionDuration táblatulajdonság határozza meg, amely alapértelmezés szerint 7 nap. Ez azt jelenti VACUUM , hogy eltávolítja azokat az adatfájlokat, amelyekre már nem hivatkozik a Delta-tábla verziója az elmúlt 7 napban. Ha hosszabb ideig szeretné megőrizni az adatokat (például hosszabb ideig szeretné támogatni az időutazást), a prediktív optimalizálás engedélyezése előtt megfelelően be kell állítania ezt a táblatulajdonságot, ahogyan az alábbi példában is látható:

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

Hol fut a prediktív optimalizálás?

A prediktív optimalizálás azonosítja azokat a táblákat, amelyek hasznosak OPTIMIZE lennének, és VACUUM a feladatok számítási feladatainak futtatásához várólistára állítja őket. A fiók a Databricks felügyelt szolgáltatásaira vonatkozó termékváltozat használatával számlázódik ki az ezekhez a számítási feladatokhoz társított számítási feladatokért. Tekintse meg a Databricks által felügyelt szolgáltatások díjszabását. Az Azure Databricks rendszertáblákat biztosít a prediktív optimalizálási műveletek, költségek és hatások megfigyelhetőségéhez. Lásd: A prediktív optimalizálás nyomon követése rendszertáblák használatával.

Feljegyzés

A prediktív optimalizálás nem futtat OPTIMIZE parancsokat folyékony fürtözést használó táblákon.

A prediktív optimalizálás előfeltételei

A prediktív optimalizálás engedélyezéséhez az alábbi követelményeknek kell megfelelnie:

Prediktív optimalizálás engedélyezése

A fiók szintjén engedélyeznie kell a prediktív optimalizálást.

A prediktív optimalizálás engedélyezéséhez vagy letiltásához a következő jogosultságokkal kell rendelkeznie a megadott szinten:

Unity Catalog-objektum Jogosultság
Számla Fiókadminisztrátor
Katalógus Katalógus tulajdonosa
Séma Séma tulajdonosa

Feljegyzés

Amikor első alkalommal engedélyezi a prediktív optimalizálást, az Azure Databricks automatikusan létrehoz egy szolgáltatásnevet az Azure Databricks-fiókjában. Az Azure Databricks ezt a szolgáltatásnevet használja a kért karbantartási műveletek végrehajtásához. Tekintse meg az alkalmazáspéldányok kezelését ismertető cikket.

Prediktív optimalizálás engedélyezése a fiókhoz

A fiókadminisztrátornak a következő lépéseket kell végrehajtania ahhoz, hogy a fiók összes metaadattára prediktív optimalizálást engedélyezhessen:

  1. Hozzáférés a fiókkonzolhoz.
  2. Lépjen a Gépház, majd a Funkció engedélyezése elemre.
  3. Válassza az Engedélyezve lehetőséget a prediktív optimalizálás mellett.

Feljegyzés

A prediktív optimalizálást nem támogató régiókban lévő metaadattárak nincsenek engedélyezve.

Prediktív optimalizálás engedélyezése vagy letiltása katalógushoz vagy sémához

A prediktív optimalizálás öröklési modellt használ. Ha a katalógus engedélyezve van, a sémák öröklik a tulajdonságot. Az engedélyezett sémán belüli táblák öröklik a prediktív optimalizálást. Az öröklési viselkedés felülbírálásához explicit módon letilthatja a katalógus vagy séma prediktív optimalizálását.

Feljegyzés

A prediktív optimalizálást letilthatja a katalógus vagy a séma szintjén, mielőtt fiókszinten engedélyezné. Ha a prediktív optimalizálás később engedélyezve van a fiókban, akkor az ezekben az objektumokban lévő táblák esetében le lesz tiltva.

A prediktív optimalizálás engedélyezéséhez vagy letiltásához használja az alábbi szintaxist:

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

Ellenőrizze, hogy engedélyezve van-e a prediktív optimalizálás

A Predictive Optimization mező egy Unity Catalog tulajdonság, amely részletezi, hogy engedélyezve van-e a prediktív optimalizálás. Ha a prediktív optimalizálás egy szülőobjektumtól öröklődik, ez a mezőértékben jelenik meg.

A következő szintaxis segítségével állapítsa meg, hogy engedélyezve van-e a prediktív optimalizálás:

DESCRIBE (CATALOG | SCHEMA | TABLE) EXTENDED name

A prediktív optimalizálás nyomon követése rendszertáblák használatával

Az Azure Databricks egy rendszertáblát biztosít a prediktív optimalizálási műveletek előzményeinek nyomon követéséhez. Lásd a prediktív optimalizálási rendszer táblázatának hivatkozását.

Korlátozások

A prediktív optimalizálás nem érhető el minden régióban. Tekintse meg az Azure Databricks-régiókat.

A prediktív optimalizálás nem futtat OPTIMIZE parancsokat folyékony fürtözést vagy Z-sorrendet használó táblákon.

A prediktív optimalizálás nem végez karbantartási műveleteket a következő táblákon: