Руководство по частоте успешных обращений к буферному кэшу

Оценить
(0 голоса)

Нет никакого волшебства при определении приемлемой частоты успешных обращений к буферному кэшу для конкретного приложения БД или системы базы данных. Тем не менее, существует ряд факторов, которые вам необходимо проанализировать при решении вопроса приемлемости вашей текущей частоты успешных обращений к буферному кэшу. Вот наиболее важные факторы:

•             Доступная память. Обычно вы увеличиваете частоту успешных обращений к буферному кэшу путем увеличения размера буферного кэша. Однако подобное увеличение имеет смысл только в том случае, если в вашем распоряжении имеется достаточное количество памяти для его поддержки. Если вы выделите слишком большой объем памяти буферному кэшу и в результате лишите приложение памяти, то произойдет замещение страниц приложения. А это приведет к более серьезным проблемам в производительности по сравнению с теми, которые вы" будете пытаться решить посредством увеличения размера буферного кэша.

Время от времени вы могли бы остановиться на уменьшении размера буферного кэша. Например, если количество активных пользователей, подключенных к системе, возрастает, то также возрастают и запросы к основной памяти. При уменьшении размера буферного кэша вас ожидает увеличение количества физических считываний БД. Однако меньшая частота успешных обращений к буферному кэшу будет полезна вам, позволяя избежать замещения страниц приложения.

•             Использование диска. Повышение частоты успешных обращений к буферному кэшу означает уменьшение физических считываний, что, в свою очередь, означает сокращение операций ввода/вывода на дисках с данными. Чтобы выполнить проверку использования соответствующих дисков, примените утилиты iostat, sar или statit. В случае интенсивного использования сокращение количества дисковых считываний может существенно уменьшить нагрузку дисков, что также сократит времена отклика. Сокращенные времена отклика повлекут за собой сокращение времен отклика транзакций.

Учтите, что изменение частоты успешных обращений к буферному кэшу не приводит к существенному влиянию на операции дисковых записей. Если, например, вы обнаружили, что считываний и записей примерно поровну, то уменьшение в два раза коэффициента "непопаданий" при обращении к кэшу сократит дисковые операции ввода/вывода только на 25%, поскольку операции дисковых записей будут оставаться постоянными.

Если вы используете в качестве файлов БД файлы UFS, то каждое исключаемое физическое считывание означает, что необходимо будет кэшировать на одну страницу операционной среды Solaris меньше (если вы не используете прямой ввод/вывод, тогда страницы UFS не кэшируются). Результат заключается в меньшей активности ядра.

•             Время отклика приложения. Протяженность транзакции (то есть, количество выполненных машинных команд) будет короче, если блок будет обнаружен в кэш-буфере чаще, чем считываться с диска. Укороченная протяженность означает малое использование ЦП, а освобождение циклов ЦП может привести к улучшению времени отклика транзакций. Если приоритетным вопросом является время отклика, то на помощь может прийти высокая частота успешных обращений к буферному кэшу. Имейте в виду, однако, что на время отклика влияет множество других факторов, поэтому улучшения, произошедшие вследствие эффектов кэширования, могут оказаться незначительными.

Рабочий пример
Большинство рабочих нагрузок
Задание размера буферного кэша
Влияние размера буферного кэша на производительность
Влияние размера страниц на эффективность буферного кэша

Добавить комментарий


Защитный код
Обновить