Лекции.Орг


Поиск:




Категории:

Астрономия
Биология
География
Другие языки
Интернет
Информатика
История
Культура
Литература
Логика
Математика
Медицина
Механика
Охрана труда
Педагогика
Политика
Право
Психология
Религия
Риторика
Социология
Спорт
Строительство
Технология
Транспорт
Физика
Философия
Финансы
Химия
Экология
Экономика
Электроника

 

 

 

 


Типовая организация современной СУБД




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

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

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

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

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

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

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

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

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

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

 

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

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

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

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

Реляционный термин Описание  
Отношение Таблица — совокупность объектов реального мира, которые характеризуются общими свой­ствами и характеристиками (поля таблицы)  
Заголовок отношения Заголовок таблицы — названия полей (столбцов) таблицы  
Тело отношения Тело таблицы — совокупность значений для всех объектов реального мира, которая представима в виде записей таблицы (строки таб­лицы)  
Схема отношения Строка заголовков столбцов таблицы (заголовок таблицы)  
Атрибут отношения Наименование столбца таблицы (поле таблицы)  
Кортеж отношения Строка таблицы (запись) — однозначное представление объекта реального мира, соз­данное с использованием значений полей таблицы  
Домен Множество допустимых значений атрибута  
Значение атрибута Значение поля в записи  
Первичный ключ Один или несколько атрибутов, который уни­кальным (единственным) образом определяет значение кортежа (значение строки таблицы)  
Внешний ключ Атрибут таблицы, значения которого соответ­ствуют значениям первичного ключа в другой связанной таблице. Внешний ключ может со­стоять как из одного, так и из нескольких ат­рибутов (составной внешний ключ). Если чис­ло атрибутов внешнего ключа меньше, чем количество атрибутов соответствующего пер­вичного ключа, то он называется усеченным (частичным) внешним ключом  
Степень(арность) отношения Количество столбцов таблицы  
Мощность отношения Количество строк таблицы (количество кортежей)  
Тип данных Тип значений элементов таблицы  
Базовое отношение Отношение, которое содержит один или не­сколько столбцов, характеризующих свойства объекта, а также первичный ключ  
Производное отношение Использу­ется для обеспечения связей между другими таблицами, может не содержать первичного ключа; если первичный ключ задан, то он со­стоит из внешних ключей, которые связаны с первичными ключами базового отношения    
       




Поделиться с друзьями:


Дата добавления: 2016-07-29; Мы поможем в написании ваших работ!; просмотров: 670 | Нарушение авторских прав


Поиск на сайте:

Лучшие изречения:

Лучшая месть – огромный успех. © Фрэнк Синатра
==> читать все изречения...

2307 - | 2191 -


© 2015-2025 lektsii.org - Контакты - Последнее добавление

Ген: 0.009 с.