
- •1. Понятие базы данных. Основные определения
- •2. История развития представлений о базах данных
- •3.Архитектура типичной субд
- •4.Трехуровневая архитектура anci-sparc
- •5.Модели ранних субд. Иерархические системы
- •6.Модели данных ранних субд. Сетевые системы
- •7.Модели баз данных. Модель «сущность - связь». Объектно – ориентированная и объектно – реляционная модели данных.
- •8.Модели баз данных. Xml – модель данных. Многомерная модель данных.
- •9.Жизненный цикл базы данных.
- •10.Этапы проектирования баз данных.
- •11. Проектирование системы с базой данных.
- •12.Введение в реляционные базы данных. Реляционная модель данных
- •13.Реляционная модель данных. Свойства отношений
- •14.Реляционная модель данных. Виды отношений.
- •15.Реляционная модель данных. Реляционная целостность данных.
- •16.Реляционная алгебра. Основные определения
- •17.Реляционная алгебра. Традиционные операции над множествами
- •18.Реляционная алгебра. Специальные реляционные операции
- •19.Реляционная алгебра. Соединения. Зависимость реляционных операторов.
- •20.Проектирование реляционных баз данных. Аномалии базы данных
- •21.Проектирование реляционных баз данных. Функциональные зависимости
- •22.Проектирование реляционных баз данных. Правила функциональной зависимости
- •23. Проектирование реляционных баз данных. Замыкания и ключи
- •24. Проектирование реляционных баз данных. Нормальные отношения
- •25. Проектирование реляционных баз данных. Алгоритм приведения семантической модели к пятой нормальной форме
- •26.Структуры хранения и методы доступа к данным.
- •27.Индексирование
- •28. Структуры хранения и методы доступа к данным
- •29.Инфологическое моделирование данных. Объекты. Типы объектных множеств
- •30. Инфологическое проектирование. Отношения. Кардинальность. Степень участия
- •31. Инфологическое моделирование данных. Атрибуты. Виды атрибутов. Ключи
- •32. Инфологическое проектирование. Наследование. Составные объекты. Слабые объектные множества
- •33. Инфологическое проектирование. Принципы проектирования. Моделирование ограничений
- •34. Инфологическое моделирование данных. Проектирование транзакций
- •35. Концептуальное моделирование данных. Проектирование транзакций. Принципы проектирования
- •36. Инфологическое моделирование данных. Метод нормальных форм
- •37. Средства автоматизированного проектирования баз данных. Power Designer
- •38 Проектирование баз данных на логическом и физическом уровне
7.Модели баз данных. Модель «сущность - связь». Объектно – ориентированная и объектно – реляционная модели данных.
Модель сущность-связь (ER-модель) (англ. entity-relationship model, ERM) — модель данных, позволяющая описывать концептуальные схемы предметной области.
ER-модель используется при высокоуровневом (концептуальном) проектировании баз данных. С её помощью можно выделить ключевые сущности и обозначить связи, которые могут устанавливаться между этими сущностями.
Во время проектирования баз данных происходит преобразование ER-модели в конкретную схему базы данных на основе выбранной модели данных (реляционной, объектной, сетевой или др.).
ER-модель представляет собой формальную конструкцию, которая сама по себе не предписывает никаких графических средств её визуализации. В качестве стандартной графической нотации, с помощью которой можно визуализировать ER-модель, была предложена диаграмма сущность-связь (ER-диаграмма) (англ. entity-relationship diagram, ERD).
Основные преимущества ER-моделей:
наглядность;
модели позволяют проектировать базы данных с большим количеством объектов и атрибутов;
ER-модели реализованы во многих системах автоматизированного проектирования баз данных (например, ERWin).
Основные элементы ER-моделей:
объекты (сущности);
атрибуты объектов;
связи между объектами.
Нотации:
Нотация Питера Чена
Простая ER-модель MMORPG с использованием нотации Питера Чена
Множества сущностей изображаются в виде прямоугольников, множества отношений изображаются в виде ромбов. Если сущность участвует в отношении, они связаны линией. Если отношение не является обязательным, то линия пунктирная. Атрибуты изображаются в виде овалов и связываются линией с одним отношением или с одной сущностью.[3]
Crow's Foot
Пример отношения между сущностями согласно нотации Crow's Foot
Данная нотация была предложена Гордоном Эверестом (англ. Gordon Everest) под названием Inverted Arrow («перевёрнутая стрелка»), однако сейчас чаще называемая Crow's Foot («воронья лапка») или Fork («вилка»).[4]
Согласно данной нотации, сущность изображается в виде прямоугольника, содержащего её имя, выражаемое существительным.[5] Имя сущности должно быть уникальным в рамках одной модели. При этом, имя сущности — это имя типа, а не конкретного экземпляра данного типа. Экземпляром сущности называется конкретный представитель данной сущности.
Объектно-ориентированная база данных — база данных, в которой данные оформлены в виде моделей объектов, включающих прикладные программы, которые управляются внешними событиями. Результатом совмещения возможностей (особенностей) баз данных и возможностей объектно-ориентированных языков программирования являются Объектно-ориентированные системы управления базами данных (ООСУБД). ООСУБД позволяет работать с объектами баз данных также, как с объектами в программировании на ООЯП. ООСУБД расширяет языки программирования, прозрачно вводя долговременные данные, управление параллелизмом, восстановление данных, ассоциированные запросы и другие возможности.
В манифесте ООБД (Atkinson et al., 1989) предлагаются обязательные характеристики, которым должна отвечать любая ООБД. Их выбор основан на 2 критериях: система должна быть объектно-ориентированной и представлять собой БД.
Три класса характеристик:
Обязательные.
Необязательные. (Множественное наследование, Проверка типов, Распределение, Проектные транзакции)
Открытые — позволяют пользователю выбирать свойства. (Парадигмы программирования (процедурное, декларативное), Система представления, Система типов, Однородность. Реализация — язык программирования — интерфейс.)
СУБД
Долговременное хранение
Использование внешней памяти
Параллелизм
Восстановление
Нерегламентированные запросы