A materializált nézetek frissítési műveletei
Fontos
A Databricks SQL materializált nézetei nyilvános előzetes verzióban érhetők el.
A materializált nézetek olyan adatbázis-objektumok, amelyek egy SQL-lekérdezés eredményeit tartalmazzák egy vagy több alaptáblán. Egyes materializált nézetek növekményesen frissíthetők, automatikusan és növekményesen propagálja a módosításokat az alaptáblákból.
Ez a cikk ismerteti a materializált nézetekre alkalmazható frissítési műveletek típusait, és azonosítja a növekményes frissítést támogató SQL-műveleteket, kulcsszavakat és záradékokat.
Feljegyzés
A materializált nézetek létrehozásához és használatához a munkaterületnek meg kell felelnie a követelményeknek.
Frissítési típusok
A frissítési műveletek a következők:
- Növekményes frissítés: A növekményes frissítés az utolsó frissítés után módosítja a mögöttes adatokat, majd hozzáfűzi az adatokat a táblához. Az alaptábláktól és a belefoglalt műveletektől függően csak bizonyos típusú materializált nézetek frissíthetők növekményesen.
- Teljes frissítés: A teljes frissítés csonkolja a táblát, és a forrásban elérhető összes adatot a legújabb definícióval dolgozza fel újra. Nem ajánlott teljes frissítést végezni olyan forrásokon, amelyek nem őrzik meg a teljes adatelőzményeket, vagy rövid megőrzési időszakokkal rendelkeznek(például Kafka), mert a teljes frissítés csonkolja a meglévő adatokat. Előfordulhat, hogy nem tudja helyreállítani a régi adatokat, ha az adatok már nem érhetők el a forrásban.
Ha a materializált nézetek SQL-raktárral vagy kiszolgáló nélküli Delta Live Tables-folyamattal jönnek létre, a rendszer automatikusan növekményesen frissíti őket, ha a lekérdezések támogatottak. Ha egy lekérdezés növekményes frissítéshez nem támogatott kifejezéseket tartalmaz, a rendszer teljes frissítést hajt végre, ami további költségekkel járhat. A használt frissítés típusának meghatározásához lásd : Annak meghatározása, hogy növekményes vagy teljes frissítést használ-e.
A materializált nézet növekményes frissítésének támogatása
Az alábbi táblázat az SQL-kulcsszó vagy záradék növekményes frissítésének támogatását sorolja fel. A csillaggal (*) megjelölt kulcsszavakhoz és záradékokhoz engedélyezni kell a sorkövetést a növekményes frissítéshez. Lásd: Sorkövetés használata Delta-táblákhoz.
SQL-kulcsszó vagy záradék | Növekményes frissítés támogatása |
---|---|
SELECT Kifejezések* |
Igen, a determinisztikus beépített függvényeket és a nem módosítható, felhasználó által definiált függvényeket (UDF-eket) tartalmazó kifejezések támogatottak. |
GROUP BY |
Igen |
WITH |
Igen, a gyakori táblakifejezések támogatottak. |
UNION ALL * |
Igen |
FROM |
A támogatott alaptáblák közé tartoznak a Delta-táblák, a materializált nézetek és a streamelési táblák. |
WHERE , HAVING * |
Szűrő záradékok, például WHERE támogatottak és HAVING támogatottak. |
INNER JOIN * |
Igen |
LEFT OUTER JOIN |
Igen |
FULL OUTER JOIN |
Igen |
RIGHT OUTER JOIN |
Igen |
OVER |
Igen. PARTITION_BY oszlopokat kell megadni az ablakfüggvények növekményesítéséhez. |
QUALIFY |
Igen |
EXPECTATIONS |
Szám Az elvárásokat használó materializált nézetek mindig teljesen frissülnek. |
Feljegyzés
A nem determinisztikus függvények például CURRENT_TIMESTAMP
nem támogatottak.