Prediktív optimalizálás a Delta Lake-hez
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 |
Aktiválja a növekményes fürtözést az engedélyezett táblákhoz. Lásd: Folyékony fürtözés használata Delta-táblákhoz. A fájlméretek optimalizálásával javítja a lekérdezés teljesítményét. Lásd: Adatfájlelrendezés optimalizálása. |
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 VACUUM
delta.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.
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:
Az Azure Databricks-munkaterületnek a Prémium csomagban kell lennie egy olyan régióban, amely támogatja a prediktív optimalizálást. Tekintse meg az Azure Databricks-régiókat.
Ha engedélyezi a prediktív optimalizálást, sql warehouses vagy Databricks Runtime 12.2 LTS vagy újabb verziót kell használnia.
Csak a Unity Catalog által felügyelt táblák támogatottak.
Ha privát kapcsolatot igényel a tárfiókokhoz, konfigurálnia kell a kiszolgáló nélküli privát kapcsolatot. Lásd: Privát kapcsolat konfigurálása kiszolgáló nélküli számításból.
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:
- Hozzáférés a fiókkonzolhoz.
- Lépjen a Beállítások, majd a Funkció engedélyezése elemre.
- 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.
Privát hivatkozás hibaüzenete
Ha a rendszertábla sikertelenként jelöli meg a FAILED: PRIVATE_LINK_SETUP_ERROR
műveleteket, előfordulhat, hogy nem megfelelően konfigurálta a privát kapcsolatot a kiszolgáló nélküli számításhoz. Lásd: Privát kapcsolat konfigurálása kiszolgáló nélküli számításból.
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 A Z-sorrendet használó táblákon.
A prediktív optimalizálás nem futtat VACUUM
műveleteket olyan táblákon, amelyen a fájlmegőrzési idő az alapértelmezett 7 nap alatt van konfigurálva. Lásd: Adatmegőrzés konfigurálása időutazásos lekérdezésekhez.
A prediktív optimalizálás nem végez karbantartási műveleteket a következő táblákon:
- A munkaterületre deltamegosztási címzettként betöltött táblák.
- Materializált nézetek. Lásd: Materializált nézetek használata a Databricks SQL-ben.
- Streamelési táblák. Lásd: Adatok betöltése streamelési táblák használatával a Databricks SQL-ben.
Visszajelzés
https://aka.ms/ContentUserFeedback.
Hamarosan elérhető: 2024-ben fokozatosan kivezetjük a GitHub-problémákat a tartalom visszajelzési mechanizmusaként, és lecseréljük egy új visszajelzési rendszerre. További információ:Visszajelzés küldése és megtekintése a következőhöz: