Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
SQL Database w Microsoft Fabric
Zwraca informacje o stronie i liczbie wierszy dla każdej partycji w aktualnej bazie danych.
Uwaga / Notatka
Aby wywołać to z usługi Azure Synapse Analytics lub Analytics Platform System (PDW), użyj nazwy sys.dm_pdw_nodes_db_partition_stats. partition_id w sys.dm_pdw_nodes_db_partition_stats różni się od partition_id w widoku sys.partitions katalogowym Azure Synapse Analytics. Ta składnia nie jest obsługiwana przez bezserwerową pulę SQL w usłudze Azure Synapse Analytics.
| Nazwa kolumny | Typ danych | Description |
|---|---|---|
partition_id |
bigint | Identyfikator partycji. Jest to unikatowe w bazie danych. To ta sama wartość co w partition_id widoku sys.partitions katalogowym, z wyjątkiem Azure Synapse Analytics. |
object_id |
int | Identyfikator obiektu tabeli lub widoku indeksowego, którego częścią jest partycja. |
index_id |
int | ID sterty lub indeksu, którego częścią jest partycja. 0 = Sterta 1 = Indeks skupiony. > 1 = indeks nieklastrowany |
partition_number |
int | 1 numer partycji w indeksie lub stercie. |
in_row_data_page_count |
bigint | Liczba stron używanych do przechowywania danych w wierszu na tej partycji. Jeśli partycja jest częścią kopca, wartość to liczba stron danych w stercie. Jeśli partycja jest częścią indeksu, wartość to liczba stron na poziomie liścia. (Strony nielistowe w drzewie B+ nie są uwzględnione w liczbie.) Strony IAM (Index Allocation Map) nie są uwzględnione w żadnym z tych przypadków. Zawsze 0 dla indeksu columnstore zoptymalizowanego pod pamięć xVelocity. |
in_row_used_page_count |
bigint | Całkowita liczba stron używanych do przechowywania i zarządzania danymi w wierszu w tej partycji. To liczenie obejmuje strony drzewa B+ bez liści, strony IAM oraz wszystkie strony w kolumnie in_row_data_page_count . Zawsze 0 dla indeksu columnstore. |
in_row_reserved_page_count |
bigint | Łączna liczba stron zarezerwowanych do przechowywania i zarządzania danymi w wierszu w tej partycji, niezależnie od tego, czy strony są używane, czy nie. Zawsze 0 dla indeksu columnstore. |
lob_used_page_count |
bigint | Liczba stron używanych do przechowywania i zarządzania tekstem spoza wiersza, ntextem, obrazem, varchar(max),nvarchar(max), varbinary(max) oraz kolumnami xml w ramach partycji. Strony IAM są dołączone. Łączna liczba LOB-ów używanych do przechowywania i zarządzania indeksem columnstore w partycji. |
lob_reserved_page_count |
bigint | Całkowita liczba stron zarezerwowanych do przechowywania i zarządzania tekstem spoza wiersza, ntextem, obrazem, varchar(max), nvarchar(max), varbinary(max) oraz kolumnami xml w ramach partycji, niezależnie od tego, czy strony są używane, czy nie. Strony IAM są dołączone. Łączna liczba LOB-ów zarezerwowanych do przechowywania i zarządzania indeksem columnstore w partycji. |
row_overflow_used_page_count |
bigint | Liczba stron używanych do przechowywania i zarządzania wierszami przepełniającymi się kolumnami varchar, nvarchar, varbinary i sql_variant w ramach partycji. Strony IAM są dołączone. Zawsze 0 dla indeksu columnstore. |
row_overflow_reserved_page_count |
bigint | Łączna liczba stron zarezerwowanych do przechowywania i zarządzania kolumnami przepełniającymi wiersze varchar, nvarchar, varbinary i sql_variant w ramach partycji, niezależnie od tego, czy strony są używane, czy nie. Strony IAM są dołączone. Zawsze 0 dla indeksu columnstore. |
used_page_count |
bigint | Całkowita liczba stron użytych do partycji. Obliczone jako in_row_used_page_count + lob_used_page_count + row_overflow_used_page_count. |
reserved_page_count |
bigint | Łączna liczba stron zarezerwowanych na partycję. Obliczone jako in_row_reserved_page_count + lob_reserved_page_count + row_overflow_reserved_page_count. |
row_count |
bigint | Przybliżona liczba wierszy w podziale. |
pdw_node_id |
int |
Dotyczy do: Azure Synapse Analytics, Analytics Platform System (PDW) Identyfikator węzła, w ramach którego znajduje się ta dystrybucja. |
distribution_id |
int |
Dotyczy do: Azure Synapse Analytics, Analytics Platform System (PDW) Unikalny numeryczny identyfikator przypisany do rozkładu. |
Uwagi
Dynamiczny sys.dm_db_partition_stats widok zarządzania (DMV) wyświetla informacje o przestrzeni używanej do przechowywania i zarządzania danymi LOB w wierszu oraz danymi przepełnienia wiersza dla wszystkich partycji w bazie danych. Na każdą partycję wyświetlany jest jeden wiersz.
Liczby, na których opiera się wynik, są buforowane w pamięci lub przechowywane na dysku w różnych tabelach systemowych.
Dane w wierszach, dane LOB oraz dane przepełnienia wiersza reprezentują trzy jednostki alokacji tworzące partycję. Widok katalogu sys.allocation_units może być zapytywany o metadane dotyczące każdej jednostki alokacji w bazie danych.
Jeśli sterta lub indeks nie jest podzielony na partie, składa się z jednej partycji (z numerem partycji = 1); dlatego dla tego sterta lub indeksu zwracany jest tylko jeden wiersz. Widok katalogu sys.partitions może być zapytywany o metadane dotyczące każdej partycji wszystkich tabel i indeksów w bazie danych.
Łączną liczbę dla pojedynczej tabeli lub indeksu można uzyskać, dodając liczby dla wszystkich odpowiednich podziałów.
Permissions
Wymaga VIEW DATABASE STATE uprawnień VIEW DEFINITION do zapytań w dynamicznym widoku sys.dm_db_partition_stats zarządzania. Więcej informacji o uprawnieniach w dynamicznych widokach zarządzania można znaleźć w Dynamicznych Widokach i Funkcjach Zarządzania (Transact-SQL).
Uprawnienia dla programu SQL Server 2022 i nowszych
Wymaga uprawnień VIEW DATABASE PERFORMANCE STATE oraz VIEW SECURITY DEFINITION w bazie danych.
Przykłady
A. Zwróć wszystkie liczby dla wszystkich partycji wszystkich indeksów i kopców w bazie danych
Poniższy przykład pokazuje wszystkie liczby dla wszystkich partycji wszystkich indeksów i kopców w bazie AdventureWorks2025.
USE AdventureWorks2022;
GO
SELECT * FROM sys.dm_db_partition_stats;
GO
B. Zwróć wszystkie liczby dla wszystkich partycji tabeli i jej indeksów
Poniższy przykład pokazuje wszystkie liczby dla wszystkich partycji tabeli HumanResources.Employee i jej indeksów.
USE AdventureWorks2022;
GO
SELECT * FROM sys.dm_db_partition_stats
WHERE object_id = OBJECT_ID('HumanResources.Employee');
GO
C. Zwracaj łączną liczbę użytych stron oraz łączną liczbę wierszy dla indeksu sterty lub klastrowanego
Poniższy przykład zwraca łączną liczbę użytych stron oraz łączną liczbę wierszy dla kopca lub klastrowanego indeksu tabeli HumanResources.Employee . Ponieważ tabela Employee nie jest domyślnie podzielona na partycje, należy zauważyć, że suma obejmuje tylko jedną partycję.
USE AdventureWorks2022;
GO
SELECT SUM(used_page_count) AS total_number_of_used_pages,
SUM (row_count) AS total_number_of_rows
FROM sys.dm_db_partition_stats
WHERE object_id=OBJECT_ID('HumanResources.Employee') AND (index_id=0 or index_id=1);
GO