Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Коннолли Т. -> "Базы данных. Проектирование, реализация и сопровождение. Теория и практика" -> 47

Базы данных. Проектирование, реализация и сопровождение. Теория и практика - Коннолли Т.

Коннолли Т., Бегг К. Базы данных. Проектирование, реализация и сопровождение. Теория и практика — М.: Вильямc, 2003. — 1440 c.
ISBN 5-8459-0527-3
Скачать (прямая ссылка): bazidannihpproekt2003.djv
Предыдущая << 1 .. 41 42 43 44 45 46 < 47 > 48 49 50 51 52 53 .. 683 >> Следующая


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

Основные программные компоненты среды СУБД представлены на рис. 2.6. На этой схеме также показано как СУБД взаимодействует с другими программными компонентами, например с такими, как пользовательские запросы и методы доступа (т.е. методы управления файлами, используемые при сохранении и извлечении записей с данными). Файловая организация и методы доступа кратко рассматриваются в приложении В. Более полное описание этой темы можно найти в [302], [325], Г404] и [5851.

На рис. 2.6 показаны следующие программные компоненты среды СУБД.

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

• Диспетчер базы данных. Stot компонент взаимодействует с запущенными пользователями прикладными программами и запросами. Диспетчер базы данных принимает запросы и проверяет эяешмне и концептуальные схемы для определения тех концептуальных записей, которые необходимы для удовлетворения требований запроса. Затем диспетчер базы данных вызывает диспетчер файлов для выполнения поступившего запроса. Компоненты диспетчера базы данных показаны на рис. 2.7.

98

Часты ОСНОВНЫЕ СВВДЕНИЙ А млнистр і гор

Программисты Пользователи базыданных

Ka іапь базы данных и системы

Рис. 2.6. Основные компоненты типичной системы управления базами данных

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

• Препроцессор языка *}М1 Этот модуль преобразует внедренные в прикладные программы DML-операторы в вызовы стандартных функций базового языка. Для генерации соответствующего кода препроцессор языка DML должен взаимодействовать с процессором запросов.

• Компилятор языка DDL. Компилятор языка DDL преобразует DDL-команды в набор таблиц, содержащих метаданные. Затем эти таблицы сохраняются в системном каталоге, а управляющая информация — в заголовках файлов с данными.

• Диспетчер словаря. Диспетчер словаря управляет доступом к системному каталогу и обеспечивает работу с ним. Системный каталог доступен большинству компонентов СУБД.

Ниже перечислены осяобньк программные компоненты, входящие в состав диспетчера базы данных.

Глава 2. Среда базы дан н ых

99 Мегцды доступа

I

Сиг „имые Ьуфигм

>

Дш петчер файлог

1

Каталог базы данных и системы

Рис. 2.7. Компоненты диспетчера базы данных

• Модуль контроля прав доступа. Этот модуль проверяет наличие у данного пользователя полномочий для выполнения затребованной операции.

• Процессор команд. После проверки полномочий пользователя для выполнения затребованной операции управление передается процессору команд.

• Средства контроля целостности. В случае операций, которые изменяют содержимое базы данных, средства контроля целостности выполняют проверку того, удовлетворяет ли затребованная операция всем установленным ограничениям поддержки целостности данных (например, требованиям, установленным для ключей).

• Оптимизатор запросов. Этот модуль определяет оптимальную стратегию выполнения запроса. Более подробно оптимизация запросов рассматривается в главе 20.

• Диспетчер транзакций. Этот модуль осуществляет требуемую обработку операций, поступающих в процессе выполнения транзакций.

100

Часть I. ОСНОВНЫЕ СВВДЕНИЯ • Планировщик. Этот модуль отвечает за бесконфликтное выполнение параллельных операций с базой данных. Он управляет относительным порядком выполнения операций, затребованных в отдельных транзакциях.

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

• Диспетчер буферов. Этот модуль отвечает за перенос данных между оперативной памятью и вторичным запоминающим устройством — например, жестким диском или магнитной лентой. Диспетчер восстановления и диспетчер буферов иногда (в совокупности) называют диспетчера и данных, а сам диспетчер буферов — диспетчером кэша.
Предыдущая << 1 .. 41 42 43 44 45 46 < 47 > 48 49 50 51 52 53 .. 683 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100