Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: Azure Synapse Analytics
Przedstawia liczbę zmian przyrostowych w tabelach podstawowych przechowywanych dla zmaterializowanych widoków w usłudze Azure Synapse Analytics. Współczynnik obciążenia jest obliczany jako TOTAL_ROWS / MAX (1, BASE_VIEW_ROWS).
Transact-SQL konwencje składni
Składnia
DBCC PDW_SHOWMATERIALIZEDVIEWOVERHEAD ( "[ schema_name . ] materialized_view_name" )
[;]
Nuta
Ta składnia nie jest obsługiwana przez bezserwerową pulę SQL w usłudze Azure Synapse Analytics.
Argumenty
schema_name
Nazwa schematu, do którego należy widok.
materialized_view_name
Nazwa zmaterializowanego widoku.
Uwagi
Aby zachować zmaterializowane widoki odświeżone ze zmianami danych w tabelach podstawowych, aparat magazynu danych dodaje wiersze śledzenia do każdego widoku, którego dotyczy problem, w celu odzwierciedlenia zmian. Wybranie zmaterializowanego widoku obejmuje skanowanie klastrowanego indeksu magazynu kolumn widoku i stosowanie wszelkich zmian przyrostowych. Wiersze śledzenia (TOTAL_ROWS — BASE_VIEW_ROWS) nie są usuwane, dopóki użytkownicy nie skompilują zmaterializowanego widoku.
Overhead_ratio jest obliczana jako TOTAL_ROWS /MAX(1, BASE_VIEW_ROWS). Jeśli jest wysoka, wydajność select obniży się. Użytkownicy mogą ponownie skompilować zmaterializowany widok, aby zmniejszyć jego współczynnik obciążenia.
Uprawnienia
Wymaga uprawnień VIEW DATABASE STATE.
Przykłady
A. W tym przykładzie zwracany jest współczynnik narzutów zmaterializowanego widoku.
DBCC PDW_SHOWMATERIALIZEDVIEWOVERHEAD ("dbo.MyIndexedView");
Przykładowe dane wyjściowe:
OBJECT_ID | BASE_VIEW_ROWS | TOTAL_ROWS | OVERHEAD_RATIO |
---|---|---|---|
1234 | 1 | 3 | 3.0 |
B. W tym przykładzie pokazano, jak zmaterializowany widok zwiększa się wraz ze zmianami danych w tabelach bazowych
Utwórz tabelę:
CREATE TABLE t1 (c1 INT NOT NULL, c2 INT NOT NULL, c3 INT NOT NULL);
Wstaw pięć wierszy do 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);
Utwórz zmaterializowane widoki MV1:
CREATE MATERIALIZED VIEW MV1
WITH (DISTRIBUTION = HASH(c1))
AS
SELECT c1, COUNT(*) total_number
FROM dbo.t1 WHERE c1 < 3
GROUP BY c1;
Wybranie zmaterializowanego widoku zwraca dwa wiersze.
c1 | total_number |
---|---|
1 | 1 |
2 | 1 |
Przed zmianami danych w tabeli podstawowej sprawdź zmaterializowany widok.
DBCC PDW_SHOWMATERIALIZEDVIEWOVERHEAD ("dbo.mv1")
Przykładowe dane wyjściowe:
OBJECT_ID | BASE_VIEW_ROWS | TOTAL_ROWS | OVERHEAD_RATIO |
---|---|---|---|
587149137 | 2 | 2 | 1.00000000000000000 |
Zaktualizuj tabelę podstawową. To zapytanie aktualizuje tę samą kolumnę w tym samym wierszu 100 razy do tej samej wartości. Zmaterializowana zawartość widoku nie zmienia się.
DECLARE @p INT;
SELECT @p = 1;
WHILE (@p < 101)
BEGIN
UPDATE t1 SET c1 = 1 WHERE c1 = 1;
SELECT @p = @p + 1;
END;
Wybranie zmaterializowanego widoku zwraca ten sam wynik, co poprzednio.
c1 | total_number |
---|---|
1 | 1 |
2 | 1 |
Poniżej przedstawiono dane wyjściowe z DBCC PDW_SHOWMATERIALIZEDVIEWOVERHEAD ("dbo.mv1")
. Do zmaterializowanego widoku są dodawane 100 wierszy (total_row — base_view_rows), a jego overhead_ratio jest zwiększana.
OBJECT_ID | BASE_VIEW_ROWS | TOTAL_ROWS | OVERHEAD_RATIO |
---|---|---|---|
587149137 | 2 | 102 | 51.00000000000000000 |
Po odbudowaniu zmaterializowanego widoku wszystkie wiersze śledzenia zmian danych przyrostowych zostaną wyeliminowane, a współczynnik nakładu pracy widoku zostanie zmniejszony.
ALTER MATERIALIZED VIEW dbo.MV1 REBUILD
GO
DBCC PDW_SHOWMATERIALIZEDVIEWOVERHEAD ("dbo.mv1")
Wyjście
| OBJECT_ID | BASE_VIEW_ROWS | TOTAL_ROWS | OVERHEAD_RATIO |
| --- | --- | --- | --- |
| 587149137 | 2 | 2 | 1.00000000000000000 |
Zobacz też
- dostrajanie wydajności za pomocą zmaterializowanego widoku
- UTWÓRZ ZMATERIALIZOWANY WIDOK JAKO SELECT (Transact-SQL)
- ALTER MATERIALIZED VIEW (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)
- widoków wykazu usługi Azure Synapse Analytics i równoległego magazynu danych
- widoki systemu obsługiwane w usłudze Azure Synapse Analytics
- instrukcje języka T-SQL obsługiwane w usłudze Azure Synapse Analytics