Поделиться через


SQL Server, объект Buffer Manager

Объект диспетчера буферов ( Buffer Manager ) предоставляет счетчики, позволяющие наблюдать за тем, как SQL Server использует следующие ресурсы:

  • Память для хранения страниц данных.

  • Счетчики, служащие для мониторинга физического ввода-вывода, когда SQL Server считывает и записывает страницы баз данных.

  • Расширение буферного пула для расширения буферного кэша с использованием быстрой энергонезависимой памяти, например твердотельных накопителей (SSD).

Мониторинг памяти и счетчиков, используемых SQL Server , помогает получить следующие сведения.

  • Существуют ли «узкие места», вызванные недостатком физической памяти. Если часто используемые данные не могут быть сохранены в кэше, SQL Server вынужден считывать их с диска.

  • Можно ли повысить эффективность выполнения запросов, увеличив объем памяти или выделив дополнительную память для кэширования данных или хранения внутренних структур SQL Server .

  • Насколько часто SQL Server считывает данные с диска. В сравнении с другими операциями, такими как доступ к памяти, физический ввод-вывод выполняется дольше. Уменьшение объема ввода-вывода может повысить производительность выполнения запросов.

Объекты производительности диспетчера буферов

Объекты производительности диспетчера буферов SQL Server описаны в следующей таблице.

Счетчики диспетчера буферов SQL Server Описание
Коэффициент попадания в буферный кэш Указывает долю страниц, обнаруженных в буферном кэше без чтения с диска. Это значение определяется как общее число попаданий в кэше, деленное на количество уточняющих запросов кэша за последние несколько тысяч операций доступа к страницам. По прошествии длительного периода это соотношение изменяется очень слабо. Так как чтение из кэша выполняется гораздо быстрее, чем с диска, следует стремиться к наибольшему значению этого показателя. Как правило, можно повысить коэффициент попаданий в кэш буфера, увеличив объем памяти, доступной SQL Server , или использовав функцию расширения буферного пула.
Страниц контрольных точек/с Указывает число страниц, записываемых на диск за одну секунду при создании контрольной точки или выполнении другой операции, требующей, чтобы все «грязные» страницы были записаны на диск.
Страниц базы данных Указывает число страниц с содержимым базы данных в буферном пуле.
Страницы, выделенные расширением Общее количество занятых страниц кэша в файле расширения буферного пула.
Свободные страницы расширения Общее количество незанятых страниц кэша в файле расширения буферного пула.
Процент использования расширения Процент файла подкачки расширения буферного пула, занятого страницами диспетчера буферов.
Счетчик необработанных операций ввода-вывода расширения Длина очереди ввода-вывода для файла расширения буферного пула.
Вытеснения страниц расширения/с Количество страниц, вытесняемых из файла расширения буферного пула в секунду.
Чтений страниц расширения/с Количество страниц, считываемых из файла расширения буферного пула в секунду.
Время страницы в расширении без ссылки Среднее время (в секундах), в течение которого страница остается в расширении буферного пула без ссылок на нее.
Операции записи страниц расширения/с Число страниц, записываемых в файл расширения буферного пула в секунду.
Простоев в ожидании свободной страницы/с Указывает число инициированных за одну секунду запросов, которым пришлось дожидаться свободной страницы.
Отложенных записей/с Указывает число буферов, записываемых за одну секунду модулем отложенной записи, входящим в диспетчер буферов. Модуль отложенной записи — это системный процесс, который записывает на диск пакеты измененных старых буферов (буферов, содержащих изменения, которые необходимо записать на диск, прежде чем буфер можно будет использовать повторно для другой страницы) и предоставляет доступ к ним для пользовательских процессов. Модуль отложенной записи устраняет необходимость частого создания контрольных точек с целью получения доступных буферов.
Ожидаемый срок жизни страницы Указывает количество секунд, в течение которых страница остается в буферном пуле без ссылок на нее.
Поисков страницы/с Указывает число инициируемых за секунду запросов поиска страницы в буферном пуле.
Чтений страниц/с Указывает число инициируемых за одну секунду физических операций чтения страниц базы данных. Этот статистический показатель отражает общее количество физических операций чтения страниц из всех баз данных. Физический ввод-вывод связан с большой тратой ресурсов, но иногда ее можно свести к минимуму, используя более объемный кэш данных, интеллектуальные индексы и более эффективные запросы или изменяя структуру базы данных.
Записей страниц/с Указывает число инициируемых за одну секунду физических операций записи страниц базы данных.
Предварительно считанных страниц/с Указывает количество считываемых за секунду страниц, которые, скорее всего, понадобятся в ближайшем будущем.

См. также:

SQL Server:Buffer Node
Параметры конфигурации сервера «Server Memory»
SQL Server, объект Plan Cache
Наблюдение за использованием ресурсов (системный монитор)
sys.dm_os_performance_counters (Transact-SQL)
Расширение буферного пула