Определение БД и СУБД. Логическая структура БД Oracle, страница 2

 


Рис. 1 Логическая структура БД

Физическая структура ядра Oracle.

Обобщенно физическая структура ядра Oracle представлена на рис. 2.

 


Файлы, на которых базируется Oracle представляют собой файлы прямого доступа, называемые табличными пространствами. Ввод-вывод строится по относительным адресам внутри файла, что влечет за собой независимость от ОС. Доступ осуществляется поблочно. Размер блока зависит от операционной системы и обычно составляет 2, 4, 8, 16 … Кбайт.

Выделяют следующие типы табличных пространств:

1.  DATA – пользовательские табличные пространства; содержат объекты и данные пользователя;

2.  INDEX – содержат индексы;

3.  RBS – сегменты отката;

4.  TEMP – содержат виртуальные таблицы, используются для сортировки;

5.  SYSTEM – содержат системные объекты и данные.

При открытии экземпляра БД в оперативной памяти сервера выделяется область, называемая Системной Глобальной Областью (SGA), которая предназначена для хранения структур памяти, необходимых для манипулирования данными, анализа приложений SQL и кеширования транзакций. Эта область является разделяемой, т.е. к ней одновременно имеет доступ множество процессов.

Область SQL предназначена для хранения кэша библиотеки БД, кэша словаря и управляющих структур сервера (например, набор символов БД). При поступлении очередного запроса в систему сервер Oracle использует кэш библиотеки для поиска такого же запроса, переданного ранее. Если он найден, то используется соответствующее ему дерево лексического анализа, что избавляет от необходимости формировать дерево повторно.

Область Buffer Cache предназначена для хранения данных, с которыми работает СУБД, т.к. доступ к оперативной памяти осуществляется намного быстрее, чем к диску. При заполнении области начинает работать принцип LRU (Last Recently Used), при котором наиболее “старые” данные записываются обратно на диск.

Область Log Buffer хранит данные о действиях системы до тех пор, пока соответствующий процесс не перепишет их в файл журнала регистрации транзакций. Таких файлов обычно два или более, что позволяет переносить журнал на другой носитель информации без останова системы.

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

·  SMON – считывает информацию из файлов регистрации транзакций

·  RECO – процесс восстановления

·  DBWR – пишет в БД и читает данные оттуда

·  LGWK – пишет из Log Buffer в файлы регистрации транзакций

·  CKPT – синхронизирует работу процессов, работающих над данными

·  PMON – диспетчеризирует соединение между клиентами.

Для работы с БД Oracle используется среда SQL*PLUS, входящая, наряду с другими продуктами, в стандартную поставку СУБД Oracle. Кроме того, корпорация Oracle разрабатывает и поддерживает различные средства разработки прикладных систем, среди которых можно выделить:

1.  Средства разработки корпорации Oracle:

·  Developer 2000:

·  Oracle Forms;

·  Oracle Reports;

·  Oracle Graphics;

·  Oracle Procedure Builder.

·  Oracle Programmer 2000;

·  Oracle for OLE;

·  Oracle Precompilers (C, C++, ADA, Fortran….)

·  Oracle Jdeveloper

2.  Средства разработки других фирм:

·  Power Builder

·  MS Access

·  Borland Delphi, C Builder, J Builder

·  …

3.  Инструментальные CASE – системы

·  Designer 2000

·  Sybase – DESIGNER

Описание учебной базы данных.

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

Таблица EMP содержит информацию о служащих и включает следующие данные (столбцы):

·  EMPNO – уникальный номер служащего;    

·  ENAME – фамилия служащего;        

·  JOB – должность служащего;          

·  MGR – менеджер служащего;          

·  HIREDATE – дата приема служащего на работу;

·  SAL – оклад служащего;          

·  COMM – комиссионные служащего;         

·  DEPTNO – номер отдела, в котором работает служащий.

Таблица DEPT содержит информацию об отделах фирмы и включает следующие данные (столбцы):

·  DEPTNO – уникальный номер отдела фирмы;

·  DNAME – наименование отдела фирмы;

·  LOC – месторасположение (город) отдела.