Издательский дом ООО "Гейм Лэнд"СПЕЦВЫПУСК ЖУРНАЛА ХАКЕР #52, МАРТ 2005 г.

Тюнинг для Оракула

Андрей Сидоренко

Спецвыпуск: Хакер, номер #052, стр. 052-046-2


Итак, после установки БД желательно подкрутить винтики и заставить ее работать на том минимуме памяти, на котором падение скорости работы еще не сильно заметно, а тем самым освободить место под другие программы. На вкладке Administration выберем Memory Parameters, которая будет иметь вид примерно как на рисунке 2.

Общий пул памяти в Oracle, называемый System Global Area (SGA), разделен на области, зарезервированные под различные виды приложений и процессов. Например, Buffer Cache - память, выделенная для обеспечения быстродействия одинаковых и повторяющихся запросов, а Java Pool - для необходимого пространства для Java-кода, выполняющегося на стороне сервера, например, хранимых Java-процедур. Здесь действует простое правило: с какими видами памяти собирается чаще работать твой Oracle, такие области памяти и стоит увеличить, а остальные уменьшить до минимума.

Для большинства приложений достаточно предусмотреть общую рабочую память в 128 Мб и распределить ее следующим образом:

Shared Pool 52 Мб

Buffer Cache 60 Мб

Large Pool 4 Мб

Java Pool 8 Мб

Other 4 Мб

Я не пользуюсь Java, и с такими параметрами (при размере физической памяти 512 Мб) мне вполне комфортно работать. Oracle работает достаточно шустро, и всем нужным приложениями хватает быстродействия. Для достижения оптимального быстродействия Oracle 10g использует фиксированный объем памяти, который выделяется при запуске его процессов. В дальнейшим все операции по выделению/освобождению областей памяти, необходимых для работы сервисов базы данных, ведутся с использованием уже выделенного диапазона памяти. Таким образом, выделяй базе данных память с расчетом на то, чтобы оставшейся хватило для работы приложений в ОС, а Oracle сам разберется с тем, как оптимально использовать выделенную для него область.

После выставления значений необходимо подтвердить их и отдать команду на изменение параметров системы. Для этого нажми кнопку Apply в нижней части web-страницы. Любопытным товарищам, да и просто желающим поднатореть в работе с Oracle советую посматривать на кнопочку Show SQL, появляющуюся на страницах, на которых можно менять параметры работающей базы. Там можно увидеть всю "внутреннюю кухню", скрывающуюся за HTML, а именно SQL-команды, которые выполнит база данных в соответствии с твоими указаниями.

Контролируем работу. Стоим у руля

Современные БД чем-то похожи на беспилотный космический аппарат. Однажды хорошо настроил, обладаешь устойчивой связью с БД - и можно не беспокоиться о том, что с ней происходит, лишь изредка управлять ее поведением. Как же контролировать "самочувствие" Oracle? С помощью Enterprise Manager и его закладки Performance все будет проще простого.

На этой странице можно найти любые параметры системы, которые отслеживаются в режиме реального времени и проанализировать периоды, уже оставшиеся в прошлом. Кликнув по любому интересующему нас параметру, получим подробный отчет о его изменениях во времени. Вот так, например (рис. 3), выглядит график загрузки процессора базой данных на моем компьютере и соответствующие ему последние SQL-запросы, которые обрабатывались на сервере.

Назад на стр. 052-046-1  Содержание  Вперед на стр. 052-046-3