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

         

Миф о дополнительной памяти


Чем больше памяти вы выделите Oracle, тем выше будет производительность системы. Попробуйте, выделите различным кешам Oracle столько памяти, сколько это возможно.

Факт

Различные конфигурируемые кеши Oracle имеют такие же ограничения, как и любые другие кеши. Если вы найдете время для измерения производительности поведения кешей, вы быстро обнаружите, что производительность подчиняется "закону сокращающихся доходов". По мере роста размера кеша производительность возрастает с убывающей скоростью. А начиная с какой-то точки выигрыш производительности будет равен нулю и начнется рост накладных расходов системы. Мораль этой истории: для устранения физического ввода-вывода не пытайтесь кешировать в памяти всю базу данных.

Для оценки правильности установки размера кеша буферов базы данных существуют простые способы в Oracle и в операционной системе (в Oracle8 и выше для этого можно использовать v$buffer_pool_statistics). Осознать этот важный аспект Oracle можно с помощью мало кому известного правила, называемого "правилом пяти минут". Оно выводится из следующего уравнения:

Частота = ((Стоимость байта памяти - Стоимость байта диска) * Размер объекта)/ Стоимость секунды доступа к объекту

Было определено, что по ценам дисков, памяти и подсистемы ввода-вывода 1997 года точка "сокращающихся доходов" приблизительно была равна пяти минутам [Gray, J., Reuter, A., 1]. В современных ценах названных выше компонентов она, в зависимости от вашей платформы, возможно, находится в пределах 8-10 минут.

Что все это означает в контексте Oracle? Любой объект (в пределах разумного и размеров), к которому возможно хотя бы одно обращение в следующие 10 минут, следует рассматривать как кандидата для кеширования в кеше буферов базы данных. Данные, к которым не будет ни одного обращения в следующие 10 минут, не следует принудительно размещать в памяти, так как, начиная с некоторого размера кеша, его производительность существенно не увеличится. В таком случае дешевле и гораздо более эффективно выполнять физический ввод-вывод с дисков.

Такое же логическое обоснование следует использовать при определении размеров различных компонентов разделяемого пула; установку чрезмерных размеров различных пулов можно оценить по статистике free memory (свободная память) в v$sgastat.



Содержание раздела