|
Программирование >> Oracle
В ОС Windows увидеть область SGA, как в ОС UNIX, нельзя. Поскольку на этой платформе экземпляр Oracle работает как единый процесс с одним адресным пространством, область SGA выделяется как приватная память процесса ORACLE.EXE. С помощью диспетчера задач Windows (Task Manager) или другого средства контроля производительности можно узнать, сколько памяти выделено процессу ORACLE.EXE, но нельзя определить, какую часть по отношению к другим выделенным структурам памяти занимает область SGA. В самой СУБД Oracle можно определить размер области SGA независимо от платформы. Есть еще одно магическое представление V$, именуемое V$SGASTAT. Вот как его можно использовать: tkyte@TKYTE816> compute sum of bytes on pool tkyte@TKYTE816> break on pool skip 1 tkyte@TKYTE816> select pool, name, bytes 2 from v$sgastat 3 order by pool, name,
*********** sum
24713484 43 rows selected. Область SGA разбита на несколько пулов. Java-пул. Java-пул представляет собой фиксированный пул памяти, выделенный виртуальной машине JVM, которая работает в составе сервера. Большой пул. Большой пул (large pool) используется сервером в режиме MTS для размещения памяти сеанса, средствами распараллеливания Parallel Execution для буферов сообщений и при резервном копировании с помощью RMAN для буферов дискового ввода/вывода. Разделяемый пул. Разделяемый пул (shared pool) содержит разделяемые курсоры, хранимые процедуры, объекты состояния, кэш словаря данных и десятки других компонентов данных. Неопределенн1й ( Null ) пул. Этот пул не имеет имени. Это память, выделенная под буферы блоков (кэш блоков базы данных, буферный кэш), буфер журнала повторного выполнения и фиксированную область SGA . Поэтому графически область SGA можно представить следующим образом: На общий размер SGA наиболее существенно влияют следующие параметры init.ora. JAVA POOL SIZE. Управляет размером Java-пула. SHARED POOL SIZE. Управляет (до некоторой степени) размером разделяемого пула. LARGE POOL SIZE. Управляет размером большого пула. DB BLOCK BUFFERS. Управляет размером буферного кэша. LOG BUFFER. Управляет (отчасти) размером буфера журнала повторного выполнения. За исключением параметров SHARED POOL SIZE и LOG BUFFER, имеется однозначное соответствие между значением параметров в файле init.ora и объемом памяти, выделяемой соответствующей структуре в области SGA. Например, если умножить DB BLOCK BUFFERS на размер буфера, получится значение, совпадающее с размером в строке DB BLOCK BUFFERS для пула NULL в представлении V$SGASTAT (добавляется определенный объем памяти на поддержку защелок). Суммарное количество байтов, вычисленное из строк представления V$SGASTAT для большого пула, совпадет со значением параметра инициализации LARGE POOL SIZE. Фиксированная область SGA Фиксированная область SGA - это часть области SGA, размер которой зависит от платформы и версии. Она компилируется в двоичный модуль сервера Oracle при установке (отсюда и название - фиксированная ). Фиксированная область SGA содержит переменные, которые указывают на другие части SGA, а также переменные, содержащие значения различных параметров. Размером фиксированной области SGA (как правило, очень небольшой) управлять нельзя. Можно рассматривать эту область как загрузочную часть SGA, используемую сервером Oracle для поиска других компонентов SGA. Буфер журнала повторного выполнения Буфер журнала повторного выполнения используется для временного кэширования данных активного журнала повторного выполнения перед записью на диск. Поскольку перенос данных из памяти в память намного быстрее, чем из памяти - на диск, использование буфера журнала повторного выполнения позволяет существенно ускорить работу сервера. Данные не задерживаются в буфере журнала повторного выполнения надолго. Содержимое этого буфера сбрасывается на диск: раз в три секунды; при фиксации транзакции; при заполнении буфера на треть или когда в нем оказывается 1 Мбайт данных журнала повторного выполнения. Поэтому создание буфера журнала повторного выполнения размером в десятки Мбайт - напрасное расходование памяти. Чтобы использовать буферный кэш журнала повторного выполнения размером 6 Мбайт, например, надо выполнять продолжительные тран-
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |