Архитектура Памяти Oracle

База данных Oracle создает и использует структуры памяти в различных целях.

Архитектура Памяти Oracle

Например, память хранит выполняемый код программы, данные, совместно используемые среди пользователей, а также частные области данных для каждого соединенного пользователя.

В архитектуре памяти Oracle есть две основных структуры памяти, связанных с экземпляром:

  • Системная Глобальная Область (SGA) - группа структур совместно используемой памяти, известных как компоненты SGA, которые содержат данные и управляющую информацию для одного экземпляра БД Oracle.

    SGA совместно используется всеми серверными и фоновыми процессами. Примеры данных, хранимых в SGA, включают блоки кэшированных данных и совместно используемые области SQL.

  • Глобальные Программные Области(PGA) являются областями памяти, которые содержат данные и управляющую информацию для серверного или фонового процесса. PGA является неразделяемой памятью, создаваемой БД Oracle, когда серверный или фоновый процесс запускается. Доступ к PGA является монопольным для серверного процесса. У каждого серверного процесса и фонового процесса есть своя собственная PGA.

SGA является областью памяти, которая содержит данные и управляющую информацию для экземпляра. SGA включает следующие структуры данных:

  • Буферный кэш базы данных: Кэширует блоки данных, получаемые из базы данных

  • Буфер Журнала Транзакций: Кэширует информацию о транзакциях (используемую, например, при восстановлении), пока она не может быть записана в физические файлы журнала транзакций, хранимые на диске

  • Совместно используемый пул: Кэширует различные конструкции, которые могут быть совместно использованы среди пользователей

  • Большой пул: Дополнительная область, которая обеспечивает большие выделения памяти для определенных больших процессов, таких как резервное копирование Oracle и операции восстановления, а также серверные процессы ввода-вывода

  • Пул Java: Используется для всего специфичного для сеанса кода Java и данных внутри виртуальной машины Java (JVM)

  • Потоковый пул: Используется в Oracle Streams, чтобы хранить требуемую информацию

Когда Вы запускаете экземпляр при использовании Enterprise Manager или SQL*Plus, объем памяти, выделенный для SGA, выводится на экран.

С динамической инфраструктурой SGA размер буферного кэша базы данных, совместно используемого пула, большого пула пула Java и пула Потоков изменяется без необходимости завершения работы экземпляра.

База данных Oracle использует параметры инициализации, чтобы создавать и конфигурировать структуры памяти. Например, параметр SGA_TARGET определяет полный размер компонентов SGA. Если Вы устанавливаете SGA_TARGET в 0, Автоматическое управление Совместно используемой памятью отключается.

Далее: Реляционные и Объектно-Реляционные Системы управления Базами Данных

Смотрите также
Комментарии
Написать

(обязательно)

(обязательно)

Это не спам (обязательно)