sys.dm_db_partition_stats (Transact-SQL)sys.dm_db_partition_stats (Transact-SQL)

SE APLICA A: síSQL Server (a partir de 2008) síAzure SQL Database síAzure SQL Data Warehouse síAlmacenamiento de datos paralelos APPLIES TO: yesSQL Server (starting with 2008) yesAzure SQL Database yesAzure SQL Data Warehouse yesParallel Data Warehouse

Devuelve información de página y recuento de filas de cada partición en la base de datos actual.Returns page and row-count information for every partition in the current database.

Nota

Al llamarlo desde Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse o Almacenamiento de datos paralelosParallel Data Warehouse, use el nombre sys.dm_pdw_nodes_db_partition_stats.To call this from Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse or Almacenamiento de datos paralelosParallel Data Warehouse, use the name sys.dm_pdw_nodes_db_partition_stats. El partition_id en sys.dm_pdw_nodes_db_partition_stats difiere el partition_id en la vista de catálogo sys.partitions para Azure SQL Data Warehouse.The partition_id in sys.dm_pdw_nodes_db_partition_stats differs from the partition_id in the sys.partitions catalog view for Azure SQL Data Warehouse.

Nombre de columnaColumn name Tipo de datosData type DescripciónDescription
partition_idpartition_id bigintbigint Id. de la partición.ID of the partition. Es único en la base de datos.This is unique within a database. Este es el mismo valor que el partition_id en el sys.partitions vista excepto para Azure SQL Data Warehouse de catálogo.This is the same value as the partition_id in the sys.partitions catalog view except for Azure SQL Data Warehouse.
object_idobject_id intint Id. de objeto de la tabla o vista indizada de la que esta partición forma parte.Object ID of the table or indexed view that the partition is part of.
index_idindex_id intint Id. del montón o índice del que esta partición forma parte.ID of the heap or index the partition is part of.

0 = Montón0 = Heap

1 = Índice clúster.1 = Clustered index.

> 1 = índice no clúster> 1 = Nonclustered index
partition_numberpartition_number intint Número de partición en base 1 en el índice o montón.1-based partition number within the index or heap.
in_row_data_page_countin_row_data_page_count bigintbigint Número de páginas en uso para almacenar datos consecutivos en esta partición.Number of pages in use for storing in-row data in this partition. Si la partición forma parte de un montón, el valor es el número de páginas de datos en el montón.If the partition is part of a heap, the value is the number of data pages in the heap. Si la partición forma parte de un índice, el valor es el número de páginas en el nivel hoja.If the partition is part of an index, the value is the number of pages in the leaf level. (Las páginas no hoja del árbol B no se incluyen en el recuento). No se incluyen las páginas IAM (mapa de asignación de índice) en cualquier caso.(Nonleaf pages in the B-tree are not included in the count.) IAM (Index Allocation Map) pages are not included in either case. Siempre es 0 para un índice de almacén de columnas optimizado de memoria xVelocity.Always 0 for an xVelocity memory optimized columnstore index.
in_row_used_page_countin_row_used_page_count bigintbigint Número total de páginas en uso para almacenar y administrar datos consecutivos en esta partición.Total number of pages in use to store and manage the in-row data in this partition. Este recuento incluye páginas no hoja de árbol B, las páginas IAM y todas las páginas incluidas en el in_row_data_page_count columna.This count includes nonleaf B-tree pages, IAM pages, and all pages included in the in_row_data_page_count column. Siempre es 0 para un índice de almacén de columnas.Always 0 for a columnstore index.
in_row_reserved_page_countin_row_reserved_page_count bigintbigint Número total de páginas reservadas para almacenar y administrar datos consecutivos en esta partición, independientemente de si las páginas están en uso o no.Total number of pages reserved for storing and managing in-row data in this partition, regardless of whether the pages are in use or not. Siempre es 0 para un índice de almacén de columnas.Always 0 for a columnstore index.
lob_used_page_countlob_used_page_count bigintbigint Número de páginas en uso para almacenar y administrar fuera de la fila texto, ntext, imagen, varchar (max) , nvarchar (máx.) , varbinary (max) , y xml columnas dentro de la partición.Number of pages in use for storing and managing out-of-row text, ntext, image, varchar(max), nvarchar(max), varbinary(max), and xml columns within the partition. Las páginas IAM están incluidas.IAM pages are included.

Número total de LOBs utilizados para almacenar y administrar el índice de almacén de columnas en la partición.Total number of LOBs used to store and manage columnstore index in the partition.
lob_reserved_page_countlob_reserved_page_count bigintbigint Número total de páginas reservadas para almacenar y administrar fuera de la fila texto, ntext, imagen, varchar (max) , nvarchar (max) , varbinary (max) , y xml columnas dentro de la partición, independientemente de si las páginas están en uso o no.Total number of pages reserved for storing and managing out-of-row text, ntext, image, varchar(max), nvarchar(max), varbinary(max), and xml columns within the partition, regardless of whether the pages are in use or not. Las páginas IAM están incluidas.IAM pages are included.

Número total de LOBs reservados para almacenar y administrar un índice de almacén de columnas en la partición.Total number of LOBs reserved for storing and managing a columnstore index in the partition.
row_overflow_used_page_countrow_overflow_used_page_count bigintbigint Número de páginas en uso para almacenar y administrar el desbordamiento de fila varchar, nvarchar, varbinary, y sql_variant columnas dentro de la partición.Number of pages in use for storing and managing row-overflow varchar, nvarchar, varbinary, and sql_variant columns within the partition. Las páginas IAM están incluidas.IAM pages are included.

