
- •Белорусский государственный университет модели данных и субд Учебное пособие
- •Введение
- •Раздел 5 посвящен семантическим или инфологическим моделям, используемым в современных программных системах поддержки проектирования, называемых case-системами (Computer Aided Software Engineering).
- •Раздел 10 посвящен вопросам распределенной обработки данных, здесь рассматриваются проектирование распределенных систем обработки данных, уделяется большое внимание фрагментации данных.
- •1. Основные понятия и определения теории баз данных.
- •1.1. Причины возникновения систем баз данных.
- •1.3. Системы управления базами данных.
- •2. Классификация моделей данных.
- •2.1. Моделирование данных.
- •2.2. Иерархическая модель.
- •2.3. Сетевая модель.
- •2.4. Реляционная модель.
- •2.5. Объектно-ориентированная модель.
- •2.6. Объектно-реляционная модель.
- •2.7. Многомерная модель.
- •3. Реляционная алгебра и реляционное исчисление.
- •3.1. Реляционная алгебра.
- •3.2. Реляционное исчисление.
- •4. Проектирование реляционных баз данных на основе нормализации.
- •4.1. Нормализация отношений, цели нормализации.
- •4.2. Структура функциональных зависимостей.
- •4.2.1. Функциональные зависимости и их свойства.
- •4.2.2. Ключи схем отношений.
- •4.2.3. Полные и неполные функциональные зависимости.
- •4.2.4. Покрытие множеств зависимостей.
- •4.2.5. Декомпозиция схем отношений.
- •4.2.6. Декомпозиции, сохраняющие зависимости.
- •4.3 Нормальные формы отношений.
- •4.3.1. Первая и вторая нормальные формы схем отношений.
- •4.3.2. Третья нормальная форма схем отношений.
- •4.3.4. Четвертая нормальная форма схем отношений.
- •4.3.5. Пятая нормальная форма схем отношений.
- •5. Семантическое моделирование
- •5.1. Цели и средства семантического моделирования.
- •5.2. Метод “сущность-связь”.
- •5.3. Этапы моделирования.
- •5.4. Правила формирования отношений.
- •Формирование отношений для связи 1:1.
- •Формирование отношений для связи 1:м.
- •6. Структура субд и основные функции.
- •6.1. Типовая организация современной субд.
- •6.2. Поддержка языков бд.
- •6.3. Управление данными во внешней памяти.
- •6.4. Управление буферами оперативной памяти.
- •6.5. Управление транзакциями.
- •6.6. Журнализация и восстановление после сбоев.
- •7. Управление транзакциями.
- •7.1. Свойства транзакций. Проблемы параллельного выполнения.
- •7.2. Консервативные методы управления транзакциями.
- •7.2.1. Метод блокировки.
- •7.2.2. Метод временных отметок.
- •7.3. Оптимистические методы управления транзакциями.
- •7.4. Уровень детализации блокируемых элементов данных.
- •8. Восстановление базы данных после сбоев.
- •8.1. Основные принципы и функции восстановления.
- •8.3. Создание контрольных точек.
- •8.4. Методы восстановления.
- •9. Защита баз данных.
- •9.1. Основные понятия.
- •9.2. Компьютерные средства защиты.
- •9.3. Некомпьютерные средства защиты.
- •10. Распределенные базы данных
- •10.1. Основные концепции.
- •10.2. Функции распределенных субд.
- •10.3. Разработка распределенных реляционных баз данных.
- •10.4. Распределение данных.
- •10.5. Фрагментация.
- •10. 6. Обеспечение прозрачности в рсубд.
- •11. Введение в субд oracle.
- •11.1. Характеристика субд Oracle.
- •11.2. Объекты базы данных Oracle.
- •11.4. Архитектура базы данных Oracle.
- •11.5. Архитектура экземпляра базы данных Oracle.
- •11.6. Формирование базы данных и экземпляра Oracle.
- •12. Основы языка sql.
- •12.1. Алфавит и лексемы языка sql.
- •12.2. Типы данных языка sql.
- •12.3. Операторы языка sql.
- •12.4. Операции языка sql.
- •12.5. Функции языка sql.
- •12.6. Создание, модификация и удаление таблиц.
- •12.7. Выбор информации из базы данных.
- •13. Основы языка pl/sql.
- •13.1. Алфавит и лексемы языка.
- •13.3. Типы данных и объявление переменных.
- •13.4. Операторы.
- •13.5. Курсоры.
- •13.6. Обработка исключительных ситуаций.
- •13.7. Триггеры базы данных.
- •13.8. Хранимые процедуры и функции.
- •13.9. Пакеты.
- •13.10. Объекты.
- •Литература
1.3. Системы управления базами данных.
СУБД – это программный комплекс, обеспечивающий функционирование базы данных. Он отвечает за сохранность, безопасность, целостность, взаимное соответствие данных и обеспечивает доступ пользователей к данным.
Дадим строгое определение СУБД.
Система управления базами данных представляет собой совокупность языковых и программных средств, предназначенных для создания, ведения и совместного использования БД многими пользователями.
Первые СУБД появились в конце 60-х – 70-х годов прошлого столетия. Они ориентировались на мэйнфреймы и поддерживали иерархическую и сетевую модели. В процессе своего дальнейшего развития СУБД постоянно совершенствовались – возникали новые подходы к хранению и обработке данных, организации процесса разработки баз данных и приложений, разрабатывались новые модели данных. Более подробно структура и функции СУБД будут рассмотрены ниже.
2. Классификация моделей данных.
2.1. Моделирование данных.
Модель данных – это некоторая абстракция, которая, будучи приложима к конкретным данным, позволяет пользователям и разработчикам трактовать их уже как информацию, то есть как сведения, содержащие не только данные, но и взаимосвязи между ними.
Возможны следующие связи между объектами предметной области и соответственно описывающими их данными: “один к одному”; “один ко многим”; “многие к одному”; “многие ко многим”. Связь “один к одному” (1:1) означает, что каждому экземпляру объекта А может соответствовать только один экземпляр объекта В и наоборот. Связь “один ко многим” (1:М) означает, что могут существовать экземпляры объекта А, которым соответствует более одного экземпляра объекта В, но каждому экземпляру объекта В может соответствовать только один экземпляр объекта А. Связь “многие к одному” (М:1) имеет место, когда каждому экземпляру объекта А ставится в соответствие ровно один экземпляр объекта В, но экземпляру объекта В могут соответствовать более одного экземпляра объекта А. И наконец, связь “многие ко многим” (М:N) означает, что нескольким экземплярам объекта А могут соответствовать несколько экземпляров объекта В.
Представление информации в базе данных осуществляется в рамках определенных ограничений, обусловленных используемой информационной системой, ресурсами, выбранной логической и физической структурами организации данных. Прежде всего, эти ограничения определяют допустимые типы данных и допустимые связи между данными. Ограничения касаются и операций, которые могут выполняться над данными и связями. Существует и множество ограничений, обуславливающих целостность базы данных. Целостность базы данных означает, что в ней содержится полная, непротиворечивая и адекватно отражающая предметную область информация. То есть взаимную согласованность отдельных фрагментов данных и их корректность. Согласованность означает, что все порции данных должны быть единообразно смоделированы и включены в систему. Корректность – если они достоверны, точны и значимы. Множество допустимых типов данных и связей между ними, множество допустимых операций над данными и связями, множество ограничений целостности в совокупности определяют используемую модель данных. Рассмотрим существующие модели данных.