sys.dm_os_latch_stats
Actualizado: 17 de julio de 2006
Devuelve información acerca de todas las esperas de pestillos organizadas por clase.
Nombre de columna
Tipo de datos
Descripción
latch_class
nvarchar(120)
Nombre de la clase de pestillo.
waiting_requests_count
bigint
Número de esperas en pestillos en esta clase Este recuento se incrementa al inicio de una espera de pestillo.
wait_time_ms
bigint
Tiempo total de espera, en milisegundos, en pestillos en esta clase
Nota:
Esta columna se actualiza cada cinco minutos durante una espera de pestillo y al final de la misma.
max_wait_time_ms
bigint
Tiempo máximo que un objeto de memoria ha esperado en este pestillo. Si este valor es extraordinariamente alto, puede indicar un bloqueo interno.
Permisos
Requiere el permiso VIEW SERVER STATE en el servidor.
Notas
sys.dm_os_latch_stats se puede utilizar para identificar el origen de la contención de pestillos examinando los tiempos y números de esperas relativos en las diferentes clases de pestillos. En algunas situaciones, se puede resolver o reducir la contención de pestillos. No obstante, puede haber situaciones que requerirán ponerse en contacto con los servicios de soporte al cliente de Microsoft.
Puede restablecer el contenido de sys.dm_os_latch_stats utilizando DBCC SQLPERF
de la forma siguiente:
DBCC SQLPERF ('sys.dm_os_latch_stats', CLEAR);
GO
Esto restablece todos los recuentos en 0.
[!NOTA] Estas estadísticas no permanecen si SQL Server se reinicia. Todos los datos se acumulan desde la última vez que se restablecieron las estadísticas o desde que se inició SQL Server.
Pestillos
Un pestillo es un objeto de sincronización ligero que utilizan varios componentes de SQL Server. Un pestillo se utiliza sobre todo para sincronizar páginas de la base de datos. Cada pestillo está asociado a una sola unidad de asignación.
Una espera de pestillo se produce cuando no se puede conceder una solicitud de pestillo inmediatamente, porque otro subproceso mantiene el pestillo en un modo de conflictos. A diferencia de los bloqueos, un pestillo se libera inmediatamente después de la operación, incluso en operaciones de escritura.
Los pestillos se agrupan en clases basándose en componentes y usos. En una instancia de SQL Server pueden existir cero o más pestillos de una determinada clase en cualquier momento.
[!NOTA] sys.dm_os_latch_stats no realiza el seguimiento de solicitudes de pestillos que se conceden inmediatamente o que han tenido errores sin esperar.
En la siguiente tabla se ofrecen descripciones breves de las diversas clases de pestillos.
Clase de pestillo | Descripción |
---|---|
ALLOC_CREATE_RINGBUF |
SQL Server lo utiliza internamente para inicializar la sincronización de la creación de un búfer de anillo de asignación. |
ALLOC_CREATE_FREESPACE_CACHE |
Se utiliza para inicializar la sincronización de cachés de espacio libre interno para montones. |
ALLOC_CACHE_MANAGER |
Se utiliza para sincronizar pruebas de coherencia internas. |
ALLOC_FREESPACE_CACHE |
Se utiliza para sincronizar el acceso a una caché de páginas con espacio disponible para montones y objetos binarios grandes (BLOB). La contención de pestillos de esta clase puede producirse cuando varias conexiones intentan insertar filas en un montón o BLOB simultáneamente. Puede reducir la contención si particiona el objeto. Cada partición tiene su propio pestillo. La creación de particiones distribuirá las inserciones en varios pestillos. |
ALLOC_EXTENT_CACHE |
Se utiliza para sincronizar el acceso a una caché de extensiones que contiene páginas que no están asignadas. La contención de pestillos de esta clase puede producirse cuando varias conexiones intentan asignar páginas de datos en la misma unidad de asignación simultáneamente. Esta contención se puede reducir particionando el objeto de la que forma parte esta unidad de asignación. |
ACCESS_METHODS_DATASET_PARENT |
Se utiliza para sincronizar el acceso de un conjunto de datos secundario al conjunto de datos primario durante operaciones en paralelo. |
ACCESS_METHODS_HOBT_FACTORY |
Se utiliza para sincronizar el acceso a una tabla de hash interna. |
ACCESS_METHODS_HOBT |
Se utiliza para sincronizar el acceso a la representación en memoria de entrada de un HoBt. |
ACCESS_METHODS_HOBT_COUNT |
Se utiliza para sincronizar el acceso una página HoBt y recuentos de fila. |
ACCESS_METHODS_HOBT_VIRTUAL_ ROOT |
Se utiliza para sincronizar el acceso a la abstracción de la página raíz de un árbol b interno. |
ACCESS_METHODS_CACHE_ONLY_ HOBT_ALLOC |
Se utiliza para sincronizar el acceso a la tabla de trabajo. |
ACCESS_METHODS_BULK_ALLOC |
Se utiliza para sincronizar el acceso en asignadores masivos. |
ACCESS_METHODS_SCAN_RANGE_ GENERATOR |
Se utiliza para sincronizar el acceso a un generador de intervalos durante búsquedas en paralelo. |
ACCESS_METHODS_KEY_RANGE_ GENERATOR |
Se utiliza para sincronizar el acceso a operaciones de lectura anticipada durante búsquedas en paralelo de intervalos de claves. |
APPEND_ONLY_STORAGE_INSERT_ POINT |
Se utiliza para sincronizar el acceso inserciones en unidades de almacenamiento sólo de adición rápida. |
APPEND_ONLY_STORAGE_FIRST_ALLOC |
Se utiliza para sincronizar la primera asignación de una unidad de almacenamiento sólo de adición. |
APPEND_ONLY_STORAGE_UNIT_ MANAGER |
Se utiliza para sincronizar el acceso de estructuras de datos internas en el administrador de unidades de almacenamiento sólo de adición rápida. |
APPEND_ONLY_STORAGE_MANAGER |
Se utiliza para sincronizar operaciones de reducción en el administrador de unidades de almacenamiento sólo de adición rápida. |
BACKUP_RESULT_SET |
Se utiliza para sincronizar conjuntos de resultados de copia de seguridad en paralelo. |
BACKUP_TAPE_POOL |
Se utiliza para sincronizar grupos de cintas de copia de seguridad. |
BACKUP_LOG_REDO |
Se utiliza para sincronizar operaciones de rehacer el registro de copia de seguridad. |
BACKUP_INSTANCE_ID |
Se utiliza para sincronizar la generación de identificadores de instancia de contadores de supervisión de rendimiento de copia de seguridad. |
BACKUP_MANAGER |
Se utiliza para sincronizar el administrador de copia de seguridad interno. |
BACKUP_MANAGER_DIFFERENTIAL |
Se utiliza para sincronizar operaciones de copia de seguridad diferencial con DBCC. |
BACKUP_OPERATION |
Se utiliza para sincronizar estructuras de datos internas en una operación de copia de seguridad, como base de datos, registro o copia de seguridad de archivos. |
BACKUP_FILE_HANDLE |
Se utiliza para sincronizar operaciones de apertura de archivos durante una operación de restauración. |
BUFFER |
Se utiliza para sincronizar el acceso a corto plazo a páginas de la base de datos. Se requiere un pestillo de búfer antes de leer o modificar una página de la base de datos. La contención de pestillos de búfer puede indicar varios problemas, incluidas páginas activas y operaciones de E/S lentas. Esta clase de pestillo cubre todos los usos posibles de pestillos de página. sys.dm_os_wait_stats establece diferencias entre esperas de pestillos de página causadas por operaciones de E/S y operaciones de lectura y escritura en la página. |
BUFFER_POOL_GROW |
Se utiliza para sincronizar el administrador del búfer interno durante operaciones de ampliación del grupo de búferes. |
DATABASE_CHECKPOINT |
Se utiliza para serializar puntos de comprobación en una base de datos. |
CLR_PROCEDURE_HASHTABLE |
Sólo para uso interno. |
CLR_UDX_STORE |
Sólo para uso interno. |
CLR_DATAT_ACCESS |
Sólo para uso interno. |
CLR_XVAR_PROXY_LIST |
Sólo para uso interno. |
DBCC_CHECK_AGGREGATE |
Sólo para uso interno. |
DBCC_CHECK_RESULTSET |
Sólo para uso interno. |
DBCC_CHECK_TABLE |
Sólo para uso interno. |
DBCC_CHECK_TABLE_INIT |
Sólo para uso interno. |
DBCC_CHECK_TRACE_LIST |
Sólo para uso interno. |
DBCC_FILE_CHECK_OBJECT |
Sólo para uso interno. |
DBCC_PERF |
Se utiliza para sincronizar contadores de supervisión de rendimiento internos. |
DBCC_PFS_STATUS |
Sólo para uso interno. |
DBCC_OBJECT_METADATA |
Sólo para uso interno. |
DBCC_HASH_DLL |
Sólo para uso interno. |
EVENTING_CACHE |
Sólo para uso interno. |
FCB |
Se utiliza para sincronizar el acceso a un bloque de control de archivos. |
FCB_REPLICA |
Sólo para uso interno. |
FGCB_ALLOC |
Se utiliza para sincronizar el acceso a información de asignación por turnos en un grupo de archivos. |
FGCB_ADD_REMOVE |
Se utiliza para sincronizar el acceso a grupos de archivos para operaciones de archivo ADD y DROP. |
FILEGROUP_MANAGER |
Sólo para uso interno. |
FILE_MANAGER |
Sólo para uso interno. |
FILESTREAM_FCB |
Sólo para uso interno. |
FILESTREAM_FILE_MANAGER |
Sólo para uso interno. |
FILESTREAM_GHOST_FILES |
Sólo para uso interno. |
FILESTREAM_DFS_ROOT |
Sólo para uso interno. |
LOG_MANAGER |
Sólo para uso interno. |
FULLTEXT_DOCUMENT_ID |
Sólo para uso interno. |
FULLTEXT_DOCUMENT_ID_ TRANSACTION |
Sólo para uso interno. |
FULLTEXT_DOCUMENT_ID_NOTIFY |
Sólo para uso interno. |
FULLTEXT_LOGS |
Sólo para uso interno. |
FULLTEXT_CRAWL_LOG |
Sólo para uso interno. |
FULLTEXT_ADMIN |
Sólo para uso interno. |
FULLTEXT_AMDIN_COMMAND_CACHE |
Sólo para uso interno. |
FULLTEXT_LANGUAGE_TABLE |
Sólo para uso interno. |
FULLTEXT_CRAWL_DM_LIST |
Sólo para uso interno. |
FULLTEXT_CRAWL_CATALOG |
Sólo para uso interno. |
FULLTEXT_FILE_MANAGER |
Sólo para uso interno. |
DATABASE_MIRRORING_REDO |
Sólo para uso interno. |
DATABASE_MIRRORING_SERVER |
Sólo para uso interno. |
DATABASE_MIRRORING_CONNECTION |
Sólo para uso interno. |
DATABASE_MIRRORING_STREAM |
Sólo para uso interno. |
QUERY_OPTIMIZER_VD_MANAGER |
Sólo para uso interno. |
QUERY_OPTIMIZER_ID_MANAGER |
Sólo para uso interno. |
QUERY_OPTIMIZER_VIEW_REP |
Sólo para uso interno. |
RECOVERY_BAD_PAGE_TABLE |
Sólo para uso interno. |
RECOVERY_MANAGER |
Sólo para uso interno. |
SECURITY_OPERATION_RULE_TABLE |
Sólo para uso interno. |
SECURITY_OBJPERM_CACHE |
Sólo para uso interno. |
SECURITY_CRYPTO |
Sólo para uso interno. |
SECURITY_KEY_RING |
Sólo para uso interno. |
SECURITY_KEY_LIST |
Sólo para uso interno. |
SERVICE_BROKER_CONNECTION_RECEIVE |
Sólo para uso interno. |
SERVICE_BROKER_TRANSMISSION |
Sólo para uso interno. |
SERVICE_BROKER_TRANSMISSION_UPDATE |
Sólo para uso interno. |
SERVICE_BROKER_TRANSMISSION_STATE |
Sólo para uso interno. |
SERVICE_BROKER_TRANSMISSION_ERRORS |
Sólo para uso interno. |
SSBXmitWork |
Sólo para uso interno. |
SERVICE_BROKER_MESSAGE_TRANSMISSION |
Sólo para uso interno. |
SERVICE_BROKER_MAP_MANAGER |
Sólo para uso interno. |
SERVICE_BROKER_HOST_NAME |
Sólo para uso interno. |
SERVICE_BROKER_READ_CACHE |
Sólo para uso interno. |
SERVICE_BROKER_WAITFOR_MANAGER |
Sólo para uso interno. |
SERVICE_BROKER_WAITFOR_TRANSACTION_DATA |
Sólo para uso interno. |
SERVICE_BROKER_TRANSMISSION_TRANSACTION_DATA |
Sólo para uso interno. |
SERVICE_BROKER_TRANSPORT |
Sólo para uso interno. |
SERVICE_BROKER_MIRROR_ROUTE |
Sólo para uso interno. |
TRACE_ID |
Sólo para uso interno. |
TRACE_AUDIT_ID |
Sólo para uso interno. |
TRACE |
Sólo para uso interno. |
TRACE_CONTROLLER |
Sólo para uso interno. |
TRACE_EVENT_QUEUE |
Sólo para uso interno. |
TRANSACTION_DISTRIBUTED_MARK |
Sólo para uso interno. |
TRANSACTION_OUTCOME |
Sólo para uso interno. |
NESTING_TRANSACTION_READONOY |
Sólo para uso interno. |
NESTING_TRANSACTION_FULL |
Sólo para uso interno. |
MSQL_TRANSACTION_MANAGER |
Sólo para uso interno. |
DATABASE_AUTONAME_MANAGER |
Sólo para uso interno. |
UTILITY_DYNAMIC_VECTOR |
Sólo para uso interno. |
UTILITY_SPARSE_BITMAP |
Sólo para uso interno. |
UTILITY_DATABASE_DROP |
Sólo para uso interno. |
UTILITY_DYNAMIC_MANAGER_VIEW |
Sólo para uso interno. |
UTILITY_DEBUG_FILESTREAM |
Sólo para uso interno. |
UTILITY_LOCK_INFORMATION |
Sólo para uso interno. |
VERSIONING_TRANSACTION |
Sólo para uso interno. |
VERSIONING_TRANSACTION_LIST |
Sólo para uso interno. |
VERSIONING_TRANSACTION_CHAIN |
Sólo para uso interno. |
VERSIONING_STATE |
Sólo para uso interno. |
VERSIONING_STATE_CHANGE |
Sólo para uso interno. |
KTM_VIRTUAL_CLOCK |
Sólo para uso interno. |
Vea también
Referencia
DBCC SQLPERF (Transact-SQL)
Funciones y vistas de administración dinámica
Vistas de administración dinámica relacionadas con el sistema operativo SQL Server
Ayuda e información
Obtener ayuda sobre SQL Server 2005
Historial de cambios
Versión | Historial |
---|---|
17 de julio de 2006 |
|