Пиши Дома Нужные Работы

Обратная связь

Типовая организация СУБД и упрощенная схема работы

Очевидно, что организация типичной СУБД и состав ее компонентов соответствует рассмотренному набору функций. Логически в современной реляционной СУБД можно выделить:

· внутреннюю часть – ядро СУБД (часто его называют DBE - Data Base Engine),

· компилятор языка БД (обычно, SQL),

· подсистему поддержки времени выполнения,

· набор утилит.

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

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

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



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

Обобщенную структуру СУБД можно представить схемой на рис. 18.

Упрощенно основные этапы реализации СУБД запроса приложения представлены на рис.19.

1.Прикладная программа выдает СУБД запрос на доступ к БД.

2.СУБД анализирует запрос и определяет типы необходимых логических записей, содержащих запрашиваемые данные.

3.СУБД определяет хранимые записи, которые нужно предоставить прикладной программе.

4.СУБД выдает ОС команды поиска и обработки хранимых записей.

5.ОС интерпретирует команды СУБД, взаимодействует с внешним запоминающим устройством, обнаруживая в БД требуемые записи.

 
 

 

 


Рис.18. Обобщенная структура СУБД

 

6.Отобранные записи передаются в системные буферы.

7.СУБД выделяет логические записи, которые необходимо передать приложению.

8.СУБД передает выделенные данные из системных буферов в рабочую область прикладной программы, предварительно преобразовав их в формат, указанный в запросе.

9.СУБД передает прикладной программе информацию о результатах обработки запроса.

10.При успешном завершении СУБД обработки запроса приложение использует полученные данные для дальнейшей работы, в противном случае запрос должен быть повторен.

 
 

 


Рис.19. Схема реализации запроса к СУБД

 

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

Замечание. Для более эффективной работы с внешней памятью СУБД может взять управление на себя, минуя систему управления файлами ОС. Более подробно этот материал рассмотрен в п. 7.3..

Взаимодействие компонентов информационной системы между собой, предметной областью и ее моделью может быть представлена схемой на рис.20.

КОНТРОЛЬНЫЕ ВОПРОСЫ ПО ШЕСТОМУ РАЗДЕЛУ

1. Перечислите основные функции СУБД.

2. Опишите языковую компоненту СУБД.

3. Определите понятие транзакции. Назначение и суть механизма журнализации.

4. Какие основные аспекты сохранения целостности учитываются при функционировании СУБД.

5. Какие основные аспекты защиты данных должны учитываться при функционировании СУБД.

6. Сформулируйте понятия логической и физической независимости данных.

7. Приведите обобщенную схему СУБД.

8. Приведите упрощенную схему функционирования СУБД.

 
 

 


Рис.20 Взаимодействие компонентов информационной системы






ТОП 5 статей:
Экономическая сущность инвестиций - Экономическая сущность инвестиций – долгосрочные вложения экономических ресурсов сроком более 1 года для получения прибыли путем...
Тема: Федеральный закон от 26.07.2006 N 135-ФЗ - На основании изучения ФЗ № 135, дайте максимально короткое определение следующих понятий с указанием статей и пунктов закона...
Сущность, функции и виды управления в телекоммуникациях - Цели достигаются с помощью различных принципов, функций и методов социально-экономического менеджмента...
Схема построения базисных индексов - Индекс (лат. INDEX – указатель, показатель) - относительная величина, показывающая, во сколько раз уровень изучаемого явления...
Тема 11. Международное космическое право - Правовой режим космического пространства и небесных тел. Принципы деятельности государств по исследованию...



©2015- 2024 pdnr.ru Все права принадлежат авторам размещенных материалов.