MS SQL Server, ожидания кратковременных блокировок, скрипт

Очень простой скрипт, полезен своими комментариями. Временами очень удобен.

 

–https://msdn.microsoft.com/ru-ru/library/ms175066(v=sql.120).aspx
–Возвращает сведения обо всех случаях ожидания кратковременных блокировок, систематизированных по классам.
–Dmitry Gorchilin
–20151013, DP.UA
;with [SumLatch] as (select sum(wait_time_ms) as SumLatch
FROM sys.dm_os_latch_stats
)
select 100.*wait_time_ms/SumLatch.SumLatch as ‘%OfLatch’,
wait_time_ms,latch_class,
case latch_class
when ‘ALLOC_CREATE_RINGBUF’ then ‘Используется внутренними механизмами SQL Server для инициализации синхронизации процесса создания кольцевого буфера размещения.’
when ‘ALLOC_CREATE_FREESPACE_CACHE’ then ‘Используется для инициализации синхронизации кэшей свободного внутреннего пространства для куч.’
when ‘ALLOC_CACHE_MANAGER’ then ‘Используется для синхронизации проверок внутренней связности.’
when ‘ALLOC_FREESPACE_CACHE’ then ‘Используется для синхронизации доступа к кэшу страниц со свободным пространством для размещения куч и больших двоичных объектов (BLOBs). Состязание за доступ к кратковременным блокировкам этого класса может происходить в случаях, когда несколько соединений одновременно пытаются ввести строки в кучу или в BLOB. Снизить состязание можно с помощью секционирования соответствующего объекта. Каждая секция имеет собственную кратковременную блокировку. В ходе секционирования вставки будут распределены по нескольким кратковременным блокировкам.’
when ‘ALLOC_EXTENT_CACHE’ then ‘Используется для синхронизации доступа к кэшу экстентов, который содержит нераспределенные страницы. Состязание за доступ к кратковременным блокировкам этого класса может происходить в случаях, когда несколько соединений одновременно пытаются выделить страницы данных в одну и ту же единицу распределения. Снизить состязание можно с помощью секционирования объекта, в состав которого входит данная единица распределения.’
when ‘ACCESS_METHODS_DATASET_PARENT’ then ‘Используется для синхронизации доступа дочернего набора данных к родительскому набору данных при выполнении параллельных операций.’
when ‘ACCESS_METHODS_HOBT_FACTORY’ then ‘Используется для синхронизации доступа к внутренней хэш-таблице.’
when ‘ACCESS_METHODS_HOBT’ then ‘Используется для синхронизации доступа к хранимому в памяти представлению HoBt.’
when ‘ACCESS_METHODS_HOBT_COUNT’ then ‘Используется для синхронизации доступа к памяти HoBt и к счетчикам строк.’
when ‘ACCESS_METHODS_HOBT_VIRTUAL_ROOT’ then ‘Используется для синхронизации доступа к абстракции корневой страницы внутреннего сбалансированного дерева. ‘
when ‘ACCESS_METHODS_CACHE_ONLY_HOBT_ALLOC’ then ‘Используется для синхронизации доступа к рабочим таблицам.’
when ‘ACCESS_METHODS_BULK_ALLOC’ then ‘Используется для синхронизации доступа между механизмами массового выделения пространства.’
when ‘ACCESS_METHODS_SCAN_RANGE_GENERATOR’ then ‘Используется для синхронизации доступа к генератору диапазонов при выполнении параллельного сканирования.’
when ‘ACCESS_METHODS_KEY_RANGE_GENERATOR’ then ‘Используется для синхронизации доступа к операциям упреждающего чтения при выполнении параллельного просмотра важнейших диапазонов.’
when ‘APPEND_ONLY_STORAGE_INSERT_POINT’ then ‘Используется для синхронизации вставок в быстродействующие блоки памяти, заполняемые только путем присоединения новых записей.’
when ‘APPEND_ONLY_STORAGE_FIRST_ALLOC’ then ‘Используется для синхронизации первого размещения в блоке памяти, заполняемом только путем присоединения новых записей. ‘
when ‘APPEND_ONLY_STORAGE_UNIT_MANAGER’ then ‘Используется для синхронизации доступа к структурам внутренних данных внутри диспетчера быстродействующих блоков памяти, заполняемых только путем присоединения новых записей.’
when ‘APPEND_ONLY_STORAGE_MANAGER’ then ‘Используется для синхронизации операций сжатия в диспетчере быстродействующих блоков памяти, заполняемых только путем присоединения новых записей.’
when ‘BACKUP_RESULT_SET’ then ‘Используется для синхронизации параллельных резервных копий результирующих наборов.’
when ‘BACKUP_TAPE_POOL’ then ‘Используется для синхронизации пулов лент резервных копий.’
when ‘BACKUP_LOG_REDO’ then ‘Используется для синхронизации операций повтора журнала резервного копирования.’
when ‘BACKUP_INSTANCE_ID’ then ‘Используется для синхронизации создания ID экземпляров счетчиков системного монитора резервного копирования.’
when ‘BACKUP_MANAGER’ then ‘Используется для синхронизации внутреннего диспетчера резервного копирования.’
when ‘BACKUP_MANAGER_DIFFERENTIAL’ then ‘Используется для синхронизации операций разностных резервных копий с DBCC.’
when ‘BACKUP_OPERATION’ then ‘Используется для синхронизации внутренней структуры данных при проведении операций резервного копирования, таких как резервное копирование базы данных, журналов или файлов.’
when ‘BACKUP_FILE_HANDLE’ then ‘Используется для синхронизации операций по открытию файлов при выполнении операций восстановления.’
when ‘BUFFER’ then ‘Используется для синхронизации краткосрочного доступа к страницам баз данных. Кратковременная блокировка буфера необходима перед считыванием или модификацией любой страницы базы данных. Конфликт кратковременной блокировки буферов может указывать на наличие ряда проблем, в числе которых — «горячие» страницы и низкая производительность подсистемы ввода-вывода.’
when ” then ”
when ” then ‘Этот класс кратковременных блокировок охватывает все возможные способы использования кратковременных блокировок страниц. Представление sys.dm_os_wait_stats устанавливает различие между ожиданиями кратковременных блокировок страниц, вызванными операциями ввода-вывода и операциями чтения и записи на данной странице.’
when ‘BUFFER_POOL_GROW’ then ‘Используется для синхронизации внутреннего диспетчера буферов при выполнении операций увеличения буферного пула.’
when ‘DATABASE_CHECKPOINT’ then ‘Используется для сериализации контрольных точек внутри базы данных.’
when ‘CLR_PROCEDURE_HASHTABLE’ then ‘Только для внутреннего использования.’
when ‘CLR_UDX_STORE’ then ‘Только для внутреннего использования.’
when ‘CLR_DATAT_ACCESS’ then ‘Только для внутреннего использования.’
when ‘CLR_XVAR_PROXY_LIST’ then ‘Только для внутреннего использования.’
when ‘DBCC_CHECK_AGGREGATE’ then ‘Только для внутреннего использования.’
when ‘DBCC_CHECK_RESULTSET’ then ‘Только для внутреннего использования.’
when ‘DBCC_CHECK_TABLE’ then ‘Только для внутреннего использования.’
when ‘DBCC_CHECK_TABLE_INIT’ then ‘Только для внутреннего использования.’
when ‘DBCC_CHECK_TRACE_LIST’ then ‘Только для внутреннего использования.’
when ‘DBCC_FILE_CHECK_OBJECT’ then ‘Только для внутреннего использования.’
when ‘DBCC_PERF’ then ‘Используется для синхронизации счетчиков внутреннего системного монитора.’
when ‘DBCC_PFS_STATUS’ then ‘Только для внутреннего использования.’
when ‘DBCC_OBJECT_METADATA’ then ‘Только для внутреннего использования.’
when ‘DBCC_HASH_DLL’ then ‘Только для внутреннего использования.’
when ‘EVENTING_CACHE’ then ‘Только для внутреннего использования.’
when ‘FCB’ then ‘Используется для синхронизации доступа к блоку управления файлами.’
when ‘FCB_REPLICA’ then ‘Только для внутреннего использования.’
when ‘FGCB_ALLOC’ then ‘Используется для синхронизации доступа к данным, размещенным внутри файловой группы в порядке круговой очереди.’
when ‘FGCB_ADD_REMOVE’ then ‘Используется для синхронизации доступа к файловым группам для выполнения над файлами операций ADD и DROP.’
when ‘FILEGROUP_MANAGER’ then ‘Только для внутреннего использования.’
when ‘FILE_MANAGER’ then ‘Только для внутреннего использования.’
when ‘FILESTREAM_FCB’ then ‘Только для внутреннего использования.’
when ‘FILESTREAM_FILE_MANAGER’ then ‘Только для внутреннего использования.’
when ‘FILESTREAM_GHOST_FILES’ then ‘Только для внутреннего использования.’
when ‘FILESTREAM_DFS_ROOT’ then ‘Только для внутреннего использования.’
when ‘LOG_MANAGER’ then ‘Только для внутреннего использования.’
when ‘FULLTEXT_DOCUMENT_ID’ then ‘Только для внутреннего использования.’
when ‘FULLTEXT_DOCUMENT_ID_TRANSACTION’ then ‘Только для внутреннего использования.’
when ‘FULLTEXT_DOCUMENT_ID_NOTIFY’ then ‘Только для внутреннего использования.’
when ‘FULLTEXT_LOGS’ then ‘Только для внутреннего использования.’
when ‘FULLTEXT_CRAWL_LOG’ then ‘Только для внутреннего использования.’
when ‘FULLTEXT_ADMIN’ then ‘Только для внутреннего использования.’
when ‘FULLTEXT_AMDIN_COMMAND_CACHE’ then ‘Только для внутреннего использования.’
when ‘FULLTEXT_LANGUAGE_TABLE’ then ‘Только для внутреннего использования.’
when ‘FULLTEXT_CRAWL_DM_LIST’ then ‘Только для внутреннего использования.’
when ‘FULLTEXT_CRAWL_CATALOG’ then ‘Только для внутреннего использования.’
when ‘FULLTEXT_FILE_MANAGER’ then ‘Только для внутреннего использования.’
when ‘DATABASE_MIRRORING_REDO’ then ‘Только для внутреннего использования.’
when ‘DATABASE_MIRRORING_SERVER’ then ‘Только для внутреннего использования.’
when ‘DATABASE_MIRRORING_CONNECTION’ then ‘Только для внутреннего использования.’
when ‘DATABASE_MIRRORING_STREAM’ then ‘Только для внутреннего использования.’
when ‘QUERY_OPTIMIZER_VD_MANAGER’ then ‘Только для внутреннего использования.’
when ‘QUERY_OPTIMIZER_ID_MANAGER’ then ‘Только для внутреннего использования.’
when ‘QUERY_OPTIMIZER_VIEW_REP’ then ‘Только для внутреннего использования.’
when ‘RECOVERY_BAD_PAGE_TABLE’ then ‘Только для внутреннего использования.’
when ‘RECOVERY_MANAGER’ then ‘Только для внутреннего использования.’
when ‘SECURITY_OPERATION_RULE_TABLE’ then ‘Только для внутреннего использования.’
when ‘SECURITY_OBJPERM_CACHE’ then ‘Только для внутреннего использования.’
when ‘SECURITY_CRYPTO’ then ‘Только для внутреннего использования.’
when ‘SECURITY_KEY_RING’ then ‘Только для внутреннего использования.’
when ‘SECURITY_KEY_LIST’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_CONNECTION_RECEIVE’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_TRANSMISSION’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_TRANSMISSION_UPDATE’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_TRANSMISSION_STATE’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_TRANSMISSION_ERRORS’ then ‘Только для внутреннего использования.’
when ‘SSBXmitWork’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_MESSAGE_TRANSMISSION’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_MAP_MANAGER’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_HOST_NAME’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_READ_CACHE’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_WAITFOR_MANAGER’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_WAITFOR_TRANSACTION_DATA’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_TRANSMISSION_TRANSACTION_DATA’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_TRANSPORT’ then ‘Только для внутреннего использования.’
when ‘SERVICE_BROKER_MIRROR_ROUTE’ then ‘Только для внутреннего использования.’
when ‘TRACE_ID’ then ‘Только для внутреннего использования.’
when ‘TRACE_AUDIT_ID’ then ‘Только для внутреннего использования.’
when ‘TRACE’ then ‘Только для внутреннего использования.’
when ‘TRACE_CONTROLLER’ then ‘Только для внутреннего использования.’
when ‘TRACE_EVENT_QUEUE’ then ‘Только для внутреннего использования.’
when ‘TRANSACTION_DISTRIBUTED_MARK’ then ‘Только для внутреннего использования.’
when ‘TRANSACTION_OUTCOME’ then ‘Только для внутреннего использования.’
when ‘NESTING_TRANSACTION_READONLY’ then ‘Только для внутреннего использования.’
when ‘NESTING_TRANSACTION_FULL’ then ‘Только для внутреннего использования.’
when ‘MSQL_TRANSACTION_MANAGER’ then ‘Только для внутреннего использования.’
when ‘DATABASE_AUTONAME_MANAGER’ then ‘Только для внутреннего использования.’
when ‘UTILITY_DYNAMIC_VECTOR’ then ‘Только для внутреннего использования.’
when ‘UTILITY_SPARSE_BITMAP’ then ‘Только для внутреннего использования.’
when ‘UTILITY_DATABASE_DROP’ then ‘Только для внутреннего использования.’
when ‘UTILITY_DYNAMIC_MANAGER_VIEW’ then ‘Только для внутреннего использования.’
when ‘UTILITY_DEBUG_FILESTREAM’ then ‘Только для внутреннего использования.’
when ‘UTILITY_LOCK_INFORMATION’ then ‘Только для внутреннего использования.’
when ‘VERSIONING_TRANSACTION’ then ‘Только для внутреннего использования.’
when ‘VERSIONING_TRANSACTION_LIST’ then ‘Только для внутреннего использования.’
when ‘VERSIONING_TRANSACTION_CHAIN’ then ‘Только для внутреннего использования.’
when ‘VERSIONING_STATE’ then ‘Только для внутреннего использования.’
when ‘VERSIONING_STATE_CHANGE’ then ‘Только для внутреннего использования.’
when ‘KTM_VIRTUAL_CLOCK’ then ‘Только для внутреннего использования.’
else ‘***’ end as ‘Description’
from sys.dm_os_latch_stats,SumLatch
where wait_time_ms>0
order by wait_time_ms DESC

