Похожие презентации:
Лекция 5. Тема 2.1. Концептуальное и логическое проектирование баз данных. Даталогические модели
1. Базы данных
«КАЗАНСКИЙ НАЦИОНАЛЬНЫЙ ИССЛЕДОВАТЕЛЬСКИЙТЕХНИЧЕСКИЙ УНИВЕРСИТЕТ ИМ. А.Н. ТУПОЛЕВА-КАИ»
(КНИТУ-КАИ)
ИНСТИТУТ КОМПЬЮТЕРНЫХ ТЕХНОЛОГИЙ И ЗАЩИТЫ ИНФОРМАЦИИ
КАФЕДРА АВТОМАТИЗИРОВАННЫХ СИСТЕМ ОБРАБОТКИ ИНФОРМАЦИИ И УПРАВЛЕНИЯ
Базы данных
Гаптуллазянова Гульшат Ильдусовна
Ст. преподаватель каф. АСОИУ
Казань 2022
2. Лекция 5. Тема 2.1. Концептуальное и логическое проектирование баз данных. Даталогические модели.
3.
Этап 3. Выбор модели данных и СУБДОсновные критерии выбора СУБД:
- модель данных,
- функциональные возможности,
- требования к обеспечению,
- производительность,
- надежность,
- простота установки/работы/сопровождения,
- цена,
- наличие поддержки и др.
Модель данных определяет правила, в соответствии с которыми
структурируются данные. Основные логические модели, поддерживаемые
СУБД: иерархические, сетевые, реляционные, объектно-ориентированные.
Наиболее простая и популярная - реляционная модель.
4.
Иерархическая модель данныхОсновные особенности (ограничения) иерархической модели БД:
1. Иерархическая модель (ИМД) представляет собой связный граф в виде
.
дерева
Уровень 1
Корень
1
Уровень 2
Уровень 3
Исходный
2
4
5
3
6
7
8
Порожденные
5.
Иерархическая модель данных2. Иерархия начинается с корня. Доступ к любому порожденному узлу
осуществляется только от исходного узла.
Иерархия представления информации об. отделах и его служащих:
Базовые конструкции в ИМД (все конструкции именованные):
поле; сегмент (тип запись); база данных (тип дерево).
6.
Иерархическая модель данныхПоле - минимальная неделимая единица информации, например,
фамилия служащего.
Сегмент данных - это совокупность полей для описания некоторого
класса объектов, например сегмент «Служащие».
Сегменты объединяются в древовидный граф без циклов и петель.
Каждое дерево называется физической БД.
Различают тип сегмента и экземпляры сегмента. Например, тип
сегмента «Служащие», а экземпляры – каждый конкретный служащий.
Связи между данными реализованы на физическом уровне.
7.
Иерархическая модель данныхДостоинство ИМД – простота и естественность отображения
взаимосвязи между объектами.
Недостатки ИМД:
1. Модель требует знания путей доступа к данным по ветвям дерева
при разработке процедур обработки данных.
2. Модель асимметрична - основной недостаток иерархического
подхода.
3. Неоднозначность моделирования связей типа «М : N».
4. Аномалии выполнения операций включения, удаления,
обновления.
8.
Сетевая модель данныхСетевая модель (СМД) является более общей структурой, по
сравнению с ИМД.
Основные особенности сетевой модели БД:
любой элемент может быть связан с любым элементом, любой узел
может быть как исходным, так и порожденным, любой узел может иметь
произвольное количество исходных и порожденных узлов.
1
4
1
2
3
1
2
2
3
3
4
9.
Сетевая модель данныхБазовые конструкции СМД:
- элемент данных;
- агрегат данных;
- запись (тип запись);
- набор данных (тип набор связей);
- база данных.
Элемент – минимальная единица информации, доступная
пользователю.
Агрегат данных – это объединение элементов данных, к которому
можно обращаться как к единому целому, например, адрес.
Запись – совокупность элементов или агрегатов данных для описания
некоторого класса объектов ПО.
10.
Сетевая модель данныхСвязи между данными также реализованы на физическом уровне.
Вводится тип записи «набор связей».
Набор – это двухуровневый граф, связывающий два типа записей,
отношением «1:М». Между двумя типами записей может быть задано
любое количество наборов, каждый набор определяет иерархическую
связь между ними.
Каждый экземпляр записи набора состоит из одного экземпляра
записи владельца набора и одного или более экземпляров подчиненных
ему записей членов набора.
Пример сетевой структуры - структура для представления
информации об изделиях, деталях и составе изделий.
11.
Сетевая модель данныхСвязь типа «М:N» преобразуется созданием двух наборов для связи
изделий и деталей:
Изделие
Изделие
=
Деталь
Деталь
Владелец
набора
+
Деталь
1-ый набор –
состав изделия
Изделие
Члены
набора
2-ой набор –
вхождение детали в
состав изделия
База данных – поименованная совокупность экземпляров записей
различного типа и экземпляров наборов, представляющих связи между
записями.
Примеры отечественных СУБД СМД: СИОД, СЕТОР, СЕТЬ, Адабас
и др.
12.
Сетевая модель данныхДостоинства СМД:
- позволяет моделировать отношения типа «М:N»;
- более симметрична.
Основной недостаток СМД – структуры для представления
данных значительно сложнее, чем в других моделях.
13.
Реляционная модель данныхОсновной структурой данных в реляционной модели (РМД) является
отношение, поэтому модель получила название реляционная (relation –
отношение).
В РМД данные организованы в таблицы, которые должны
удовлетворять определенным ограничениям, и могут рассматриваться как
отношения.
Табличное представление было предложено американским математиком
Э.Ф. Коддом в начале 70-х годов и реализовано фирмой IBM в начале 80-х.
Отношение «Служащие» – таблица «Служащие»
Таб
_номер
345
Отде Фамилия
л
САПР Иванов
428
АСУ
576
САПР Сидоров
Петров
Дата_р Зарпла
ожд
та
11.05.7
инженер
9500
4
программи 21.12.6
12000
ст
5
программи 17.06.7
12000
ст
0
Должность
14.
Реляционная модель данныхОграничения реляционной модели - свойства таблиц:
1. Каждая таблица уникально именована, представляет один реальный
объект или определяет связь между объектами.
2. Каждый элемент таблицы должен быть атомарным, т.е. неделимым.
3. В таблице не может быть двух одинаковых строк.
4. Каждый столбец уникально именован. Элементы одного столбца
должны быть однородными, извлечены из одного домена.
5. В операциях с таблицами строки и столбцы могут просматриваться в
любой последовательности.
6. Каждая таблица должна иметь первичный ключ. Ключ позволяет найти
единственную строку в таблице.
Модель имеет серьезную теоретическую основу – теория множеств и
математическая логика.
15.
Реляционная модель данныхОсновные понятия реляционной модели:
- тип данных, атомарное значение;
- домен;
- атрибут;
- кортеж;
- ключ;
- отношение.
Понятие типа данных эквивалентно понятию типа данных в
алгоритмических языках. Атомарное значение данных – это наименьшая
неделимая единица данных в РМД.
Домен – это потенциальное множество допустимых атомарных
значений одного и того же типа.
Атрибут – это именованный столбец отношения, значения элементов
столбца должны быть из одного домена.
16.
Реляционная модель данныхПусть дана совокупность доменов D1, D2,…,DN.
Кортеж отношения – это набор из N значений, расположенных в строго определенном порядке
(d1, d2,…,dN), таких, что d1 принадлежит D1, d2 принадлежит D2, а dN принадлежит DN. Количество
элементов в кортеже называется размерностью.
В РМД используются формальные реляционные термины, которые могут заменяться
неформальными.
Соответствие неформальных и формальных терминов РМД
Формальный реляционный термин
Отношение
Кортеж отношения
Мощность отношения,
кардинальное число
Атрибут отношения
Степень, арность отношения
Первичный ключ отношения
Домен
Схема отношения
Неформальный термин
Таблица
Строка, запись
Количество строк
Столбец, поле
Количество столбцов
Уникальный идентификатор строки
Общая совокупность допустимых
значений некоторого столбца
Строка заголовков столбцов таблицы
Полное декартово произведение доменов D1 x D2 x…x DN – это множество всевозможных
различных кортежей N-арности, где каждый элемент кортежа берется из своего домена.
17.
Реляционная модель данныхСхема отношения «Служащие»:
Служащие(Таб_номер, Отдел, Фамилия, Должность, Дата_рожд, Зарплата)
В общем виде схема отношения записывается как
R(a1, a2, ..., aN), где аi – имя i-ого атрибута отношения R.
Реляционная БД – это множество взаимосвязанных отношений:
R1(a11, a12, ..., a1n)
R2(a21, a22, ..., a2k)
…
Rm(am1, am2, ..., aml)
18.
Реляционная модель данныхПервичный ключ отношения (ПК)
- это атрибут или набор атрибутов,
однозначно определяющий каждый кортеж отношения и обеспечивающий
уникальность строк.
Ключей, однозначно определяющих кортеж отношения, может быть несколько. Их
называют возможными ключами, но выбирают один из них и называют первичным
ключом отношения.
Например, отношение «Служащие»:
Служащие (Таб№, Фамилия, Паспорт, ИНН, Страх_Свид)
4 возможных ключа:
Таб№, Паспорт, ИНН, Страх_Свид.
Первичный ключ выбирается в зависимости от предметной области, например, в
налоговой инспекции - ИНН, а на предприятии - Таб№.
Ключ может быть
- простой или сложный, составной;
- естественный или искусственный, суррогатный.
Свойства ключа - уникальность и минимальность.
19.
Реляционная модель данных. Связывание отношений.В отличие от иерархической и сетевой моделей связи между
отношениями логические и поддерживаются неявно.
Объекты и связи между ними представляются в единой форме, в виде
таблиц.
В РМД поддерживаются бинарные связи типа «1:1», «1:M», «M:1». В
каждой связи одно отношение выступает как основное (со стороны 1), а
другое как подчиненное (со стороны М). Это означает, что один кортеж
основного отношения может быть связан с несколькими кортежами
подчиненного отношения.
Связь поддерживается связующим набором атрибутов, в основном
отношении это первичный ключ (primary key, PK), который должен
присутствовать в подчиненном отношении, как вторичный ключ. Этот
набор атрибутов в подчиненном отношении называют внешним ключом
(foreign key, FK).
20.
Реляционная модель данных. Связывание отношений.Схема основного отношения «Группа»:
PK
Группа
(№_группы, Специальность)
Схема подчиненного отношения «Студенты»:
PK
FK
Студенты (№_зачетной_книжки, Фамилия, Дата_рождения, №_группы)
Внешние ключи используются для установления логических связей между
отношениями. Первичный ключ определяет единственный кортеж в основном
отношении, а вторичный ключ – множество кортежей в подчиненном отношении,
которые связаны с одним кортежем основного отношения.
Примеры СУБД РМД: DBase, FoxPro, Clipper, Paradox, MS Access, Informix, Oracle и
др.
21.
Реляционная модель данных. Связывание отношений.Любая структура данных может быть сведена к двумерным таблицам.
Например, преобразование иерархической МД «Отделы и служащие» в
реляционную БД:
- для каждого узла древовидной структуры создается отдельное отношение, т.е.
создаются отношения «Отделы», «Служащие», «Трудовая_деятельность», «Дети»,
«Проекты».
- в каждое отношение, соответствующее подчиненному узлу, добавляется
идентификатор исходного узла.
В результате получим реляционную БД, состоящую из следующих отношений:
Отделы (Номер_отдела, Наименование)
Служащие (Таб_номер, Фамилия, Зарплата, Номер_отдела)
Трудовая_деятельность (Номер_приказа, Содержание_приказа, Таб_номер)
Дети (Имя_ребенка, Таб_номер, Дата_рождения)
Проекты (Шифр_Проекта, Наименование, Дата_завершения, Номер_отдела)
22.
Реляционная модель данных. Связывание отношений.Достоинства реляционной модели:
– простота и наглядность модели;
– однородность структур для представления объектов и связей (в виде
отношений), упрощает программные и языковые средства СУБД;
– наличие стандартизованного высокоуровневого языка запросов к
БД;
– наличие специальных средств ускоренного доступа к информации
(индексы, хэширование);
– возможность приведения других моделей к реляционной модели.
Базы данных