sys.dm_os_latch_stats (Transact-SQL)
Zwraca informacje o wszystkich czeka zatrzaśnięcie zorganizowane według klasy.
Nazwa kolumna |
Typ danych |
Description |
---|---|---|
latch_class |
nvarchar(120) |
Nazwa klasy zatrzaśnięcie. |
waiting_requests_count |
bigint |
Liczba czeka na zamki w tej klasie.Ten licznik jest zwiększany w momencie rozpoczęcia oczekiwania zatrzaśnięcie. |
wait_time_ms |
bigint |
Czas całkowity oczekiwania w milisekundach na zamki w tej klasie.
Note:
W tej kolumnie jest aktualizowana co pięć minut, podczas oczekiwania zatrzaśnięcie i na końcu oczekiwania zatrzaśnięcie.
|
max_wait_time_ms |
bigint |
Maksymalny czas obiektu pamięci ma 15–30 na tym zatrzaśnięcie.Jeśli ta wartość jest wyjątkowo duża, może to wskazywać wewnętrznego zakleszczenie. |
Uprawnienia
Wymaga uprawnienia VIEW SERVER STATE na serwerze.
Remarks
sys.dm_os_latch_stats może służyć do identyfikowania urządzenie źródłowe konfliktu zatrzaśnięcie przez sprawdzenie względne oczekiwania i poczekaj razy zatrzaśnięcie różnych klas.W niektórych sytuacjach można rozwiązać lub zmniejszenia rywalizacji zatrzaśnięcie.Jednak może być sytuacje, które wymagają należy skontaktować się z Microsoft Pomoc techniczna odbiorcy.
Zawartość sys.dm_os_latch_stats można resetować przy użyciu DBCC SQLPERF w następujący sposób:
DBCC SQLPERF ('sys.dm_os_latch_stats', CLEAR);
GO
Ta opcja resetuje wszystkie liczniki na 0.
Uwaga
Statystyki te nie są zachowywane, jeśli SQL Server ponownego uruchomienia. Wszystkie dane kumulują się od czasu ostatniego czas statystyki zostały zresetowane, lub ostatniego użycia SQL Server został uruchomiony.
Zamki
zatrzaśnięcie jest obiektem lekkie synchronizacji, który jest używany przez różnych SQL Server składniki. zatrzaśnięcie służy głównie do synchronizacji stron bazy danych.Każdy zatrzaśnięcie jest skojarzony z jednym jednostka alokacji.
Oczekiwanie zatrzaśnięcie występuje, gdy żądanie zatrzaśnięcie nie można udzielić natychmiast, ponieważ zatrzaśnięcie jest posiadany przez inny wątek w trybie będące w konflikcie.W odróżnieniu od blokady zatrzaśnięcie jest publikowana zaraz po tej operacji, nawet w operacjach zapisu.
Zamki są grupowane w klasach, na podstawie składników i sposób użycia.Zero lub więcej zamków danej klasy mogą znajdować się w dowolnym miejscu czas w wystąpieniu SQL Server.
Uwaga
sys.dm_os_latch_stats nie śledzi zatrzaśnięcie żądań, które przyznano natychmiast lub które nie powiodło się bez oczekiwania.
Następująca tabela zawiera krótkie opisy różnych klas zatrzaśnięcie.
Klasa zatrzaśnięcie |
Description |
---|---|
ALLOC_CREATE_RINGBUF |
Używane wewnętrznie przez SQL Server Inicjowanie synchronizacji utworzenia bufor dzwonienia przez alokacji. |
ALLOC_CREATE_FREESPACE_CACHE |
Służy do zainicjowania synchronizacji freespace wewnętrznej pamięci podręcznej dla hałd. |
ALLOC_CACHE_MANAGER |
Służy do synchronizowania testów spójności wewnętrznych. |
ALLOC_FREESPACE_CACHE |
Służy do synchronizowania dostępu do pamięci podręcznej stron z dostępnego miejsca dla hałd i duże obiekty binarne (bloków BLOB).Rywalizacja o zamków tej klasy może pojawić się wtedy, gdy wiele połączeń należy spróbować wstawić wiersze do stosu lub BLOB, w tym samym czas.Tego konfliktu możesz zmniejszyć za pomocą partycjonowanie obiektu.Każda partycja ma swoją własną zatrzaśnięcie.Partycjonowanie rozpowszechniać Wstawia między wieloma zamków. |
ALLOC_EXTENT_CACHE |
Można zsynchronizować dostęp do buforu zakresów, która zawiera strony, które nie są przydzielane.Rywalizacja o zamków tej klasy może pojawić się wtedy, gdy wiele połączeń próbuje przydzielić stron danych w tej samej jednostce alokacji w tym samym czasie.Rywalizacja w obrębie tej można zmniejszyć przez obiekt, którego częścią jest ta jednostka alokacji partycjonowanie. |
ACCESS_METHODS_DATASET_PARENT |
Używane do synchronizowania podrzędność zestaw danych dostęp do zestawu nadrzędnego danych podczas operacji równoległych. |
ACCESS_METHODS_HOBT_FACTORY |
Służy do synchronizowania dostępu do tabela mieszania wewnętrznych. |
ACCESS_METHODS_HOBT |
Służy do synchronizowania dostępu do reprezentacji HoBt w pamięci. |
ACCESS_METHODS_HOBT_COUNT |
Służy do synchronizowania dostępu do liczników HoBt stron i wierszy. |
ACCESS_METHODS_HOBT_VIRTUAL_ROOT |
Służy do synchronizowania dostępu do katalogu głównego pozyskiwania strona wewnętrzne B-drzewo. |
ACCESS_METHODS_CACHE_ONLY_HOBT_ALLOC |
Służy do synchronizowania worktable dostępu. |
ACCESS_METHODS_BULK_ALLOC |
Służy do synchronizowania dostępu w ramach allocators zbiorczej. |
ACCESS_METHODS_SCAN_RANGE_GENERATOR |
Służy do synchronizowania dostępu do generator zakres podczas skanowania równoległych. |
ACCESS_METHODS_KEY_RANGE_GENERATOR |
Służy do synchronizowania dostęp do operacji odczytu z wyprzedzeniem podczas skanowania równoległych klucz zakres. |
APPEND_ONLY_STORAGE_INSERT_POINT |
Służy do synchronizowania wstawia w jednostkach szybko dołączać tylko do magazynowania. |
APPEND_ONLY_STORAGE_FIRST_ALLOC |
Służy do synchronizowania pierwsza alokacja dla jednostki składowania tylko do dołączania. |
APPEND_ONLY_STORAGE_UNIT_MANAGER |
Używane dla synchronizacji dostępu do struktury danych wewnętrznych w ramach Menedżera jednostki szybkie dołączać tylko do przechowywania. |
APPEND_ONLY_STORAGE_MANAGER |
Służy do synchronizowania operacji zmniejszania w Menedżerze magazynu szybko dołączyć tylko jednostki. |
BACKUP_RESULT_SET |
Służy do synchronizowania równoległych zbiory kopia zapasowa. |
BACKUP_TAPE_POOL |
Używana do synchronizowania kopia zapasowa taśm z puli. |
BACKUP_LOG_REDO |
Używana do synchronizowania kopia zapasowa zarejestrowane ponowne wykonanie operacje. |
BACKUP_INSTANCE_ID |
Służy do synchronizowania tworzenia wystąpienie identyfikatorów dla liczników Monitora wydajności kopia zapasowa. |
BACKUP_MANAGER |
Służy do synchronizowania wewnętrznego Menedżera kopia zapasowa. |
BACKUP_MANAGER_DIFFERENTIAL |
Używane do synchronizacji z DBCC różnicowych kopii zapasowych. |
BACKUP_OPERATION |
Używane do synchronizacji struktury wewnętrznej danych w ramach operacji tworzenia kopii zapasowej, takie jak bazy danych, dziennika lub kopia zapasowa pliku. |
BACKUP_FILE_HANDLE |
Służy do synchronizowania operacje otwarcia pliku podczas operacji przywracanie. |
BUFOR |
Służy do synchronizowania krótkim czasie dostęp do stron bazy danych.zatrzaśnięcie buforu jest wymagany do odczytywania lub modyfikowania dowolnej strona bazy danych.Rywalizacja w obrębie zatrzaśnięcie buforu można wskazać kilka problemów, w tym stron dostępu i spowolnienie operacji We/Wy. This latch class covers all possible uses of page latches.sys.dm_os_wait_stats makes a difference between page latch waits that are caused by I/O operations and read and write operations on the page. |
BUFFER_POOL_GROW |
Używane do wewnętrznego buforu Menedżera synchronizacji podczas pula buforów rosnąć operacji. |
DATABASE_CHECKPOINT |
Służy do serializacji punktów kontrolnych w bazie danych. |
CLR_PROCEDURE_HASHTABLE |
Tylko do użytku wewnętrznego. |
CLR_UDX_STORE |
Tylko do użytku wewnętrznego. |
CLR_DATAT_ACCESS |
Tylko do użytku wewnętrznego. |
CLR_XVAR_PROXY_LIST |
Tylko do użytku wewnętrznego. |
DBCC_CHECK_AGGREGATE |
Tylko do użytku wewnętrznego. |
DBCC_CHECK_RESULTSET |
Tylko do użytku wewnętrznego. |
DBCC_CHECK_TABLE |
Tylko do użytku wewnętrznego. |
DBCC_CHECK_TABLE_INIT |
Tylko do użytku wewnętrznego. |
DBCC_CHECK_TRACE_LIST |
Tylko do użytku wewnętrznego. |
DBCC_FILE_CHECK_OBJECT |
Tylko do użytku wewnętrznego. |
DBCC_PERF |
Służy do synchronizowania liczników Monitora wydajności wewnętrzne. |
DBCC_PFS_STATUS |
Tylko do użytku wewnętrznego. |
DBCC_OBJECT_METADATA |
Tylko do użytku wewnętrznego. |
DBCC_HASH_DLL |
Tylko do użytku wewnętrznego. |
EVENTING_CACHE |
Tylko do użytku wewnętrznego. |
FCB |
Służy do synchronizowania dostępu do blok kontrolny pliku. |
FCB_REPLICA |
Tylko do użytku wewnętrznego. |
FGCB_ALLOC |
Służy do synchronizowania dostępu do informacji o alokacji round robin w grupa plików. |
FGCB_ADD_REMOVE |
Służy do synchronizowania dostępu do filegroups ADD a DROP operacji na plikach. |
FILEGROUP_MANAGER |
Tylko do użytku wewnętrznego. |
FILE_MANAGER |
Tylko do użytku wewnętrznego. |
FILESTREAM_FCB |
Tylko do użytku wewnętrznego. |
FILESTREAM_FILE_MANAGER |
Tylko do użytku wewnętrznego. |
FILESTREAM_GHOST_FILES |
Tylko do użytku wewnętrznego. |
FILESTREAM_DFS_ROOT |
Tylko do użytku wewnętrznego. |
LOG_MANAGER |
Tylko do użytku wewnętrznego. |
FULLTEXT_DOCUMENT_ID |
Tylko do użytku wewnętrznego. |
FULLTEXT_DOCUMENT_ID_TRANSACTION |
Tylko do użytku wewnętrznego. |
FULLTEXT_DOCUMENT_ID_NOTIFY |
Tylko do użytku wewnętrznego. |
FULLTEXT_LOGS |
Tylko do użytku wewnętrznego. |
FULLTEXT_CRAWL_LOG |
Tylko do użytku wewnętrznego. |
FULLTEXT_ADMIN |
Tylko do użytku wewnętrznego. |
FULLTEXT_AMDIN_COMMAND_CACHE |
Tylko do użytku wewnętrznego. |
FULLTEXT_LANGUAGE_TABLE |
Tylko do użytku wewnętrznego. |
FULLTEXT_CRAWL_DM_LIST |
Tylko do użytku wewnętrznego. |
FULLTEXT_CRAWL_CATALOG |
Tylko do użytku wewnętrznego. |
FULLTEXT_FILE_MANAGER |
Tylko do użytku wewnętrznego. |
DATABASE_MIRRORING_REDO |
Tylko do użytku wewnętrznego. |
DATABASE_MIRRORING_SERVER |
Tylko do użytku wewnętrznego. |
DATABASE_MIRRORING_CONNECTION |
Tylko do użytku wewnętrznego. |
DATABASE_MIRRORING_STREAM |
Tylko do użytku wewnętrznego. |
QUERY_OPTIMIZER_VD_MANAGER |
Tylko do użytku wewnętrznego. |
QUERY_OPTIMIZER_ID_MANAGER |
Tylko do użytku wewnętrznego. |
QUERY_OPTIMIZER_VIEW_REP |
Tylko do użytku wewnętrznego. |
RECOVERY_BAD_PAGE_TABLE |
Tylko do użytku wewnętrznego. |
RECOVERY_MANAGER |
Tylko do użytku wewnętrznego. |
SECURITY_OPERATION_RULE_TABLE |
Tylko do użytku wewnętrznego. |
SECURITY_OBJPERM_CACHE |
Tylko do użytku wewnętrznego. |
SECURITY_CRYPTO |
Tylko do użytku wewnętrznego. |
SECURITY_KEY_RING |
Tylko do użytku wewnętrznego. |
SECURITY_KEY_LIST |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_CONNECTION_RECEIVE |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_TRANSMISSION |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_TRANSMISSION_UPDATE |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_TRANSMISSION_STATE |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_TRANSMISSION_ERRORS |
Tylko do użytku wewnętrznego. |
SSBXmitWork |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_MESSAGE_TRANSMISSION |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_MAP_MANAGER |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_HOST_NAME |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_READ_CACHE |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_WAITFOR_MANAGER |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_WAITFOR_TRANSACTION_DATA |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_TRANSMISSION_TRANSACTION_DATA |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_TRANSPORT |
Tylko do użytku wewnętrznego. |
SERVICE_BROKER_MIRROR_ROUTE |
Tylko do użytku wewnętrznego. |
TRACE_ID |
Tylko do użytku wewnętrznego. |
TRACE_AUDIT_ID |
Tylko do użytku wewnętrznego. |
ŚLEDZENIA |
Tylko do użytku wewnętrznego. |
TRACE_CONTROLLER |
Tylko do użytku wewnętrznego. |
TRACE_EVENT_QUEUE |
Tylko do użytku wewnętrznego. |
TRANSACTION_DISTRIBUTED_MARK |
Tylko do użytku wewnętrznego. |
TRANSACTION_OUTCOME |
Tylko do użytku wewnętrznego. |
NESTING_TRANSACTION_READONLY |
Tylko do użytku wewnętrznego. |
NESTING_TRANSACTION_FULL |
Tylko do użytku wewnętrznego. |
MSQL_TRANSACTION_MANAGER |
Tylko do użytku wewnętrznego. |
DATABASE_AUTONAME_MANAGER |
Tylko do użytku wewnętrznego. |
UTILITY_DYNAMIC_VECTOR |
Tylko do użytku wewnętrznego. |
UTILITY_SPARSE_BITMAP |
Tylko do użytku wewnętrznego. |
UTILITY_DATABASE_DROP |
Tylko do użytku wewnętrznego. |
UTILITY_DYNAMIC_MANAGER_VIEW |
Tylko do użytku wewnętrznego. |
UTILITY_DEBUG_FILESTREAM |
Tylko do użytku wewnętrznego. |
UTILITY_LOCK_INFORMATION |
Tylko do użytku wewnętrznego. |
VERSIONING_TRANSACTION |
Tylko do użytku wewnętrznego. |
VERSIONING_TRANSACTION_LIST |
Tylko do użytku wewnętrznego. |
VERSIONING_TRANSACTION_CHAIN |
Tylko do użytku wewnętrznego. |
VERSIONING_STATE |
Tylko do użytku wewnętrznego. |
VERSIONING_STATE_CHANGE |
Tylko do użytku wewnętrznego. |
KTM_VIRTUAL_CLOCK |
Tylko do użytku wewnętrznego. |