T-SQL-nézetek dedikált SQL-készlettel és kiszolgáló nélküli SQL-készlettel az Azure Synapse Analyticsben
Ebben a cikkben tippeket talál a T-SQL-nézetek használatához és a dedikált SQL-készlettel és kiszolgáló nélküli SQL-készlettel rendelkező megoldások fejlesztéséhez az Azure Synapse Analyticsben.
Miért érdemes nézeteket használni?
A nézetek számos különböző módon használhatók a megoldás minőségének javításához. Ez a cikk néhány példát mutat be arra, hogyan bővítheti a megoldást nézetekkel, és tartalmazza azokat a korlátozásokat, amelyeket figyelembe kell venni.
SQL-készlet – nézet létrehozása
Feljegyzés
A CREATE VIEW szintaxisát ebben a cikkben nem tárgyaljuk. További információt a CREATE VIEW dokumentációjában talál.
Architekturális absztrakció
Gyakori alkalmazásminta, hogy a CREATE TABLE AS SELECT (CTAS) használatával újra létrehozza a táblákat, amelyet egy objektum átnevezési mintája követ az adatok betöltésekor.
Az alábbi példa új dátumrekordokat ad hozzá egy dátumdimenzióhoz. Figyelje meg, hogyan jön létre először egy új tábla (DimDate_New), majd átnevezve a tábla eredeti verziójának helyére.
CREATE TABLE dbo.DimDate_New
WITH (DISTRIBUTION = ROUND_ROBIN
, CLUSTERED INDEX (DateKey ASC)
)
AS
SELECT *
FROM dbo.DimDate AS prod
UNION ALL
SELECT *
FROM dbo.DimDate_stg AS stg
;
RENAME OBJECT DimDate TO DimDate_Old;
RENAME OBJECT DimDate_New TO DimDate;
Ne feledje, hogy ez a megközelítés azt eredményezheti, hogy a táblák megjelennek és eltűnnek egy felhasználó nézetéből, és a "tábla nem létezik" hibaüzeneteket kéri. A nézetek használatával konzisztens bemutatóréteget biztosíthat a felhasználóknak a mögöttes objektumok átnevezése közben.
Ha nézeteken keresztül biztosít hozzáférést az adatokhoz, a felhasználóknak nincs szükségük a mögöttes táblák láthatóságára. A konzisztens felhasználói élmény mellett ez a réteg biztosítja, hogy az elemzési tervezők fejleszthetik az adatmodellt. Az alapul szolgáló táblák továbbfejlesztésének képessége azt jelenti, hogy a tervezők a CTAS használatával maximalizálhatják a teljesítményt az adatbetöltési folyamat során.
Teljesítményoptimalizálás
A nézetek a táblák közötti teljesítményoptimalizált illesztések kényszerítésére is használhatók. Egy nézet például egy redundáns terjesztési kulcsot is tartalmazhat a csatlakozási feltételek részeként az adatáthelyezés minimalizálása érdekében.
Egy adott lekérdezés vagy illesztési tipp kényszerítése a T-SQL-nézetek használatának egy másik előnye. Így a nézetképesség biztosítja, hogy az illesztések mindig optimális módon legyenek végrehajtva. Elkerülheti, hogy a felhasználók megjegyezzék a megfelelő szerkezetet az illesztésükhöz.
Korlátozások
A Synapse SQL nézetei csak metaadatokként vannak tárolva. Ezért a következő lehetőségek nem érhetők el:
- Nincs sémakötési lehetőség
- Az alaptáblák nem frissíthetők a nézeten keresztül
- A nézetek nem hozhatók létre ideiglenes táblákon keresztül
- A EXPAND/NOEXPAND tippek nem támogatottak
- Nincsenek indexelt nézetek a Synapse SQL-ben
Következő lépések
További fejlesztési tippekért tekintse meg a Synapse SQL fejlesztési áttekintését.