(0) exportieren Drucken
Alle erweitern

sys.dm_db_partition_stats

Letzte Aktualisierung: April 2011

Dieses Thema ist VERALTET. Die neueste Version finden Sie in der SQL 14 Transact-SQL-Referenz.

ImportantWichtig
Dieses Thema wird nicht aktualisiert. Die aktuelle Version finden Sie unter sys.dm_db_partition_stats.

Gibt Informationen zu Seiten- und Zeilenzahlen für jede Partition in der aktuellen Datenbank zurück.

 

Spaltenname Datentyp Beschreibung

partition_id

bigint

Die ID der Partition. Sie ist innerhalb einer Datenbank eindeutig. Dieser Wert ist identisch mit dem partition_id-Wert in der sys.partitions-Katalogsicht.

object_id

int

Objekt-ID der Tabelle oder der indizierten Sicht, in der die Partition enthalten ist.

index_id

int

ID des Heaps oder Indexes, in dem die Partition enthalten ist.

0 = Heap

1 = Gruppierter Index.

> 1 = Nicht gruppierter Index

partition_number

int

Auf 1 basierende Partitionsnummer im Index oder Heap.

in_row_data_page_count

bigint

Anzahl der Seiten, die zum Speichern von Daten innerhalb einer Zeile dieser Partition verwendet werden. Falls die Partition Teil eines Heaps ist, gibt der Wert die Anzahl von Datenseiten im Heap an. Falls die Partition Teil eines Indexes ist, gibt der Wert die Anzahl der Seiten auf Blattebene an. (Seiten des inneren Blatts in der B-Struktur sind in der Zählung nicht enthalten.) IAM-Seiten (Index Allocation Map) sind in beiden Fällen nicht enthalten. Immer 0 für einen Columnstore-Index, der mit xVelocity-Arbeitsspeichertechnologie optimiert ist.

in_row_used_page_count

bigint

Gesamtanzahl der Seiten, die zum Speichern und Verwalten der Daten in Zeilen in dieser Partition verwendet werden. Die Zahl schließt Seiten des inneren Blatts in der B-Struktur, IAM-Seiten und alle Seiten ein, die in der in_row_data_page_count-Spalte enthalten sind. Immer 0 für einen columnstore-Index.

in_row_reserved_page_count

bigint

Gesamtanzahl der Seiten, die zum Speichern und Verwalten der Daten in Zeilen in dieser Partition reserviert sind, unabhängig davon, ob die Seiten verwendet werden. Immer 0 für einen columnstore-Index.

lob_used_page_count

bigint

Anzahl der Seiten, die zum Speichern und Verwalten von Spalten vom Typ text, ntext, image, varchar(max), nvarchar(max), varbinary(max) und xml außerhalb von Zeilen in der Partition verwendet werden. IAM-Seiten sind eingeschlossen.

Gesamtzahl von LOBs, die zum Speichern und Verwalten des columnstore-Index in der Partition verwendet werden.

lob_reserved_page_count

bigint

Gesamtanzahl der Seiten, die zum Speichern und Verwalten von Spalten vom Typ text, ntext, image, varchar(max), nvarchar(max), varbinary(max) und xml außerhalb von Zeilen in der Partition reserviert sind, unabhängig davon, ob die Seiten verwendet werden. IAM-Seiten sind eingeschlossen.

Gesamtzahl von LOBs, die zum Speichern und Verwalten eines columnstore-Index in der Partition reserviert wurden.

row_overflow_used_page_count

bigint

Anzahl der Seiten, die zum Speichern und Verwalten von Zeilenüberlaufspalten vom Typ varchar, nvarchar, varbinary und sql_variant in der Partition verwendet werden. IAM-Seiten sind eingeschlossen.

Immer 0 für einen columnstore-Index.

row_overflow_reserved_page_count

bigint

Gesamtanzahl der Seiten, die zum Speichern und Verwalten von Zeilenüberlaufspalten vom Typ varchar, nvarchar, varbinary und sql_variant in der Partition reserviert sind, unabhängig davon, ob die Seiten verwendet werden. IAM-Seiten sind eingeschlossen.

Immer 0 für einen columnstore-Index.

used_page_count

bigint

Gesamtanzahl der für die Partition verwendeten Seiten. Diese Zahl wird wie folgt berechnet: in_row_used_page_count + lob_used_page_count + row_overflow_used_page_count.

reserved_page_count

bigint

Gesamtanzahl der für die Partition reservierten Seiten. Diese Zahl wird wie folgt berechnet: in_row_reserved_page_count + lob_reserved_page_count + row_overflow_reserved_page_count.

row_count

bigint

Die ungefähre Anzahl von Zeilen in dieser Partition.

sys.dm_db_partition_stats zeigt Informationen zu dem Bereich an, der zum Speichern und Verwalten von LOB-Daten in Zeilen und von Zeilenüberlaufdaten für alle Partitionen in einer Datenbank verwendet wird. Es wird eine Zeile pro Partition angezeigt.

Die Zahlen, auf denen die Ausgabe basiert, werden im Arbeitsspeicher zwischengespeichert oder auf einem Datenträger in unterschiedlichen Systemtabellen gespeichert.

In Zeilen gespeicherte Daten, LOB-Daten und Zeilenüberlaufdaten stellen die drei Zuordnungseinheiten dar, aus denen eine Partition besteht. Die sys.allocation_units-Katalogsicht kann für Metadaten zu jeder Zuordnungseinheit in der Datenbank abgefragt werden.

Falls ein Heap oder Index nicht partitioniert ist, besteht er aus einer Partition (mit der Partitionsnummer = 1). Daher wird nur eine Zeile für diesen Heap oder Index zurückgegeben. Die sys.partitions-Katalogsicht kann für Metadaten zu jeder Partition aller Tabellen und Indizes in einer Datenbank abgefragt werden.

Die Gesamtanzahl für eine einzelne Tabelle oder einen Index kann durch das Addieren der Zahlen für alle relevanten Partitionen bestimmt werden.

Erfordert die VIEW DATABASE STATE-Berechtigung zum Abfragen der dynamischen Verwaltungssicht sys.dm_db_partition_stats. Weitere Informationen zu Berechtigungen für dynamische Verwaltungssichten finden Sie unter Dynamic Management Objects.

Im folgenden Beispiel werden alle Zahlen für alle Partitionen von allen Indizes und Heaps in der -Datenbank angezeigt.

USE AdventureWorks2012;
GO
SELECT * FROM sys.dm_db_partition_stats;
GO

Im folgenden Beispiel werden alle Zahlen aller Partitionen der HumanResources.Employee-Tabelle und ihrer Indizes angezeigt.

USE AdventureWorks2012;
GO
SELECT * FROM sys.dm_db_partition_stats 
WHERE object_id = OBJECT_ID('HumanResources.Employee');
GO

Im folgenden Beispiel werden Angaben zu den insgesamt verwendeten Seiten und zur Gesamtanzahl der Zeilen für den Heap oder gruppierten Index der HumanResources.Employee-Tabelle zurückgegeben. Da die Employee-Tabelle standardmäßig nicht partitioniert ist, umfasst die Summe nur eine Partition.

USE AdventureWorks2012;
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

Anzeigen:
© 2014 Microsoft