MS SQL Server, ожидания кратковременных блокировок, скрипт: 26 комментариев

  1. MaryMJ

    Hello! My name is MaryMarkova, our compane need to advertise on your website. What is your prices? Thank you. Best regards, Mary.

  2. AnnaMJ

    Hello! My name is AnnaMarkova, our company need to advertise on your website. What is your prices? Thank you. Best regards, Mary.

  3. Дмитрий Горчилин / Dmitry Gorchilin Автор записи

    От администратора: хорошие люди просили помочь.

    Продажа металлочерепицы и профнастила, Запорожье и Запорожская область

    http://www.digger.dp.ua/profnastil/

    Предлагаем со склада в Запорожье круг абразивный, круг отрезной, круг алмазный, сетку абразивную, бумагу наждачную, ленту шлифовальную, уровни строительные, лестницы

    http://www.digger.dp.ua/wp-content/uploads/ZA/z_instrument_1.htm

    From admin: good people are asked to help.
    Sale of metal and corrugated board, Zaporozhye and Zaporozhye region
    We offer from a warehouse in Kiev Circles abrasive, Cutting wheels, diamond circle, abrasive mesh sandpaper, sanding belt, construction levels, stairs

  4. Alicewab

    Hi! My name is Alice, to me 18 and I very love hot dirty sex!

    Go to my site: vip-file-xxx.org

  5. Kavelwar

    Купил 4 года назад по одной вечной ссылке на сайте http://menetie.ru/ и http://housemilan.ru/ – спустя 4 года что я вижу: первый сайт вообще прекратил свое существование, вместо сайта где покупалась ссылка появился каталог говнорефератов. Второй сайт работает как и работал, но вечная ссылка снята. Не рекомендую никому иметь дело с владельцами этих сайтов.

  6. Granthammt

    Продаём просрочку дешево! Купить просроченные продукты питания с переклеенной датой
    Тухлые продукты продают тут: https://fiberam-market.ru fiberam@bk.ru
    Здесь продают вялые цветы: http://www.цветы-здесь.рф/
    Трамадол без рецепта, наркоту купить можно здесь: http://fiberam-farma.ru
    Просрочка купить: admin@fiberam-market.ru
    Отзывы: https://market.yandex.ru/shop/293752/reviews?sort_by=rank

  7. Calvin Klegin

    WOW reading this makes me glad I found a woman willing to settle for me…I would be horribly inadequate at dating i my 30’s. I do shit even I think is creepy….

  8. Jeffreyeravy

    Enigma — Шаблоны WordPress. Скачать бесплатно премиум шаблон Вордпресс [url=http://ruwordpress.ru/enigma/]Show more…[/url]

  9. EssayMab

    Fed up of typing “who can write my essay” in the search bar? Would you like to have a reliable helper always by your side? Essayerudite.com will come as an excellent solution to this problem.
    We do our best to keep you satisfied with the service we provide.

  10. Come si acquista

    Prezzo compresse con ricetta, consiglio acquisto online e vendita milano, acquistare generico online tranne vendita italia. Vendita generico online anche online spedizione veloce, miglior sito per comprare generico e generico in italia contrassegno nonostante come acquistare

  11. Продвижение вашего сайта в сети

    Здравствуйте! Хочу предложить Вам свою услугу раскрутки вашего сайта ссылками. На данный момент есть профильный и статейный тарифы.
    Если хотите продвинуться, отпишите пожалуйста на электр. ящик: proxrum @ mail.ru (уберите пробелы). Если нет, то смотрите новинки кино http://novinki-kino.com/ !:)
    ———-
    С Уважением!

  12. сайт раскрутка

    Приветствую! Если вас интересует prodvizhenie sajta на prodvizheniya.net, то пожалуйста обращайтесь!
    Всегда рады помочь. С Уважением!

    Пишите на e-mail: proxrum @ mail.ru
    Не забудьте убрать пробелы.

  13. SantaAroda

    Нашла прекрасные сайты.
    Спешу поделиться с вами.Сама также как вы искала подобные сайты.
    Где взять кредит,где получить кредит,взять кредит онлайн,что такое биткоин,где купить биткоин,как купить биткоин,где обменять биткоин ? ответы тут: http://agent-banka.ru/
    читать книги онлайн бесплатно и без регистрации http://kniga-onlain.ru/
    рецепты простых и вкусных блюд http://country-food.ru/
    уроки фотошоп онлайн для начинающих бесплатно http://photoshop-gid.ru/
    как сделать и заработать на своём сайте продавая рекламу http://global-control.ru/
    Читать книги онлайн бесплатно и без регистрации http://www.best-businessman.ru
    Russian literature is free. online Library http://www.best-businessman.ru
    домашние рецепты на скору руку http://life-moscow.com/
    библиотека онлайн где можно читать книги бесплатно и без регистрации http://onlain-kniga.ru/
    список бирж ссылок для заработка на сайте http://global-control.ru/

  14. Merlinnew

    [url=http://www.areaufo.it/753-fred-perry-shoes.html]Fred Perry Shoes[/url]
    When it comes to online marketing for any content material hefty site, make sure to keep content material publishing steady. Your users expect to see new articles with a predictable routine, regardless of whether new posts appear per hour, daily or regular. Retaining into a constant plan permits targeted traffic to know when to return for the website to the most up-to-date info you happen to be delivering.

    [url=https://www.ilcastellodifulignano.it/images/afwoms/11015-scarpe-tipo-valentino-rockstud.jpg][/url]

    Whether you enjoy it or otherwise not, panic and anxiety attacks can result anyone. Question this fact will simply put you in a worse place to cope with them your self, or to assist other folks. So that you can absolutely fully grasp panic and anxiety attacks, you will want to look at the expert advice supplied in this article.

    [url=https://www.romars.it/images/romars/13212-air-max-skyline-nere.jpg][/url]

Добавить комментарий для Calvin Klegin Отменить ответ

Ваш адрес email не будет опубликован. Обязательные поля помечены *