Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Администрирование БД.doc
Скачиваний:
2
Добавлен:
24.11.2018
Размер:
241.66 Кб
Скачать

Компания Oracle и продукт Oracle Database

Больше, чем три десятилетия тому назад Лари Эллисон, просматривая журнал IBM «Journal of Research and Development», обнаружил статью, описывающую рабочий прототип системы управления реляционными базами данных. Ни одна компания тогда не взялась за коммерческое освоение этой технологии. Разглядев огромный бизнес-потенциал в модели реляционной базы данных, Ларри Эллисон и его коллеги основали компанию, которая впоследствии станет корпорацией Oracle, и разработали СУБД, которую они назвали Oracle. С тех пор, корпорация является крупнейшим поставщиком ПО, а СУБД Oracle – самой популярной СУБД в мире (согласно опросам Gartner – лидирующей IT компании в области исследований и консалтинга). Корпорация Oracle ведет агрессивную политику – скупает компании, которые эффективно работают в технологических сегментах рынка. Недавняя покупка Sun Microsystems – яркое тому подтверждение.

Продукт Oracle Database представляет собой сервер Oracle и является главным продуктом корпорации. За 30 лет выпущено 18 версий Oracle Database. Последняя версия – Oracle Database 11g выпущена в 2007 году.

Язык структурированных запросов (sql)

В качестве языка доступа к данным компанией IBM был разработан SQL (Structured Query Language – язык структурированных запросов), который является стандартом для СУБД. Язык структурированных запросов позволяет создавать, модифицировать и управлять данными в СУБД.

SQL позволяет:

  • Выбирать данные;

  • Вставлять, обновлять и удалять строки в таблицах;

  • Создавать, перемещать, изменять и удалять объекты;

  • Контролировать доступ к базе данных и ее объектам;

  • Гарантировать целостность данных.

Подробнее знакомство с SQL будет происходить в следующих разделах.

Архитектура сервера Oracle

Базой данных (БД) часто упрощенно или ошибочно называют системы управления базами данных (СУБД). Необходимо различать эти два понятия. БД – набор файлов, в которых хранится информация, а СУБД – программное обеспечение, которое позволяет пользователям работать с базой данных. Основная задача СУБД – дать пользователю базы данных возможность работать с ней, не вникая во все подробности работы на уровне аппаратного обеспечения. Иными словами, СУБД позволяет конечному пользователю рассматривать базу данных как объект более высокого уровня по сравнению с аппаратным обеспечением, а также предоставляет в его распоряжение набор операций, выраженных в терминах языка высокого уровня.

СУБД Oracle – Oracle Database – это коллекция данных, управление которой осуществляется как единое целое.

Сервер Oracle состоит из:

  • Экземпляра Oracle;

  • Базы данных Oracle.

Каждый раз, когда запускается база данных, выделяется оперативная память, запускаются фоновые процессы. Набор фоновых процессов и выделенная оперативная память представляют собой экземпляр Oracle. [Демонстрация сервиса Oracle, процесса oracle.exe]

База данных Oracle представляет собой набор файлов.

Архитектура экземпляра

Оперативная память:

  • Системная глобальная память (SGA) – общее пространство памяти, которое содержит данные и управляющую информацию экземпляра Oracle. SGA состоит из:

    • shared pool – содержит такую информацию, как дерево разбора и план выполнения запроса – эта информация используется разными приложениями, которые выполняют одинаковые запросы;

    • buffer cache – хранит наиболее часто используемые блоки данных. Чем больше блоков данных храниться, тем реже происходят обращения к дискам (дорогостоящая операция);

    • redo buffer – хранит изменения, сделанные в базе данных, которые периодически записываются в online redo log;

    • java pool – используется для выполнения java кода;

    • streams pool – используется при репликации данных с помощью Oracle Streams;

    • large pool – используется для:

      • памяти сессий при работе экземпляра в режиме Shared Server;

      • ввода/вывода серверных процессов;

      • операций резервирования и восстановления;

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

Процессы в системе Oracle:

  • Пользовательские процессы – создаются и обслуживаются для выполнения программного кода или утилиты Oracle. Пользовательские процессы управляют соединением с серверным процессом через программный интерфейс;

  • Процессы Oracle:

    • Серверные процессы – управляют запросами от присоединенных пользовательских процессов;

    • Основные фоновые процессы:

      • DBWn – пишет измененные в buffer cache данные на диск (в файлы данных);

      • LGWR – пишет данные из redo log buffer в redo log файл на диск;

      • CKPT – обновляет заголовки всех файлов данных информацией о контрольной точке;

      • SMON – выполняет восстановление;

      • PMON – выполняет восстановление процессов при падении пользовательского процесса;

      • ARCn (если БД работает в режиме archive log) – копирует файл redo log после переключения журнала.

Конфигурации сервера Oracle:

  • Выделенный сервер (Dedicated Server) – каждому пользовательскому процессу соответствует серверный процесс;

  • Разделяемый сервер (Shared Server) – несколько пользовательских процессов обслуживаются одним серверным.