- •1. Основы построения баз данных 11
- •2. Модели представления данных 22
- •3. ДатАлогические модели данных 38
- •4. Семантическое моделирование 101
- •5. Базы данных в сетях 155
- •6.Современное состояние и 177
- •1. Основы построения баз данных
- •1.1. Архитектура системы баз данных
- •1.2. Жизненный цикл базы данных
- •Контрольные вопросы и задания
- •2. Модели представления данных
- •2.1. Классификация моделей данных
- •2.2. Разновидности инфологических моделей данных
- •Контрольные вопросы и задания
- •3. ДатАлогические модели данных
- •3.1. Иерархические модели
- •Между предками и потомками автоматически поддерживается целостность ссылок. Основное правило: никакой потомок не может существовать без своего родителя, у некоторых родителей не может быть потомков.
- •3.2. Сетевые модели
- •3.3. Реляционные модели
- •3.3.1. Основные понятия реляционной модели
- •3.3.2. Реляционная алгебра
- •3.3.3. Язык запросов по образцу qbe
- •3.3.4. Структурированный язык запросов sql
- •Основные инструкции языка sql
- •Values ("3110", "чп Иванов п.Т.", null)
- •3.4. Проектирование реляционных баз данных
- •Контрольные вопросы и задания
- •4. Семантическое моделирование
- •4.1. Объектно-ориентированное проектирование
- •4.1.1. Представление объектов
- •4.1.2. Описания классов
- •4.1.3. Атрибуты в odl
- •4.1.4. Связи в odl
- •4.1.5. Обратные связи
- •4.1.6. Множественность связей
- •4.1.7. Типы в odl
- •4.1.8. Проектирование с использованием odl
- •Правильность
- •Устранение избыточности
- •4.1.9. Подклассы
- •4.1.10. Множественное наследование в odl
- •4.1.11. Моделирование ограничений
- •Ссылочная целостность
- •Прочие ограничения
- •4.1.12. Переход от объектно-ориентированной модели к реляционной
- •4.2. Диаграммы "сущность-связь"
- •4.2.1. Компоненты диаграмм "сущность-связь"
- •4.2.2. Множественность e/r-связей
- •Многосторонние связи
- •4.2.3. Роли в связях
- •4.2.4. Атрибуты связей
- •4.2.5. Конвертирование многосторонних связей в бинарные
- •4.2.6. Проектирование e/r моделей
- •Простота
- •Типы элементов проекта
- •Определения подклассов
- •Наследование в e/r-модели
- •Моделирование ограничений
- •Ссылочная целостность
- •Слабые множества сущностей
- •Переход от e/r-диаграмм к реляционным проектам
- •Контрольные вопросы и задания
- •5. Базы данных в сетях
- •5.1. Архитектура "клиент-сервер"
- •5.2. Распределенные базы данных
- •5.3. Базы данных в Интернет
- •Контрольные вопросы и задания
- •Контрольные вопросы и задания
- •Информационные ресурсы Internet
- •Словарь терминов
- •Список сокращений
- •Темы рефератов
3.3. Реляционные модели
Реляционный подход формировался в 70-е гг. Публикация известной статьи Э.Ф. Кодда о реляционной модели данных ( в июне 1970 г.) стимулировала целый ряд математических исследований, направленных на изучение свойств реляционных баз данных, впоследствии приведших к созданию теории реляционных баз данных. В своих работах Э.Ф. Кодд описал математические основы реляционной модели. Основная идея Кодда состояла в том, чтобы применить концепцию математических отношений к моделированию данных. Отношение – это таблица из строк и столбцов. Наиболее важные характеристики реляционной модели заключаются в следующем:
Описание данных производится в соответствии с их естественной структурой, т. е. не требуется добавления дополнительных структур для машинного представления.
Обеспечивается независимость данных от их физического представления, от связей между данными и от соображений реализации.
Модель обеспечивает строгую математическую основу для интерпретации выводимости, избыточности и непротиворечивости отношений.
В это же время компания IBM начала разработку нескольких исследовательских проектов и программных продуктов-прототипов, нацеленных на создание реляционных СУБД. Благодаря успешному созданию исследовательских прототипов, реляционная теория стала активно продвигаться на практике. В 80-х гг. было создано большое количество коммерческих реляционных продуктов – от компаний IBM, Oracle Corp., Ingres Corp. и др. поставщиков. В настоящее время реляционные СУБД доминируют на рынке инструментальных средств разработки систем баз данных. Примерами наиболее известных из них являются следующие: dBaseIIIPlus, dBaseIV (фирма Ashton-Tate), DB2 (IBM), R:BASE (Microrim), FoxBase (Fox Software), Paradox (Borland), Access (Microsoft), Clarion (Clarion software), Oracle (Oracle) и др.
Реляционные системы продолжают совершенствоваться и их внутренняя природа значительно меняется. В связи с распространением объектного подхода в 90-е гг. появились объектно-реляционные модели. Расширяется и сфера применения реляционных систем. Подробнее современные направления технологий баз данных изложены в главе 6.
Примером развития реляционной модели является постреляционная модель. Классическая реляционная модель предполагает неделимость данных, постреляционная модель снимает ограничение неделимости данных, допускает многозначные поля, состоящие из множества значений. Набор значений многозначных полей считается отдельной таблицей, встроенной в основную таблицу (табл. 1).
Таблица 1
Постреляционная таблица
Наименование материала |
Тип |
Количество |
Ткань пальтовая |
п/ш
|
300 |
|
ч/ш |
200 |
Ткань костюмная |
п/э
|
150 |
|
п/ш |
500 |
На длину и количество полей в записях не накладывается требование постоянства, поэтому структура данных и таблиц имеет большую гибкость.
Достоинством постреляционной модели является возможность представления совокупности связанных реляционных таблиц одной постреляционной таблицей. Это обеспечивает высокую наглядность представления информации и повышение эффективности ее обработки. К недостаткам можно отнести сложность решения проблемы обеспечения целостности и непротиворечивости хранимых данных.
Постреляционная модель поддерживается, например, СУБД uniVers, Bubba, Dasdb.