Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
gäller för:Azure Synapse Analytics
Visar antalet inkrementella ändringar i de bastabeller som finns för materialiserade vyer i Azure Synapse Analytics. Omkostnadsförhållandet beräknas som TOTAL_ROWS/MAX (1, BASE_VIEW_ROWS).
Transact-SQL syntaxkonventioner
Syntax
DBCC PDW_SHOWMATERIALIZEDVIEWOVERHEAD ( "[ schema_name . ] materialized_view_name" )
[;]
Not
Den här syntaxen stöds inte av en serverlös SQL-pool i Azure Synapse Analytics.
Argument
schema_name
Namnet på schemat som vyn tillhör.
materialized_view_name
Namnet på den materialiserade vyn.
Anmärkningar
För att hålla materialiserade vyer uppdaterade med dataändringar i bastabeller lägger informationslagrets motor till spårningsrader i varje berörd vy för att återspegla ändringarna. Om du väljer från en materialiserad vy kan du genomsöka vyns klustrade kolumnlagringsindex och tillämpa eventuella inkrementella ändringar. Spårningsraderna (TOTAL_ROWS – BASE_VIEW_ROWS) elimineras inte förrän användarna ÅTERSKAPAr den materialiserade vyn.
Overhead_ratio beräknas som TOTAL_ROWS/MAX(1, BASE_VIEW_ROWS). Om den är hög försämras SELECT-prestanda. Användare kan återskapa den materialiserade vyn för att minska dess omkostnader.
Behörigheter
Kräver BEHÖRIGHETEN VISA DATABASTILLSTÅND.
Exempel
A. Det här exemplet returnerar omkostnadsförhållandet för en materialiserad vy.
DBCC PDW_SHOWMATERIALIZEDVIEWOVERHEAD ("dbo.MyIndexedView");
Exempelutdata:
| OBJECT_ID | BASE_VIEW_ROWS | TOTAL_ROWS | OVERHEAD_RATIO |
|---|---|---|---|
| 1234 | 1 | 3 | 3.0 |
B. Det här exemplet visar hur den materialiserade vyns omkostnader ökar när data ändras i bastabeller
Skapa en tabell:
CREATE TABLE t1 (c1 INT NOT NULL, c2 INT NOT NULL, c3 INT NOT NULL);
Infoga fem rader i t1:
INSERT INTO t1 VALUES (1, 1, 1);
INSERT INTO t1 VALUES (2, 2, 2);
INSERT INTO t1 VALUES (3, 3, 3);
INSERT INTO t1 VALUES (4, 4, 4);
INSERT INTO t1 VALUES (5, 5, 5);
Skapa materialiserade vyer MV1:
CREATE MATERIALIZED VIEW MV1
WITH (DISTRIBUTION = HASH(c1))
AS
SELECT c1, COUNT(*) total_number
FROM dbo.t1 WHERE c1 < 3
GROUP BY c1;
Om du väljer från den materialiserade vyn returneras två rader.
| c1 | total_number |
|---|---|
| 1 | 1 |
| 2 | 1 |
Kontrollera materialiserade visningskostnader innan data ändras i bastabellen.
DBCC PDW_SHOWMATERIALIZEDVIEWOVERHEAD ("dbo.mv1")
Exempelutdata:
| OBJECT_ID | BASE_VIEW_ROWS | TOTAL_ROWS | OVERHEAD_RATIO |
|---|---|---|---|
| 587149137 | 2 | 2 | 1.00000000000000000 |
Uppdatera bastabellen. Den här frågan uppdaterar samma kolumn på samma rad 100 gånger till samma värde. Innehållet i den materialiserade vyn ändras inte.
DECLARE @p INT;
SELECT @p = 1;
WHILE (@p < 101)
BEGIN
UPDATE t1 SET c1 = 1 WHERE c1 = 1;
SELECT @p = @p + 1;
END;
Om du väljer från den materialiserade vyn returneras samma resultat som tidigare.
| c1 | total_number |
|---|---|
| 1 | 1 |
| 2 | 1 |
Nedan visas utdata från DBCC PDW_SHOWMATERIALIZEDVIEWOVERHEAD ("dbo.mv1"). 100 rader läggs till i den materialiserade vyn (total_row – base_view_rows) och dess overhead_ratio ökas.
| OBJECT_ID | BASE_VIEW_ROWS | TOTAL_ROWS | OVERHEAD_RATIO |
|---|---|---|---|
| 587149137 | 2 | 102 | 51.00000000000000000 |
När den materialiserade vyn har återskapats elimineras alla spårningsrader för inkrementella dataändringar och vyns omkostnader minskas.
ALTER MATERIALIZED VIEW dbo.MV1 REBUILD
GO
DBCC PDW_SHOWMATERIALIZEDVIEWOVERHEAD ("dbo.mv1")
Utdata
| OBJECT_ID | BASE_VIEW_ROWS | TOTAL_ROWS | OVERHEAD_RATIO |
| --- | --- | --- | --- |
| 587149137 | 2 | 2 | 1.00000000000000000 |
Se även
- Prestandajustering med materialiserad vy
- SKAPA MATERIALISERAD VY SOM SELECT (Transact-SQL)
- ÄNDRA MATERIALISERAD VY (Transact-SQL)
- EXPLAIN (Transact-SQL)
- sys.pdw_materialized_view_column_distribution_properties (Transact-SQL)
- sys.pdw_materialized_view_distribution_properties (Transact-SQL)
- sys.pdw_materialized_view_mappings (Transact-SQL)
- Katalogvyer för Azure Synapse Analytics och Parallel Data Warehouse
- Systemvyer som stöds i Azure Synapse Analytics
- T-SQL-instruktioner som stöds i Azure Synapse Analytics