Siempre es 0 para un índice de almacén de columnas.Always 0 for a columnstore index.
row_overflow_reserved_page_countrow_overflow_reserved_page_count bigintbigint Número total de páginas reservadas para almacenar y administrar el desbordamiento de fila varchar, nvarchar, varbinary, y sql_variant columnas dentro de la partición, independientemente de si las páginas están en uso o no.Total number of pages reserved for storing and managing row-overflow varchar, nvarchar, varbinary, and sql_variant columns within the partition, regardless of whether the pages are in use or not. Las páginas IAM están incluidas.IAM pages are included.

Siempre es 0 para un índice de almacén de columnas.Always 0 for a columnstore index.
used_page_countused_page_count bigintbigint Número total de páginas usadas para la partición.Total number of pages used for the partition. Se calcula como in_row_used_page_count + lob_used_page_count + row_overflow_used_page_count.Computed as in_row_used_page_count + lob_used_page_count + row_overflow_used_page_count.
reserved_page_countreserved_page_count bigintbigint Número total de páginas reservadas para la partición.Total number of pages reserved for the partition. Se calcula como in_row_reserved_page_count + lob_reserved_page_count + row_overflow_reserved_page_count.Computed as in_row_reserved_page_count + lob_reserved_page_count + row_overflow_reserved_page_count.
row_countrow_count bigintbigint Número aproximado de filas de la partición.The approximate number of rows in the partition.
pdw_node_idpdw_node_id intint Se aplica a: Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse, Almacenamiento de datos paralelosParallel Data WarehouseApplies to: Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse, Almacenamiento de datos paralelosParallel Data Warehouse

El identificador para el nodo en esta distribución.The identifier for the node that this distribution is on.
distribution_iddistribution_id intint Se aplica a: Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse, Almacenamiento de datos paralelosParallel Data WarehouseApplies to: Almacenamiento de datos SQL de AzureAzure SQL Data Warehouse, Almacenamiento de datos paralelosParallel Data Warehouse

El identificador numérico único asociado con la distribución.The unique numeric id associated with the distribution.

ComentariosRemarks

Sys.dm_db_partition_stats muestra información sobre el espacio utilizado para almacenar y administrar datos en la fila de datos LOB y datos de desbordamiento de fila para todas las particiones en una base de datos.sys.dm_db_partition_stats displays information about the space used to store and manage in-row data LOB data, and row-overflow data for all partitions in a database. Se muestra una fila por partición.One row is displayed per partition.

Los recuentos en los que se basa el resultado se almacenan en caché en memoria o se almacenan en disco en varias tablas del sistema.The counts on which the output is based are cached in memory or stored on disk in various system tables.

Los datos consecutivos, datos LOB y datos de desbordamiento de fila representan las tres unidades de asignación que forman una partición.In-row data, LOB data, and row-overflow data represent the three allocation units that make up a partition. El sys.allocation_units se puede consultar la vista de catálogo de metadatos acerca de cada unidad de asignación en la base de datos.The sys.allocation_units catalog view can be queried for metadata about each allocation unit in the database.

Si un montón o un índice no tiene particiones, entonces consta de una partición (con el número de partición = 1); por tanto, solo se devuelve una fila para ese montón o índice.If a heap or index is not partitioned, it is made up of one partition (with partition number = 1); therefore, only one row is returned for that heap or index. El sys.partitions se puede consultar la vista de catálogo de metadatos acerca de cada partición de todas las tablas e índices en una base de datos.The sys.partitions catalog view can be queried for metadata about each partition of all the tables and indexes in a database.

El recuento total de cada tabla o índice se puede obtener agregando los recuentos de todas las particiones relacionadas.The total count for an individual table or an index can be obtained by adding the counts for all relevant partitions.

PermisosPermissions

Requiere el permiso VIEW DATABASE STATE para consultar el sys.dm_db_partition_stats vista de administración dinámica.Requires VIEW DATABASE STATE permission to query the sys.dm_db_partition_stats dynamic management view. Para obtener más información acerca de los permisos en las vistas de administración dinámica, consulte funciones y vistas de administración dinámica (Transact-SQL).For more information about permissions on dynamic management views, see Dynamic Management Views and Functions (Transact-SQL).

EjemplosExamples

A.A. Devolver todos los recuentos de todas las particiones de todos los índices y montones en una base de datosReturning all counts for all partitions of all indexes and heaps in a database

En el siguiente ejemplo se muestran todos los recuentos de todas las particiones de todos los índices y montones en la base de datos AdventureWorks2012AdventureWorks2012.The following example shows all counts for all partitions of all indexes and heaps in the AdventureWorks2012AdventureWorks2012 database.

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

b.B. Devolver todos los recuentos de todas las particiones de una tabla y sus índicesReturning all counts for all partitions of a table and its indexes

En el siguiente ejemplo se muestran todos los recuentos de todas las particiones de la tabla HumanResources.Employee y sus índices.The following example shows all counts for all partitions of the HumanResources.Employee table and its indexes.

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

C.C. Devolver el número total de páginas usadas y el número total de filas de un montón o índice clústerReturning total used pages and total number of rows for a heap or clustered index

En el siguiente ejemplo se devuelve el número total de páginas usadas y el número total de filas del montón o índice clúster de la tabla HumanResources.Employee.The following example returns total used pages and total number of rows for the heap or clustered index of the HumanResources.Employee table. Puesto que la tabla Employee no tiene particiones de forma predeterminada, observe que la suma solo incluye una partición.Because the Employee table is not partitioned by default, note the sum includes only one 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  

Vea tambiénSee Also

Funciones y vistas de administración dinámica (Transact-SQL) Dynamic Management Views and Functions (Transact-SQL)
Vistas de administración dinámica relacionadas con la base de datos (Transact-SQL)Database Related Dynamic Management Views (Transact-SQL)