- •Предметная область. Интеграция данных. Достоинства. Проблемы.
- •Интеграция данных Достоинства интеграции данных
- •Проблемы, связанные с интеграцией данных
- •2. Функции администратора базы данных.
- •Защита данных от разрушения при сбоях оборудования.
- •Защита от некорректных обновлений.
- •Защита данных от несанкционированного доступа.
- •Обеспечение коллективного доступа к данным.
- •Пользователи информационной системы
- •Уровни представления информационной системы.
- •Начальный уровень
- •Инфологический уровень
- •Концептуальный уровень
- •Внутренний уровень
- •Структура данных сетевой модели
- •Способы упорядочения подчиненных записей
- •Режим включения подчиненных записей
- •Режим исключения подчиненных записей.
- •Операции над данными в сетевой модели.
- •Ограничения целостности в сетевой модели.
- •4.. Иерархические базы данных.
- •Структура данных иерархической модели
- •Операции над данными в иерархической модели
- •Ограничения целостности в иерархической модели.
- •5 Реляционные базы данных.
- •6… Цели проектирования баз данных
- •Универсальные отношения
- •7..Проблемы, связанные с использованием единственного отношения
- •Проблема вставки.
- •Проблема обновления.
- •Проблема удаления.
- •Функциональные зависимости
- •8..Нормальные формы отношений Первая нормальная форма
- •Вторая нормальная форма
- •Третья нормальная форма
- •Третья усиленная форма или нормальная форма Бойса–Кодда (нфбк)
- •Декомпозиция отношений
- •9..Избыточные функциональные зависимости. Правила вывода
- •Правило 1. Транзитивные зависимости
- •Правило 2. Корректные, но избыточные зависимости
- •Правило 3. Объединение функциональных зависимостей
- •Правило 4. Декомпозиция функциональных зависимостей
- •Правило 5. Псевдотранзитивность
- •Пример удаления избыточных зависимостей с помощью правил вывода
- •Общая схема проектирования баз данных методом декомпозиции
- •10.Семантическое моделирование или проектирования баз данных методом “Сущность-связь”
- •Сущности и связи
- •Диаграмма еr–экземпляров:
- •Диаграмма er–типа:
- •Терминология метода “Сущность-связь”
- •11.. Степень связи
- •Класс принадлежности сущности
- •Примеры диаграмм er-типа связей степени 1:1.
- •Примеры диаграмм er-типа связей степени 1:n и n:1
- •Примеры диаграмм er-типа связей степени m:n
- •Порядок или мерность связи
- •12.. Бинарные связи со степенью связи 1: 1
- •Правило 1.
- •Правило 2.
- •Правило 3.
- •Бинарные связи со степенью связи 1: n
- •Правило 4.
- •Правило 5.
- •13.. Бинарные связи степени m:n.
- •Правило 6.
- •Пример проектирования с использованием связей степенью м:n
- •Связи более высокого порядка
- •Правило 7
- •Пример проектирования с использованием связей более высокого порядка
- •Использование ролей
- •Правило 8
- •Пример проектирования с использованием ролей
- •14..Ограничения реляционных баз данных.
- •Недостатки реляционных баз данных
- •Системы управления базами данных следующего поколения
- •Абстрактные типы данных
- •Генерация систем баз данных, ориентированных на приложения
- •Ориентация на расширенную реляционную модель
- •Расширенная реляционная модель
- •15.. Объектно-ориентированные субд.
- •Объектно-ориентированная парадигма.
- •Недостатки объектно-ориентированных баз данных:
- •Стандарт odmg.
- •Объектная модель
- •Язык описания объектов
- •Язык объектных запросов
- •Связывание с оо-языками
- •Объектные расширения реляционных субд. Язык sql-3.
6… Цели проектирования баз данных
Наиболее важными целями проектирования являются:
Хранение всех необходимых данных в БД, т.е. централизация данных;
Исключение избыточности данных;
Уменьшение количества отношений в БД;
Нормализация отношений для решения проблем, связанных с обновлением или удалением данных.
Первым шагом в процессе проектирования является определение перечня атрибутов (столбцов), которые должны храниться в БД.
На втором шаге принимается решение о том, сколько будет отношений и какие атрибуты будут храниться в каких отношениях.
Необходимо различать дублирование данных и дублирование с избыточностью:
Таблица 6.7 Пример дублирования данных. | ||
Табельный номер |
Номер лаборатории |
В таблице 6.7 Числа 12 и 17 дублируются, но не избыточны. |
287 |
12 | |
314 |
17 | |
07 |
12 | |
354 |
17 |
Таблица 6.8 Пример избыточного дублирования данных. | |||
Табельный номер |
Номер лаборатории |
Телефон лаборатории |
В таблице 6.8 телефон лаборатории, как видно, дублируется, и это уже избыточное дублирование. |
287 |
12 |
2-17 | |
314 |
17 |
4-41 | |
007 |
12 |
| |
354 |
17 |
|
Третий шаг – устранение избыточности. Полученный файл после устранения избыточности следует считать неудовлетворительным. Во-первых, пустых полей в файле следует избегать, в такой структуре хранения для записей необходимо иметь процедуру поиска. Во-вторых, могут возникнуть серьезные проблемы с удалением информации. Если удалить работника 287, то исчезнет и соответствующий номер лаборатории.
Лучший способ устранения – разбиение отношения
“Служащий – лаборатория – телефон” (таблица 6.8) на два:
“Лаборатория – телефон” (таблица 6.9)
“Служащий – лаборатория” (таблица 6.10)
Таблица 6.9 “Лаборатория-телефон”. |
Таблица 6.10 “Служащий-лаборатория”. | |||||
Номер лаборатории |
Телефон лаборатории |
|
Табельный номер |
Номер лаборатории |
| |
12 |
2-17 |
287 |
12 |
| ||
17 |
4-41 |
314 |
17 |
| ||
|
007 |
12 |
| |||
354 |
17 |
|
Разбиение отношений на два или несколько – рабочая процедура проектирования.
Разбиение отношения на два или более приводит к увеличению числа файлов, хранящихся в БД, что порождает проблемы по обработке данных, в данном случае – замедление.
Некоторые отношения порождают серьезные проблемы по удалению и обновлению информации. Проектировщик БД должен уметь находить такие отношения и “нормализовать” их. Нормализация осуществляется путем разбиения отношения на два или более мелких отношения по определенным правилам.
Универсальные отношения
Отношение, которое включает в себя все атрибуты и содержащее все данные, предполагаемые хранить в БД, называется универсальным отношением.
Для небольших БД универсальное отношение может использоваться в качестве основного пункта при проектировании БД.
Предположим, что требуется разработать БД для начальника отдела.
Первый шаг проектирования – состоит в определении всех атрибутов, значения которых требуется хранить в БД. Эта информация берется у начальника отдела в процессе обсуждения будущей БД. В результате обсуждения выяснилось, что БД предназначена для подведения результатов работы каждого сотрудника отдела. Определился следующий набор атрибутов:
Сном |
номер сотрудника (целое значение, уникальное), |
Сфам |
фамилия сотрудника (строковое значение), |
Лном |
номер лаборатории, в которой трудится данный сотрудник, |
Тном |
рабочий телефон сотрудника, |
Проект |
номер проекта, в разработке которого участвует сотрудник, |
Квартал |
период времени, в течение которого сотрудник участвовал в разработке проекта, |
Вклад |
численная характеристика, отражающая количество и качество работы с сотрудника в данном проекте и в данном квартале. |
Второй шаг – составление таблицы по предварительно записанному набору атрибутов.
Таблица 6.11 Информация выбранная для хранения в базе данных | |||||||
Сном |
Сфам |
Тном |
Лном |
Проект |
Квартал |
Вклад |
|
289 |
Иванов |
5-17 |
25АП |
РКТ14 |
1990.3 |
3 |
|
|
|
|
|
Зенит |
1990.3 |
5 |
|
|
|
|
|
ВКТ14 |
1990.4 |
2 |
|
|
|
|
|
ВТА2 |
1990.4 |
4 |
|
315 |
Николаев |
8-29 |
4КТ |
ВКТ14 |
1990.3 |
6 |
|
|
|
|
|
ВТА8 |
1990.4 |
7 |
|
|
|
|
|
ВКТ14 |
1990.4 |
8 |
|
429 |
Андреев |
5-17 |
25АМ |
Зенит |
1990.3 |
2 |
|
|
|
|
|
ОТР6 |
1990.4 |
7 |
|
|
|
|
|
ВКТ14 |
1990.4 |
4 |
|
559 |
Зайцев |
4-85 |
14ММ |
ОВ77 |
1990.3 |
6 |
|
Хотя данные связаны в таблицу 6.11, она не может быть использована в реляционных базах данных, т.к. строки её содержат вектора значений атрибутов, что недопустимо для отношений. Такую таблицу, однако, очень легко преобразовать в отношение путем декомпозиции.
Таблица 6.12 Универсальное отношение базы данных “Начальник отдела” | |||||||
Сном |
Сфам |
Тном |
Лном |
Проект |
Квартал |
Вклад |
|
289 |
Иванов |
5-17 |
25АП |
РКТ14 |
1990.3 |
3 |
|
289 |
Иванов |
5-17 |
25АП |
Зенит |
1990.3 |
5 |
|
289 |
Иванов |
5-17 |
25АП |
ВКТ14 |
1990.4 |
2 |
|
289 |
Иванов |
5-17 |
25АП |
ВТА2 |
1990.4 |
4 |
|
315 |
Николаев |
8-29 |
4КТ |
ВКТ14 |
1990.3 |
6 |
|
315 |
Николаев |
8-29 |
4КТ |
ВТА8 |
1990.4 |
7 |
|
315 |
Николаев |
8-29 |
4КТ |
ВКТ14 |
1990.4 |
8 |
|
429 |
Андреев |
5-17 |
25АП |
Зенит |
1990.3 |
2 |
|
429 |
Андреев |
5-17 |
25АП |
ОТР6 |
1990.4 |
7 |
|
429 |
Андреев |
5-17 |
25АП |
ВКТ14 |
1990.4 |
4 |
|
559 |
Зайцев |
4-85 |
14ММ |
ОВ77 |
1990.3 |
6 |
|
В таблице 6.12 первичным ключом является значение трех полей Сном-Проект-Квартал. Полученная таблица – экземпляр правильного отношения.