Процессы Oracle

Источник: sqlxp-7
by admin

В СУБД  Oracle есть различные типы процессов (серверные и фоновыхе процессы Oracle). К фоновым процессам относятся: LGWR, DBWR, PMON и SMON, действующих во время запуска экземпляра базы данных Oracle, и их функции. 

Каждый процесс Oracle будет выполнять конкретную задачу или набор задач, и каждому из них для выполнения его задачи будет выделена внутренняя память (память PGA).  Вообще в экземпляре Oracle существуют три обширных класса процессов:
    • Серверные процессы. Эти процессы выполняют свои задачи в зависимости от запроса клиента. Мы уже до определенной степени ознакомились с выделенным и разделяемым сервером. Они относятся к серверным процессам.
    • Фоновые процессы. Эти процессы запускаются при запуске базы данных и выполняют различные служебные задачи, такие как запись блоков на диски, поддержание оперативных журналов повторения, очистка после прерванных процессов,
обслуживание AWR (Automatic Workload Repository - автоматический репозиторий рабочей нагрузки) и т.п.
    • Подчиненные процессы. Эти процессы аналогичны фоновым, но выполняют дополнительную работу от имени либо фонового, либо серверного процесса.

 Фоновые  процессы Oracle

Экземпляр Oracle образован двумя компонентами: памятью SGA и фоновыми процессами. Фоновые процессы выполняют рутинные задачи по обслуживанию, необходимые для поддержания базы данных в рабочем состоянии. Например, существует процесс, который обслуживает кэш буферов блоков, по мере необходимости записывая блоки в файлы данных. Другой процесс Oracle отвечает за копирование файла оперативного журнала повторения при его заполнении в каталог архива. Еще один процесс выполняет очистку за прерванными процессами и т.д. Каждый из этих процессов в достаточной степени специализирован для решения своей задачи, но работает с учетом всех остальных процессов. Например, когда процесс, отвечающий за запись журнальных файлов заполнит один журнал и перейдет к следующему, он сообщит процессу, отвечающему за архивирование заполненного журнального файла, о наличии задачи, которую нужно выполнить.

Процессы Oracle: Блокировка и защелкивание данных

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

Процессы Oracle: Параллелизм и многоверсионность

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


Страница сайта http://www.interface.ru
Оригинал находится по адресу http://www.interface.ru/home.asp?artId=33408