Jegyzet
Az oldalhoz való hozzáférés engedélyezést igényel. Próbálhatod be jelentkezni vagy könyvtárat váltani.
Az oldalhoz való hozzáférés engedélyezést igényel. Megpróbálhatod a könyvtár váltását.
Fontos
Ez a funkció bétaverzióban érhető el. A munkaterület rendszergazdái az Előnézetek lapon szabályozhatják a funkcióhoz való hozzáférést. Lásd: Az Azure Databricks előzetes verziójának kezelése.
Frissítési szabályzatot ad hozzá a materializált nézethez, amely meghatározza, hogy mikor kell növekményessé tenni a frissítést. A (folyamatok) utasításra vonatkozikCREATE MATERIALIZED VIEW.
A növekményesítésről további információt a materializált nézetek növekményes frissítése című témakörben talál. Ellenőrizheti, hogy egy SQL-lekérdezés növekményes-e a EXPLAIN CREATE MATERIALIZED VIEW Databricks SQL utasításával. Lásd a(z) EXPLAIN CREATE MATERIALIZED VIEW.
Szemantika
REFRESH POLICY refresh_policy
refresh_policy:
AUTO | INCREMENTAL | INCREMENTAL STRICT | FULL
Paraméterek
refresh_policy
A materializált nézet frissítési szabályzatát határozza meg. Ha nincs
REFRESH POLICYmegadva,AUTOaz alapértelmezett szabályzat.A frissítési szabályzat meghatározza, hogy a frissítés hogyan kezeli a materializált nézet növekményesítését.
AUTOA rendszer automatikusan kiválasztja a növekményes vagy teljes frissítést a költségmodell alapján.
Állam Magatartás A frissítéshez növekményes érték érhető el. A költségmodell használatával határozza meg, hogy melyik az olcsóbb, a növekményes vagy a teljes. A növekményes érték nem érhető el a frissítéshez. Teljes frissítést hajt végre. Létrehozásra vagy újra inicializálásra van szükség (például sémamódosításkor) Teljes frissítést hajt végre. INCREMENTALA rendszer lehetőség szerint növekményes frissítéseket használ. Ha
CREATEa lekérdezés nem növekményes, a létrehozási utasítás meghiúsul.Állam Magatartás A frissítéshez növekményes érték érhető el. Növekményes frissítést hajt végre. A növekményes érték nem érhető el a frissítéshez. Teljes frissítést hajt végre. Létrehozásra vagy újra inicializálásra van szükség, de a lekérdezéshez növekményesítés is lehetséges. Teljes frissítést hajt végre. Létre kell hozni vagy újra kell inicializálni a lekérdezést, és a növekményesítés nem lehetséges. A művelet meghiúsul. INCREMENTAL STRICTA rendszer növekményes frissítéseket használ. Ha
CREATEa lekérdezés nem növekményes, a létrehozási utasítás meghiúsul.Állam Magatartás A frissítéshez növekményes érték érhető el. Növekményes frissítést hajt végre. A növekményes érték nem érhető el a frissítéshez. A frissítés sikertelen. Létrehozásra vagy újra inicializálásra van szükség, de a lekérdezéshez növekményesítés is lehetséges. Teljes frissítést hajt végre. Létre kell hozni vagy újra kell inicializálni a lekérdezést, és a növekményesítés nem lehetséges. A művelet meghiúsul. FULLA rendszer mindig teljes frissítést használ.
Állam Magatartás A frissítéshez növekményes érték érhető el. Teljes frissítést hajt végre. A növekményes érték nem érhető el a frissítéshez. Teljes frissítést hajt végre. Létrehozásra vagy újra inicializálásra van szükség. Teljes frissítést hajt végre.
Viselkedés hiba esetén
Ha egy frissítés meghiúsul, mert nem felel meg a frissítési szabályzatnak (a következőhöz): REFRESH POLICY INCREMENTAL (STRICT)a rendszer egy hibaosztályt MATERIALIZED_VIEW_NOT_INCREMENTALIZABLE ad vissza részletes információval, amely leírja, hogy miért nem lehet növekményes:
-
AGGREGATE_NOT_TOP_NODE:GROUP BYa fenti összetett kifejezések esetén ez nem támogatott. -
EXPRESSION_NOT_DETERMINSTIC: A lekérdezés egy nem determinisztikus függvényt használ, példáulRAND. -
INPUT_NOT_IN_DELTA: Egy vagy több forrásadatkészlet nem Delta-tábla. -
OPERATOR_NOT_INCREMENTALIZABLE: Egy operátor, például egy összetett illesztés megakadályozza a növekményesítést. -
ROW_TRACKING_NOT_ENABLED: A sorkövetést igénylő forrástáblák esetében nincs engedélyezve a sorkövetés. -
SUBQUERY_EXPRESSION_NOT_INCREMENTALIZABLE: A lekérdezés egy vagy több al lekérdezése nem növekményes. -
UDF_NOT_DETERMINISTIC: A kifejezésben használt egy vagy több UDF nem determinisztikusként van megjelölve. -
WINDOW_WITHOUT_PARTITION_BY: A nemPARTITION_BYnövekményes ablakspecifikációk nem növekményesek.
A lekérdezések növekményessé tételének megértéséhez tekintse meg a materializált nézetek növekményes frissítését.
Annak ellenőrzéséhez, hogy egy SQL-lekérdezés növekményes-e, használja az utasítást a EXPLAIN CREATE MATERIALIZED VIEW Databricks SQL-ben. Lásd a(z) EXPLAIN CREATE MATERIALIZED VIEW.
Példák
-- Create a materialized view with an incremental policy
CREATE OR REFRESH MATERIALIZED VIEW my_mv
REFRESH POLICY INCREMENTAL
AS SELECT a, sum(b) FROM my_catalog.example.my_table GROUP BY a;