Базы данных Oracle - статьи


Oracleautonastr.shtml - часть 11


*********************************************************** * Когда коэффициент попадания в буфер падает ниже 20%, * следует увеличить значение параметра db_cache_size ***********************************************************

yr. mo dy Hr. Name bhr ------------- -------- ----- 2001-01-27 09 DEFAULT    45 2001-01-28 09 RECYCLE    41 2001-01-29 10 DEFAULT    36 2001-01-30 09 DEFAULT    28 2001-02-02 10 DEFAULT    83 2001-02-02 09 RECYCLE    81 2001-02-03 10 DEFAULT    69 2001-02-03 09 DEFAULT    69

Здесь мы видим периоды времени, для которых можно динамически увеличить значение параметра db_cache_size. В данном случае это можно делать каждый день с 8:00 до 10:00 (за счет уменьшения значения параметра pga_aggregate_target).

Использование представления Oracle9i v$db_cache_advice

В Oracle9i появилось новое представление v$db_cache_advice, которое позволяет прогнозировать эффект от увеличения размера кеша буферов. Это представление показывает предполагаемые непопадания в кеш буферов для двенадцати потенциальных размеров кеша буферов в диапазоне от 10% текущего размера до 200% текущего размера.

Эта новая возможность очень похожа на средства Oracle7, используемые для прогнозирования эффекта от увеличения размера кеша буферов. Для этого в Oracle7 использовались представления x$kcbrbh (оценка попаданий в кеш) и x$kcbcbh (оценка непопаданий в кеш).

Так же, как и в Oracle7, для сбора статистик в представлении v$db_cache_advice требуется дополнительная память. Для включения сбора статистик нужно установить в параметре db_cache_advice файла init.ora значение “on” или “ready”. Их можно устанавливать динамически (без остановки экземпляра) оператором alter system.

Предупреждение: если АБД устанавливает dba_cache_advice=on, Oracle для сбора статистик будет использовать страницы разделяемого пула, что может оказать нежелательное влияние на библиотечный кеш. Например, если в параметре db_cache_size установлено 500 Мб, Oracle будет использовать существенный объем памяти разделяемого пула. Чтобы избежать этой проблемы, нужно предварительно в файле init.ora установить db_cache_advice=ready. В таком случае Oracle будет выделять память во время запуска экземпляра.

После включения сбора статистик (dba_cache_advice=on) и достаточно продолжительного времени работы базы данных для выдачи прогноза можно выдать следующий запрос:




Начало  Назад  Вперед