Oracle продолжает оставаться ключевым продуктом на платформе Sun

Оценить
(2 голоса)

Доминирующее положение СУБД Oracle на рынке Unix объясняется огромной пользовательской базой на системах Sun. В этой главе мы проанализируем архитектуру Oracle, уделяя особое внимание модели процессов, управлению памятью и хранению данных. Также будут рассмотрены вопросы, касающиеся параллельной обработки.

Модель процессов Oracle организуется на основе экземпляра, состоящего из памяти совместного использования и группы процессов системы БД. Экземпляром может быть открыта только одна база данных, хотя вначале экземпляр может быть запущен вообще без какой-либо смонтированной или открытой базы данных. Технология RAC (Real Application Clasters - кластеров реального приложения, известная ранее как Oracle Parallel Server, или OPS) разрешает нескольким экземплярам открывать одну и ту же базу данных, позволяя кластерным системам совместно использовать одну БД. Каждый экземпляр обладает уникальным идентификатором, устанавливаемым переменной окружения ORACLE_SID, а характеристики экземпляра определяются содержимым файла параметров, обычно называемого init${ORACLE_SID} .ora.

Память совместного использования, принадлежащая экземпляру, называется SGA {system global area - системной глобальной областью). Она распределяется при запуске экземпляра и удаляется при его закрытии. SGA описывается в разделе "Управление памятью" этой главы.

При запуске экземпляра запускается и множество процессов СУБД Oracle. Далее следует их описание:

•             SMON. System monitor (системный монитор) производит восстановление экземпляра. Он также используется при запуске экземпляра после его фатального сбоя для прокрутки всех изменений, отмеченных в журнале отката, но не в блоках базы данных. SMON отвечает за очистку и исправление неиспользуемых временных сегментов. На каждый экземпляр выполняется только один процесс системного монитора.

•             PMON. Process monitor (монитор процесса) производит восстановление пользовательского процесса после сбоя и откат любой необходимой транзакции. PMON отвечает за высвобождение блокировок и очистку любой кэш-памяти, используемой процессом. На каждый экземпляр выполняется только один процесс PMON.

•             DBWR. Процесс (или процессы, начиная с Oracle8) Database Writer (редактора базы данных) используется для выгрузки грязных буферов из буферного кэша SGA в страницы БД на диске. Этот процесс работает асинхронно; другими словами, выполнение записей будет отсрочено, чтобы а) разрешить эффективно спланировать выгрузку, б) накопить записи (то есть, уменьшить количество записей ввода/вывода, позволяя многочисленным транзакциям модифицировать блок перед его записью), в) сохранить в памяти данные, к которым наиболее часто происходит обращение (выгрузка грязных буферов сосредоточена на наименее используемых блоках).

В контрольных точках DBWR по приглашению процесса СКРТ выгружает грязные блоки на диск для синхронизации содержимого буферного кэша с таблицами, хранящимися на диске.

Подробнее в этой категории: Эффективная выгрузка грязных блоков »
Эффективная выгрузка грязных блоков
СУБД Oracle основана на двухпроцессной архитектуре
Управление памятью Oracle
Установка настраиваемых параметров для рабочих нагрузок OLTP
Хранение физических данных

Добавить комментарий


Защитный код
Обновить