Compartir a través de


sys.dm_db_file_space_usage (Transact-SQL)

Devuelve información de uso del espacio para cada fila de la base de datos.

Nombre de columna

Tipo de datos

Descripción

database_id

smallint

Id. de la base de datos.

file_id

smallint

Id. de archivo.

file_id se asigna a file_id en sys.dm_io_virtual_file_stats y a fileid en sys.sysfiles.

filegroup_id

smallint

Identificador de grupo de archivos

total_page_count

bigint

Número total de páginas del archivo.

allocated_extent_page_count

bigint

Número total de páginas de las extensiones asignadas en el archivo.

unallocated_extent_page_count

bigint

Número total de páginas en las extensiones no asignadas en el archivo.

No se incluyen las páginas no utilizadas en extensiones asignadas.

version_store_reserved_page_count

bigint

Número total de páginas en las extensiones uniformes asignadas para el almacén de versiones. Las páginas de almacén de la versión nunca se asignan desde extensiones mixtas.

No se incluyen las páginas IAM porque siempre se asignan desde extensiones mixtas. Se incluyen las páginas PFS si están asignadas desde una extensión uniforme.

Para obtener más información, vea sys.dm_tran_version_store (Transact-SQL).

user_object_reserved_page_count

bigint

Número total de páginas asignadas desde extensiones uniformes para objetos de usuario en la base de datos. En el recuento se incluyen las páginas no utilizadas de una extensión asignada.

No se incluyen las páginas IAM porque siempre se asignan desde extensiones mixtas. Se incluyen las páginas PFS si están asignadas desde una extensión uniforme.

Puede utilizar la columna total_pages de la vista de catálogo sys.allocation_units para devolver el recuento de páginas reservadas de cada unidad de asignación en el objeto de usuario. No obstante, tenga en cuenta que la columna total_pages incluye las páginas IAM.

internal_object_reserved_page_count

bigint

Número total de páginas en extensiones uniformes asignadas para objetos internos en el archivo. En el recuento se incluyen las páginas no utilizadas de una extensión asignada.

No se incluyen las páginas IAM porque siempre se asignan desde extensiones mixtas. Se incluyen las páginas PFS si están asignadas desde una extensión uniforme.

No existe ninguna vista de catálogo ni objeto de administración dinámica que devuelva el recuento de páginas de cada objeto interno.

mixed_extent_page_count

bigint

Número total de páginas asignadas y no asignadas en extensiones mixtas asignadas en el archivo. Las extensiones mixtas contienen páginas asignadas a diferentes objetos. Este recuento no incluye todas las páginas IAM del archivo.

Comentarios

Los recuentos de páginas siempre son en el nivel de extensión. Por tanto, los valores de recuento de páginas siempre serán un múltiplo de ocho. Las extensiones que contienen páginas de asignación del Mapa de asignación global (GAM) y del Mapa de asignación global compartido (SGAM) se asignan a extensiones uniformes. No se incluyen en los recuentos de páginas descritos anteriormente.

El contenido del almacén de la versión actual está en sys.dm_tran_version_store. El seguimiento de las páginas del almacén de la versión se realiza en el nivel de archivo en vez de en el nivel de sesión y tarea porque son recursos globales. Una sesión puede generar versiones, pero las versiones no pueden quitarse cuando finaliza la sesión. Debe tenerse en cuenta una limpieza del almacén de versiones cuando se tengan que ejecutar transacciones prolongadas que necesiten acceso a la versión determinada. Las transacciones de ejecución prolongada relacionadas con la limpieza del almacén de versiones se pueden detectar examinando la columna elapsed_time_seconds en sys.dm_tran_active_snapshot_database_transactions.

Cambios frecuentes en la columna mixed_extent_page_count pueden indicar un uso excesivo de páginas SGAM. Cuando ocurre esto, puede ver muchas esperas de PAGELATCH_UP en las que el recurso esperado es una página SGAM. Para obtener más información, vea sys.dm_os_waiting_tasks (Transact-SQL), sys.dm_os_wait_stats (Transact-SQL) y sys.dm_os_latch_stats (Transact-SQL).

Objetos de usuario

Los objetos siguientes se incluyen en los contadores de páginas de objetos de usuario:

  • Índices y tablas definidos por el usuario

  • Índices y tablas del sistema

  • Índices y tablas temporales globales

  • Índices y tablas temporales locales

  • Variables de tabla

  • Tablas devueltas en las funciones con valores de tabla.

Objetos internos

Los objetos internos están solo en tempdb. Los objetos siguientes se incluyen en los contadores de páginas de objetos internos:

  • Tablas de trabajo de operaciones de cursor o grupos y almacenamiento de objetos temporales grandes (LOB)

  • Archivos de trabajo para operaciones como la combinación hash

  • Ordenaciones

Cardinalidades de relación

De

A

Relación

sys.dm_db_file_space_usage.database_id, file_id

sys.dm_io_virtual_file_stats.database_id, file_id

Uno a uno

Permisos

Requiere el permiso VIEW SERVER STATE en el servidor.

Vea también

Referencia

Funciones y vistas de administración dinámica (Transact-SQL)

Vistas de administración dinámica relacionadas con la base de datos (Transact-SQL)

sys.dm_db_task_space_usage (Transact-SQL)

sys.dm_db_session_space_usage (Transact-SQL)