
- •1. Файловые системы и файловые базы данных. Особенности и основные характеристики.
- •2. Понятия базы данных, банка данных. Классификация баз данных.
- •3. Субд. Классификация субд. Технология использования субд
- •4. Основные функции субд. Типовая организация субд.
- •5.Субд в многопользовательских системах. Архитектура многопользовательских субд (с телеобработкой, файл-серверные, клиент-серверные). Субд в многопользовательских системах
- •6.ОбязанностиАдминистратора базы данных.
- •7. Уровни абстракции в субд.
- •8. Общие сведения о терминологии баз данных (предметная область, объекты, атрибуты, ключи, связи между объектами)
- •9. Модели данных (сетевая, иерархическая, реляционная).
- •10. Основные понятия реляционных баз данных (тип данных, домен, атрибут, кортеж, первичный ключ, отношение).
- •11. Операции над данными (включить, удалить, обновить, объединение, пересечение, вычитание, декартово произведение, выборка, проекция, соединение, деление).
- •Специальные реляционные операторы
- •Операции над множествами
- •12. Основные этапы проектирования баз данных.
- •13. Двенадцать правил Кодда, характеризующих реляционную субд.
- •14. Понятие нормальных форм в отношении. Особенности приведения отношений к 1nf, 2nf, 3nf.
- •2Нф (Вторая Нормальная Форма)
- •3Нф (Третья Нормальная Форма)
- •15. Нормальные формы более высоких порядков
14. Понятие нормальных форм в отношении. Особенности приведения отношений к 1nf, 2nf, 3nf.
При разработке БД выделяют уровни моделирования: Предметная область, Модель предметной области, Логическая модель данных, Физическая модель данных, Собственно БД и приложения.
Качественная БД должна удовлетворять условиям:
Адекватность БД предметной области
Легкость разработки и сопровождения БД
Скорость выполнения операций обновления данных (вставка, обновление, удаление)
Скорость выполнения операций выборки данных
Первая нормальная форма (1НФ (Первая Нормальная Форма)) - это обычное отношение. Согласно нашему определению отношений, любое отношение автоматически уже находится в 1НФ. Отношение в 1НФ обладает свойствами:
В отношении нет одинаковых кортежей.
Кортежи не упорядочены.
Атрибуты не упорядочены.
Все значения атрибутов атомарны.
Недостатки 1НФ: отношения не удовлетворяют выбранным критериям – имеются аномалии обновления, для поддержания целостности БД требуется разработка сложных триггеров.
2Нф (Вторая Нормальная Форма)
Отношение R находится во второй нормальной форме (2НФ) тогда и только тогда, когда отношение находится в 1НФ и нет неключевых атрибутов, зависящих от части сложного ключа. (Неключевой атрибут - это атрибут, не входящий в состав никакого потенциального ключа).
Замечание. Если потенциальный ключ отношения является простым, то отношение автоматически находится в 2НФ.
Недостатки 2НФ: Отношения "лучше", чем в 1НФ, но остается часть аномалий обновления и требуются триггеры, поддерживающие целостность БД.
3Нф (Третья Нормальная Форма)
Отношение R находится в третьей нормальной форме (3НФ) тогда и только тогда, когда отношение находится в 2НФ и все неключевые атрибуты взаимно независимы (ни один из них не является функционально зависимым от другого).
Достоинства отношения в 3НФ: нет аномалий обновления, требуются только стандартные триггеры для поддержания ссылочной целостности.
Переход от ненормализованных отношений к отношениям в 3НФ может быть выполнен при помощи алгоритма нормализации. Алгоритм нормализации заключается в последовательной декомпозиции отношений для устранения функциональных зависимостей атрибутов от части сложного ключа (приведение к 2НФ) и устранения функциональных зависимостей неключевых атрибутов друг от друга (приведение к 3НФ).
Алгоритм нормализации описывается следующим образом.
Шаг 1 (Приведение к 1НФ). На первом шаге задается одно или несколько отношений, отображающих понятия предметной области. По модели предметной области выписываются обнаруженные функциональные зависимости. Все отношения автоматически находятся в 1НФ.
Шаг 2 (Приведение к 2НФ). Если в некоторых отношениях обнаружена зависимость атрибутов от части сложного ключа, то проводим декомпозицию этих отношений на несколько отношений следующим образом: те атрибуты, которые зависят от части сложного ключа выносятся в отдельное отношение вместе с этой частью ключа. В исходном отношении остаются все ключевые атрибуты.
Шаг 3 (Приведение к 3НФ). Если в некоторых отношениях обнаружена зависимость некоторых неключевых атрибутов от других неключевых атрибутов, то проводим декомпозицию этих отношений следующим образом: те неключевые атрибуты, которые зависят от других неключевых атрибутов выносятся в отдельное отношение. В новом отношении ключом становится детерминант функциональной зависимости.
Корректность процедуры нормализации (декомпозиция без потери информации) доказывается теоремой Хеза.