Логические части реляционной модели (по К.Дейту)
Согласно Дейту, реляционная модель состоит из трех частей:
- Структурной части. - Целостной части. - Манипуляционной части.
Структурная часть описывает, какие объекты рассматриваются реляционной моделью. Постулируется, что единственной структурой данных, используемой в реляционной модели, являются нормализованные n-арные отношения.
Целостная часть описывает ограничения специального вида, которые должны выполняться для любых отношений в любых реляционных базах данных. Это целостность сущностей и целостность внешних ключей.
Манипуляционная часть описывает два эквивалентных способа манипулирования реляционными данными - реляционную алгебру и реляционное исчисление.
Основные компоненты среды СУБД, объекты СУБД
В среде СУБД можно выделить пять основных компонентов:
- аппаратное обеспечение. Используемое аппаратное обеспечение зависит от требований конкретной организации и используемой СУБД;
- программное обеспечение – охватывает ПО самой СУБД и прикладных программ, вместе с ОС и сетевое программное обеспечение;
- данные – БД содержат как рабочие данные, так и метаданные (данные о данных). Структура БД называется схемой. В системном каталоге содержатся следующие данные: имена, типы и размеры элементов данных; имена связей; ограничение целостности данных; имена зарегистрированных пользователей; используемые индексы и структуры хранения;
- процедуры – инструкции и правила, которые должны учитываться при проектировании и использовании данных;
- пользователи – среди них можно выделить 4 группы: администраторы БД; разработчики БД; прикладные программисты; конечные пользователи.
Администратор данных (АД) отвечает за управление данными, включая планирование БД, разработку и сопровождение стандартов, бизнес-правил и деловых процедур, а также за концептуальное и логическое проектирование БД. Администратор базы данных (АБД) отвечает за физическую реализацию БД, включая физическое проектирование и воплощение проекта, за обеспечение безопасности и целостности данных, за сопровождение операционной системы, за обеспечение максимальной производительности. Для
Основные функции СУБД
1. Непосредственное управление данными во внешней памяти
Эта функция включает обеспечение необходимых структур внешней памяти как для хранения данных, непосредственно входящих в БД, так и для служебных целей, например, для убыстрения доступа к данным в некоторых случаях (обычно для этого используются индексы).
2. Управление буферами оперативной памяти
СУБД обычно работают с БД значительного размера; по крайней мере этот размер обычно существенно больше доступного объема оперативной памяти. Понятно, что если при обращении к любому элементу данных будет производиться обмен с внешней памятью, то вся система будет работать со скоростью устройства внешней памяти. Практически единственным способом реального увеличения этой скорости является буферизация данных в оперативной памяти. Поэтому в развитых СУБД поддерживается собственный набор буферов оперативной памяти с собственной дисциплиной замены буферов.
3. Управление транзакциями
Транзакция - это последовательность операций над БД, рассматриваемых СУБД как единое целое. Либо транзакция успешно выполняется, и СУБД фиксирует (COMMIT) изменения БД, произведенные этой транзакцией, во внешней памяти, либо ни одно из этих изменений никак не отражается на состоянии БД. Понятие транзакции необходимо для поддержания логической целостности БД. Таким образом, поддержание механизма транзакций является обязательным условием даже однопользовательских СУБД. Но понятие транзакции гораздо более важно в многопользовательских СУБД.
4. Журнализация
Одним из основных требований к СУБД является надежность хранения данных во внешней памяти. Под надежностью хранения понимается то, что СУБД должна быть в состоянии восстановить последнее согласованное состояние БД после любого аппаратного или программного сбоя. Обычно рассматриваются два возможных вида аппаратных сбоев: так называемые мягкие сбои, которые можно трактовать как внезапную остановку работы компьютера, и жесткие сбои, характеризуемые потерей информации на носителях внешней памяти.
5. Поддержка языков БД
Для работы с базами данных используются специальные языки, в целом называемые языками баз данных. В ранних СУБД поддерживалось несколько специализированных по своим функциям языков. Чаще всего выделялись два языка - язык определения схемы БД (SDL - SchemaDefinitionLanguage) и язык манипулирования данными (DML - DataManipulationLanguage). SDL служил главным образом для определения логической структуры БД. DML содержал набор операторов манипулирования данными.