Materializált nézetek használata a Databricks SQL-ben
Ez a cikk bemutatja, hogyan hozhat létre és használhat materializált nézeteket a Databricks SQL-ben a teljesítmény javítása és az adatfeldolgozási és elemzési számítási feladatok költségeinek csökkentése érdekében.
Feljegyzés
Ha Azure Private Link-kapcsolatot kell használnia a materializált nézettel, forduljon a Databricks képviselőjéhez.
Fontos
A Databricks SQL-ben létrehozott materializált nézetek kiszolgáló nélküli DLT-folyamattal vannak alátámasztva. A munkaterületnek támogatnia kell a kiszolgáló nélküli folyamatokat a funkció használatához.
Mik azok a materializált nézetek?
A Databricks SQL-ben a materializált nézetek a Unity Catalog által felügyelt táblák, amelyek lehetővé teszik a felhasználók számára, hogy a forrástáblákban szereplő adatok legújabb verziója alapján előre lefordítsa az eredményeket. Az Azure Databricks materializált nézetei eltérnek a többi implementációtól, mivel a visszaadott eredmények az adatok állapotát tükrözik a materializált nézet legutóbbi frissítésekor, és nem mindig frissítik az eredményeket a materializált nézet lekérdezésekor. Manuálisan frissítheti a materializált nézeteket, vagy ütemezhet frissítéseket.
A materializált nézetek hatékonyak olyan adatfeldolgozási számítási feladatokhoz, mint a kinyerés, átalakítás és betöltés (ETL). A materializált nézetek egyszerű, deklaratív módon dolgozzák fel az adatokat a megfelelőség, a javítások, az összesítések vagy az általános változásadat-rögzítés (CDC) érdekében. A materializált nézetek csökkentik a költségeket és javítják a lekérdezések késését a lassú lekérdezések és a gyakran használt számítások előzetes számításával. A materializált nézetek az alaptáblák tisztításával, bővítésével és denormalizálásával könnyen használható átalakításokat is lehetővé tesznek. A materializált nézetek csökkenthetik a költségeket, miközben egyszerűsített végfelhasználói élményt nyújtanak, mert bizonyos esetekben növekményesen kiszámíthatják az alaptáblák változásait.
A materializált nézeteket először az Azure Databricksben támogatták DLTelindításával. Amikor materializált nézetet hoz létre egy Databricks SQL Warehouse-ban, a rendszer kiszolgáló nélküli folyamatot hoz létre a materializált nézet frissítéseinek feldolgozásához. A frissítési műveletek állapotát a DLT felhasználói felületén vagy a folyamatok API-figyelheti. Tekintse meg a materializált nézetfrissítések állapotának megtekintése című témakört.
Követelmények
Materializált nézetek létrehozása vagy frissítése:
- Unity Catalog-kompatibilis pro- vagy kiszolgáló nélküli SQL-raktárt kell használnia.
- A materializált nézet frissítéséhez az azt létrehozó munkaterületen kell lennie.
- A munkaterületnek olyan régióban kell lennie, amely támogatja a kiszolgáló nélküli SQL-raktárakat.
Materializált nézetek lekérdezése:
- A materializált nézet tulajdonosának kell lennie, vagy rendelkeznie kell
SELECT
-val a materializált nézeten, valamintUSE SCHEMA
-val ésUSE CATALOG
-val a szülőkön. - A következő számítási erőforrások egyikét kell használnia:
- SQL Warehouse
- DLT-felületek
- Standard hozzáférési mód számítása (korábban megosztott hozzáférési mód)
- Dedikált hozzáférési mód (korábbi nevén egyfelhasználós hozzáférési mód) a Databricks Runtime 15.4-ben és újabb verziókban, amennyiben a munkaterület engedélyezve van a kiszolgáló nélküli számításhoz. Lásd: finomhangolt hozzáférés-vezérlés dedikált számítási környezetben (korábban egyfelhasználós számítás).
- Csak akkor, ha Ön a materializált nézet tulajdonosa: dedikált hozzáférési módú számítási erőforrás, amely a Databricks Futtatókörnyezetet 14.3 és 15.3 között futtatja.
A materializált nézetek használatára vonatkozó egyéb korlátozásokról a Korlátozások című témakörben olvashat.
Materializált nézet létrehozása
A Databricks SQL materializált nézetműveletei CREATE
databricks SQL-raktárral hoznak létre és töltenek be adatokat a materializált nézetben. A materializált nézet létrehozása szinkron művelet, ami azt jelenti, hogy a CREATE MATERIALIZED VIEW
parancs blokkolódik, amíg a materializált nézet létre nem jön, és a kezdeti adatbetöltés be nem fejeződik. A rendszer automatikusan létrehoz egy kiszolgáló nélküli DLT-folyamatot minden Databricks SQL-materializált nézethez. Ha a materializált nézet frissül, a DLT-folyamat feldolgozza a frissítést.
Materializált nézet létrehozásához használja az utasítást CREATE MATERIALIZED VIEW
. Létrehozási utasítás elküldéséhez használja az SQL-szerkesztőt az Azure Databricks felhasználói felületén, a Databricks SQL CLI-ben vagy a Databricks SQL API-ban.
Feljegyzés
A materializált nézetet létrehozó felhasználó a materializált nézet tulajdonosa, és a következő engedélyekkel kell rendelkeznie:
-
SELECT
jogosultság a materializált nézet által hivatkozott alaptáblákon. -
USE CATALOG
ésUSE SCHEMA
a katalógus és a séma jogosultságai, amelyek tartalmazzák a materializált nézet forrástábláit. -
USE CATALOG
ésUSE SCHEMA
jogosultságokat a materializált nézet célkatalógusában és sémáján. -
CREATE TABLE
ésCREATE MATERIALIZED VIEW
jogosultságok a materializált nézetet tartalmazó sémán.
Az alábbi példa létrehozza a materializált nézetet mv1
az alaptáblából base_table1
:
CREATE MATERIALIZED VIEW mv1
AS SELECT
date,
sum(sales) AS sum_of_sales
FROM
base_table1
GROUP BY
date;
Az alaptáblán lévő oszlopbejegyzések automatikusan propagálásra kerülnek az új materializált nézetbe. Ütemezés, táblamegkötések vagy egyéb tulajdonságok hozzáadásához módosítsa a materializált nézetdefiníciót. A materializált nézet meghatározásának szintaxisának részleteiről a CREATE MATERIALIZED VIEWcímű témakörben olvashat.
Állítsa be a futási csatornát
Az SQL-raktárak használatával létrehozott materializált nézetek automatikusan frissülnek egy DLT-folyamattal. A DLT-folyamatok alapértelmezés szerint az current
csatornában használják a futtatókörnyezetet. Tekintse meg a DLT kiadási jegyzeteket és a kiadásfrissítési folyamatot, hogy megtudja a kiadási folyamat részleteit.
A Databricks azt javasolja, hogy a current
csatornát használja éles számítási feladatokhoz. Az új funkciók először megjelennek a preview
csatornán. Az új funkciók teszteléséhez beállíthat egy folyamatot az előzetes verziójú DLT-csatornára az preview
táblatulajdonságként való megadásával. Ezt a tulajdonságot a tábla létrehozásakor vagy a tábla alter utasítással történő létrehozása után adhatja meg.
Az alábbi példakód bemutatja, hogyan állíthatja be a csatornát előzetes verzióra a CREATE utasításban:
CREATE OR REPLACE MATERIALIZED VIEW foo.default.bar
TBLPROPERTIES ('pipelines.channel' = 'preview') as
SELECT
*
FROM
range(5)
Adatok betöltése külső rendszerekből
A Databricks azt javasolja, hogy a Támogatott adatforrások esetében a Lakehouse Federation használatával töltsön be külső adatokat. A Lakehouse Federation által nem támogatott forrásokból származó adatok betöltéséről további információt az Adatformátum beállításai című témakörben talál.
Materializált nézet frissítése
A REFRESH
művelet frissíti a materializált nézetet, hogy tükrözze az alaptábla legújabb módosításait. A művelet alapértelmezés szerint szinkron, ami azt jelenti, hogy a parancs megáll, amíg a frissítési művelet be nem fejeződik. A materializált nézet frissítéséhez használja az utasítást REFRESH MATERIALIZED VIEW
. A parancs SQL-szintaxisáról és paramétereiről részletesen a REFRESH (MATERIALIZED VIEW vagy STREAMING TABLE) olvashat. A növekményesen frissíthető materializált nézetek típusairól további információt a materializált nézetek növekményes frissítése című témakörben talál.
Frissítési utasítás elküldéséhez használja az SQL-szerkesztőt az Azure Databricks felhasználói felületén, egy SQL-raktárhoz csatolt jegyzetfüzetet, a Databricks SQL CLI-t vagy a Databricks SQL API-t.
Csak a tulajdonos használhatja REFRESH
a materializált nézetet.
Az alábbi példa frissíti a mv1
materializált nézetet:
REFRESH MATERIALIZED VIEW mv1;
Hogyan frissülnek a Databricks SQL materializált nézetei?
A materializált nézetek automatikusan kiszolgáló nélküli DLT-folyamatokat hoznak létre és használnak a frissítési műveletek feldolgozásához. A frissítést a DLT-folyamat felügyeli, a frissítést pedig a materializált nézet létrehozásához használt Databricks SQL Warehouse figyeli. A materializált nézetek ütemezés szerint futó DLT-folyamattal frissíthetők. Lásd: Indított és folyamatos üzemmód.
Feljegyzés
A DLT-futtatókörnyezet nem képes észlelni a nem Delta-adatforrások változásait. A táblázat továbbra is rendszeresen frissül, de magasabb alapértelmezett triggerintervallummal, hogy megakadályozza, hogy a túlzott újraszámítás lelassítsa a számítás növekményes feldolgozását.
Alapértelmezés szerint a frissítési műveletek szinkron módon lesznek végrehajtva. A frissítési műveletet aszinkron módon is beállíthatja. Ez a frissítési paranccsal állítható be. Lásd: REFRESH (MATERIALIZED VIEW vagy STREAMING TABLE) Az egyes megközelítésekhez társított viselkedés a következő:
- Szinkron: A szinkron frissítés megakadályozza, hogy más műveletek folytassanak a frissítés befejezéséig. Ha az eredményre a következő lépéshez van szükség, például a frissítési műveletek vezénylési eszközökben, például a Databricks Jobsban történő szekvenálásakor, használjon szinkron frissítést. A materializált nézetek feladattal való vezényléséhez használja az SQL-feladat típusát. Lásd: A Databricksvezénylésének áttekintése.
- Aszinkron: Az aszinkron frissítés elindít egy háttérfeladatot a DLT-számításon, amikor egy materializált nézet frissítése megkezdődik, így a parancs az adatbetöltés befejeződése előtt visszatérhet. Ez a frissítési típus költségmegtakarítást okozhat, mert a művelet nem feltétlenül rendelkezik számítási kapacitással abban a raktárban, ahol a parancsot kezdeményezik. Ha a frissítés tétlenné válik, és más feladatok nem futnak, a raktár leállhat, miközben a frissítés más rendelkezésre álló számítást használ. Az aszinkron frissítések emellett több művelet párhuzamos indítását is támogatják.
Egyes lekérdezések növekményesen frissíthetők. Lásd a materializált nézetek növekményes frissítését. Ha növekményes frissítés nem hajtható végre, a rendszer ehelyett teljes frissítést hajt végre.
Materializált nézetfrissítések ütemezése
A Databricks SQL materializált nézetét konfigurálhatja úgy, hogy egy meghatározott ütemezés alapján automatikusan frissüljön. A beosztás beállításához tegye az alábbiak egyikét:
- Az ütemezés konfigurálása a
SCHEDULE
záradékkal a materializált nézet létrehozásakor - Adjon hozzá egy ütemezést a ALTER MATERIALIZED VIEW utasítással.
Ütemezés létrehozásakor a rendszer automatikusan konfigurál egy új Databricks-feladatot a frissítés feldolgozására.
Az ütemezés megtekintéséhez tegye az alábbiak egyikét:
- Futtassa az utasítást
DESCRIBE EXTENDED
az SQL-szerkesztőből az Azure Databricks felhasználói felületén. - A Katalóguskezelővel megtekintheti a materializált nézetet. Az ütemezés az Áttekintés lapon, a Frissítés állapot alatt található. Lásd Mi az a Katalóguskezelő?.
Materializált nézetfrissítés állapotának megtekintése
Feljegyzés
Mivel egy DLT-folyamat kezeli a materializált nézetfrissítéseket, a folyamat indítási ideje késéssel jár. Ez az idő a frissítés végrehajtásához szükséges idő mellett másodpercek és percek között is lehet.
A materializált nézet frissítésének állapotát megtekintheti a DLT felhasználói felületén a materializált nézetet kezelő folyamat megtekintésével, vagy a materializált nézet DESCRIBE EXTENDED
parancsa által visszaadott Frissítési információk megtekintésével.
Egy materializált nézet frissítési előzményeit a DLT-eseménynapló lekérdezésével is megtekintheti. Tekintse meg a materializált nézet frissítési előzményeinek megtekintése című témakört.
A futtatások nyomon követése lekérdezési előzmények alapján
A lekérdezéselőzmények lapon hozzáférhet a lekérdezési adatokhoz és a lekérdezési profilokhoz, amelyek segítenek azonosítani a rosszul teljesítő lekérdezéseket és szűk keresztmetszeteket a streamelési tábla frissítéseinek futtatásához használt DLT-folyamatban. A lekérdezési előzmények és lekérdezési profilok számára elérhető információk típusainak áttekintéséért tekintse meg a lekérdezési előzményeket és a lekérdezési profilt.
Fontos
Ez a funkció a nyilvános előzetes verzióban érhető el. A munkaterület rendszergazdái az Előnézetek lapon engedélyezhetik ezt a funkciót. Lásd: Az Azure Databricks előzetes verzióinak kezelése.
A materializált nézetekhez kapcsolódó összes utasítás megjelenik a lekérdezési előzményekben. Az Utasítás legördülő szűrővel kiválaszthatja bármelyik parancsot, és megvizsgálhatja a kapcsolódó lekérdezéseket. Minden CREATE
utasítást egy REFRESH
utasítás követ, amely aszinkron módon hajt végre egy DLT-folyamaton. Az REFRESH
utasítások általában részletes lekérdezési terveket tartalmaznak, amelyek betekintést nyújtanak a teljesítmény optimalizálásába.
A lekérdezéselőzmények felhasználói felületén található utasítások eléréséhez REFRESH
kövesse az alábbi lépéseket:
- A lekérdezéselőzmények felhasználói felületének megnyitásához kattintson
a bal oldali oldalsávra.
- A Állítás legördülő szűrőn válassza ki a REFRESH jelölőnégyzetet.
- A lekérdezési utasítás nevére kattintva megtekintheti az összesítő adatokat, például a lekérdezés időtartamát és az összesített metrikákat.
- Kattintson a Lekérdezésprofil megtekintése elemre a lekérdezésprofil megnyitásához. A lekérdezési profil navigálásával kapcsolatos részletekért lásd : Lekérdezésprofil.
- Ha szeretné, a Lekérdezés forrása szakaszban található hivatkozásokkal nyissa meg a kapcsolódó lekérdezést vagy folyamatot.
Lásd: CREATE MATERIALIZED VIEW.
A frissítési állapot megtekintése a DLT felhasználói felületén
Alapértelmezés szerint a materializált nézetet kezelő DLT-folyamat nem látható a DLT felhasználói felületén. A folyamat DLT felhasználói felületén való megtekintéséhez közvetlenül hozzá kell férnie a folyamat Folyamat részletei lapra mutató hivatkozáshoz. A hivatkozás eléréséhez:
- Másolja és illessze be a Legújabb frissítés sorban megjelenő hivatkozást az
DESCRIBE EXTENDED
utasítás által visszaadott táblázatból. - A materializált nézet leszármazási lapján kattintson a Kezelések elemre, majd a kezelés hivatkozására.
Az Azure Databricks felhasználói felületén az SQL-szerkesztővel küldött aszinkron REFRESH
parancsok esetében a frissítési állapotot az Eredmények panelen látható hivatkozásra kattintva tekintheti meg.
Aktív frissítés leállítása
Ha le szeretne állítani egy aktív frissítést a DLT felhasználói felületén, a Folyamat részletei lapon kattintson a leállítása gombra a folyamatfrissítés leállításához. A frissítést a Databricks parancssori felületével vagy a POST /api/2.0/pipelines/{pipeline_id}/stop művelettel is leállíthatja a Pipelines API-ban.
Materializált nézet definíciójának frissítése
A materializált nézet definíciójának frissítéséhez először le kell dobnia, majd újra létre kell hoznia a materializált nézetet.
Rekordok végleges törlése materializált nézetből, engedélyezett törlési vektorokkal
Fontos
A REORG
utasítás támogatása materializált nézetekkel a nyilvános előzetes verzió.
Feljegyzés
- A materializált nézettel rendelkező
REORG
utasítás használatához a Databricks Runtime 15.4-et vagy újabb verzióját kell használni. - Bár a
REORG
utasítást bármilyen materializált nézetben használhatja, csak akkor szükséges, ha a rekordokat materializált nézetben törli, törlési vektorok engedélyezve vannak. A parancsnak nincs hatása, ha materializált nézettel használja a törlési vektorok engedélyezése nélkül.
Ha a materializált nézet alapjául szolgáló tárolóból olyan rekordokat szeretne fizikailag törölni, amelyeken engedélyezettek a törlési vektorok, például a GDPR-megfelelőség esetében, további lépéseket kell tenni annak biztosítása érdekében, hogy a materializált nézet adatain VACUUM művelet fusson.
Az alábbiak részletesebben ismertetik ezeket a lépéseket:
- Futtasson egy
REORG
utasítást a materializált nézet ellen, megadva aAPPLY (PURGE)
paramétert. PéldáulREORG TABLE <materialized-view-name> APPLY (PURGE);
. Lásd: REORG TABLE. - Várja meg, amíg a materializált nézet adatmegőrzési ideje eltelik. Az alapértelmezett adatmegőrzési időszak hét nap, de konfigurálható a
delta.deletedFileRetentionDuration
táblatulajdonság használatával. Lásd: Adatmegőrzés konfigurálása időutazásos lekérdezésekhez. -
REFRESH
a materializált nézet. Lásd Materializált nézet frissítése. AREFRESH
művelet után 24 órán belül a rendszer automatikusan futtatja a DLT karbantartási feladatait, beleértve a rekordok végleges törléséhez szükségesVACUUM
műveletet is. Lásd DLTáltal végzett karbantartási feladatokat.
Materializált nézet törlése
Feljegyzés
A materializált nézet elvetésére vonatkozó parancs elküldéséhez a materializált nézet tulajdonosának kell lennie, vagy MANAGE
jogosultsággal kell rendelkeznie a materializált nézetben.
Materializált nézet elvetéséhez használja a DROP VIEW utasítást. Az utasítás elküldéséhez DROP
használhatja az SQL-szerkesztőt az Azure Databricks felhasználói felületén, a Databricks SQL CLI-ben vagy a Databricks SQL API-ban. Az alábbi példa elveti a mv1
materializált nézetet:
DROP MATERIALIZED VIEW mv1;
Materializált nézet leírása
A materializált nézet oszlopainak és adattípusainak lekéréséhez használja az utasítást DESCRIBE
. A materializált nézet oszlopainak, adattípusainak és metaadatainak(például tulajdonosának, helyének, létrehozási idejének és frissítési állapotának) lekéréséhez használja a következőt DESCRIBE EXTENDED
: Utasítás elküldéséhez DESCRIBE
használja az SQL-szerkesztőt az Azure Databricks felhasználói felületén, a Databricks SQL CLI-ben vagy a Databricks SQL API-ban.
Materializált nézet tulajdonosának módosítása
Ha metaadattár-rendszergazda és munkaterület-rendszergazda is, módosíthatja a materializált nézet tulajdonosát. A materializált nézetek automatikusan DLT-folyamatokat hoznak létre és használnak a módosítások feldolgozásához. A materializált nézetek tulajdonosának módosításához kövesse az alábbi lépéseket:
- A materializált nézet leszármazási fülén kattintson a Folyamatláncok elemre, majd a folyamatlánc hivatkozására.
- Kattintson a Megosztás gombra . Megjelenik a Engedélybeállítások párbeszédpanel.
- Kattintson az aktuális tulajdonos nevének jobb oldalán található x gombra az aktuális tulajdonos eltávolításához.
- Kezdjen el gépelni az elérhető felhasználók listájának szűréséhez. Kattintson arra a felhasználóra, akinek az új folyamattulajdonosnak kell lennie.
- A módosítások mentéséhez és a párbeszédpanel bezárásához kattintson a Mentés gombra.
A folyamat összes objektuma, beleértve a folyamatban definiált materializált nézeteket is, az új folyamattulajdonos tulajdonában van. Minden jövőbeli frissítés az új tulajdonos identitásával fut.
A materializált nézetekhez való hozzáférés szabályozása
A materializált nézetek a gazdag hozzáférés-vezérlést támogatják az adatmegosztás támogatásához, miközben elkerülik a potenciálisan privát adatok felfedését. A materializált nézet tulajdonosa vagy a MANAGE
jogosultsággal rendelkező felhasználók SELECT
jogosultságokat biztosíthatnak más felhasználóknak. A materializált nézethez hozzáféréssel rendelkező SELECT
felhasználóknak nem kell SELECT
hozzáférni a materializált nézet által hivatkozott táblákhoz. Ez a hozzáférés-vezérlés lehetővé teszi az adatmegosztást a mögöttes adatokhoz való hozzáférés szabályozása közben.
Jogosultságok megadása materializált nézethez
A materializált nézethez való hozzáférés biztosításához használja a következő utasítást GRANT
:
GRANT
privilege_type [, privilege_type ] ...
ON <mv_name> TO principal;
A privilege_type a következő lehet:
-
SELECT
- a felhasználó képesSELECT
a materializált nézetre. -
REFRESH
- a felhasználó képesREFRESH
a materializált nézetre. A frissítések a tulajdonos engedélyeinek használatával futnak.
Az alábbi példa egy materializált nézetet hoz létre, és kijelölési és frissítési jogosultságokat ad egy felhasználónak:
CREATE MATERIALIZED VIEW <mv_name> AS SELECT * FROM <base_table>;
GRANT SELECT ON <mv_name> TO user;
GRANT REFRESH ON <mv_name> TO user;
Jogosultságok visszavonása materializált nézetből
A materializált nézethez való hozzáférés visszavonásához használja a következő utasítást REVOKE
:
REVOKE
privilege_type [, privilege_type ]
ON <name> FROM principal;
Ha egy alaptábla SELECT
jogosultságait visszavonják a materializált nézet tulajdonosától vagy bármely más felhasználótól, aki MANAGE
vagy SELECT
jogosultságot kapott a materializált nézetben, vagy az alaptáblát elveti, a materializált nézet tulajdonosa vagy a hozzáféréssel rendelkező felhasználó továbbra is le tudja kérdezni a materializált nézetet. A következő viselkedés azonban előfordul:
- A materializált nézet tulajdonosa vagy azok, akik elveszítették a hozzáférést egy materializált nézethez, már
REFRESH
nem használhatják a materializált nézetet, és a materializált nézet elavulttá válik. - Ha ütemezéssel automatizálja, a következő ütemezett feladat
REFRESH
meghiúsul vagy nem fut.
Az alábbi példa visszavonja a SELECT
jogosultságot mv1
-től/-től.
REVOKE SELECT ON mv1 FROM user1;
A változásadat-továbbítás engedélyezése
Az adatcsatorna módosítása szükséges a materializált nézetek alaptábláiban, kivéve bizonyos speciális használati eseteket. Az adatcsatorna alaptáblán való módosításának engedélyezéséhez állítsa be a delta.enableChangeDataFeed
táblatulajdonságot a következő szintaxissal:
ALTER TABLE table1 SET TBLPROPERTIES (delta.enableChangeDataFeed = true);
A materializált nézet frissítési előzményeinek megtekintése
Ha egy materializált nézetben szeretné megtekinteni REFRESH
műveletek állapotát, beleértve az aktuális és a korábbi frissítéseket, kérdezze le a DLT-eseménynaplót:
SELECT
*
FROM
event_log(TABLE(<fully-qualified-table-name>))
WHERE
event_type = "update_progress"
ORDER BY
timestamp desc;
Cserélje le <fully-qualified-table-name>
a materializált nézet teljes nevét, beleértve a katalógust és a sémát is.
Lásd Mi a DLT-eseménynapló?.
Részletes információk a materializált nézetekről a Catalog Explorerrel
A Catalog Explorer használatával megtekintheti a materializált nézet részleteit.
- Kattintson
Katalógus az oldalsávon.
- A katalóguskezelő bal oldali fájában nyissa meg a katalógust, és válassza ki azt a sémát, amelyben a materializált nézet található.
- Nyissa meg a Táblák elemet a kiválasztott séma alatt, és kattintson a materializált nézetre.
Innen a materializált nézet neve alatti fülek segítségével megtekintheti és szerkesztheti a materializált nézetre vonatkozó információkat, többek között a következőket:
- Frissítés állapota és előzményei
- A táblaséma
- Mintaadatok (aktív számítást igényel)
- Engedélyek
- Életút, beleértve azokat a táblákat és folyamatokat, amelyektől ez a materializált nézet függ
- Betekintés a használatba
- A materializált nézethez létrehozott monitorok
Korlátozások
- A számítási és munkaterületi követelményekről a Követelmények című témakörben olvashat.
- A materializált nézetek nem támogatják az identitásoszlopokat és a helyettesítő kulcsokat.
- Ha egy materializált nézet összegösszesítést használ egy
NULL
-able oszlopon keresztül, és csakNULL
az értékek maradnak az oszlopban, akkor a materializált nézetek eredményül kapott összesített értéke nulla helyettNULL
. - A változásadatcsatorna nem olvasható materializált nézetben.
- Az időutazási lekérdezések nem támogatottak materializált nézetekben.
- A materializált nézeteket támogató mögöttes fájlok tartalmazhatnak olyan felsőbb rétegbeli táblákból származó adatokat (beleértve a személyazonosításra alkalmas adatokat is), amelyek nem jelennek meg a materializált nézetdefinícióban. Ezeket az adatokat a rendszer automatikusan hozzáadja a mögöttes tárolóhoz, hogy támogassa a materializált nézetek növekményes frissítését. Mivel a materializált nézet alapjául szolgáló fájlok a materializált nézet sémájának nem részét képező felsőbb rétegbeli táblákból származó adatok feltárását kockáztathatják, a Databricks azt javasolja, hogy ne ossza meg az alapul szolgáló tárolót a nem megbízható alsóbb rétegbeli felhasználókkal. Tegyük fel például, hogy egy materializált nézet definíciója tartalmaz egy záradékot
COUNT(DISTINCT field_a)
. Annak ellenére, hogy a materializált nézetdefiníció csak az összesítettCOUNT DISTINCT
záradékot tartalmazza, a mögöttes fájlok tartalmazzák afield_a
tényleges értékeinek listáját.