Типовая организация современной субд

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

l управление данными во внешней памяти;

l управление буферами оперативной памяти;

l управление транзакциями;

l журнализация и восстановление БД после сбоев;

l поддержание языков БД.

Логически в современной реляционной СУБД можно выделить наиболее внутреннюю часть — ядро СУБД (часто его называют Data Base Engine), компилятор языка БД (обычно SQL), подсистему поддержки времени выполнения, набор утилит. В некоторых системах эти части выделяются явно, в других — нет, но логически такое разделение можно провести во всех СУБД.

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

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

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

Реляционная модель данных

Основу этой модели составляет набор взаимосвязанных таблиц, в которых хранятся данные.Основные теоретические идеи реляционной модели были изложены в работах по теории отношений Чарльза Содерса Пирса и Эрнста Шредера, а также американского математика Эдгара Кодда. В работах Пирса и Шредера было доказано, что множество отношений замкнуто относительно некоторых специальных операций, совместно образующих абстрактную алгебру. В дальнейшем это важнейшее свойство отношений было использовано в реляционной модели для разработки языка манипулирования данными. В 1970 году появилась статья Эдгара Кодда о представлении данных, организованных в виде двумерных таблиц, называемых отношениями. В этой работе впервые введены основные понятия и ограничения реляционной модели как основы хранения данных, а также показана возможность обработки данных с помощью традиционных операций над множествами.

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

Основные понятия реляционной модели данных

Случайные записи:

Управление данными


Похожие статьи:

  • Способы организации данных

    ПРОГРАММА КУРСА Лекции Раздел 1 Вводная часть. Программное и аппаратное обеспечение. Языки программирования: уровень и тип языка программирования,…

  • Суффиксальные словообразовательные поля современного английского языка

    Имя существительное Поле агентивности (41 ССМ, 22 суф.: -er, -ist, -ess, -ee1, -ant/-ent, -ite1, -an, -eer, -ling1, -ix, -ster, -ary1, -me, -ie/-y2, -i1,…

  • Основные принципы организации суперэвм

    Центральный процессор суперЭВМ-это мультипроцессорная система или система с несколькими операционными устройствами. Базовые подходы построения машин…

Добавьте постоянную ссылку в закладки. Вы можете следить за комментариями через RSS-ленту этой статьи.
Комментарии и трекбеки сейчас закрыты.