Разделяемый пул (shared pool) используется в базе данных Oracle для хранения следующей информации:
- информации о последних выполненных командах SQL
- информации из словаря данных, к которая недавно запрашивалась
Состоит из двух структур памяти, оказывающих существенное влияние на производительность:
Размер определяется параметром инициализации shared_pool_size
.
Разделяемый пул (shared pool)
Разделяемый пул содержит как постоянные, так и переменные структуры. Размер постоянных структур относительно не меняется, тогда как переменные структуры увеличиваются или уменьшаются в зависимости от пользовательских и программных потребностей. Текущие размеры постоянных и переменных структур основываются на параметре инициализации и результатах работы внутреннего алгоритма сервера Oracle.
Размер разделяемого пула
В разделяемый пул помещаются такие общедоступные объекты, как планы выполнения повторно используемых команд SQL, пакеты, процедуры и функции на PL/SQL; информация курсоров. Размер этого пула должен удовлетворять потребностям размещения постоянных и переменных областей. Параметр инициализации SHARED_POOL_SIZE
устанавливает размер выделяемой памяти для разделяемого пула. После проведения анализа производительности он может быть динамически переопределен по команде ALTER SYSTEM SET
. Однако общий размер SGA не может превысить значение параметра SGA_MAX_SIZE:
ALTER SYSTEM SET SHARED_POOL_SIZE = 64 Mb;