Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
шпорочки на обдз.doc
Скачиваний:
31
Добавлен:
13.04.2015
Размер:
180.74 Кб
Скачать

22. Нормализация данных. Цель нормализации, избыточность данных и аномалии обновления.

Нормализация предназначена для приведения структуры базы данных к виду, обеспечивающему минимальную логическую избыточность, и не имеет целью уменьшение или увеличение производительности работы или же уменьшение или увеличение физического объёма БД. Конечной целью нормализации является уменьшение потенциальной противоречивости хранимой в БД информации. Общее назначение процесса нормализации заключается в следующем:  - исключение некоторых типов избыточности;  - устранение некоторых аномалий обновления;  - разработка проекта базы данных, который является достаточно «качественным» представлением реального мира, интуитивно понятен и может служить хорошей основой для последующего расширения;  - упрощение процедуры применения необходимых ограничений целостности.  Устранение избыточности производится, как правило, за счёт декомпозиции отношений таким образом, чтобы в каждом отношении хранились только первичные факты (то есть факты, не выводимые из других хранимых фактов). 23. Денормализация.

Денормализация (англ. denormalization) - намеренное приведение структуры базы данных в состояние, не соответствующее критериям нормализации, обычно проводимое с целью ускорения операций чтения из базы за счет добавления избыточных данных.  Устранение аномалий данных в соответствии с теорией реляционных баз данных требует, чтобы любая база данных была нормализована, то есть соответствовала требованиям нормальных форм (как минимум, первых трёх). Соответствие требованиям нормализации минимизирует избыточность базы данных и обеспечивает наибольшую теоретически доступную гибкость.  Однако нормализация вступает в противоречие с требованиями эффективности работы с базой данных. В результате нормализации целостные таблицы разбиваются на связанные ссылками наборы таблиц. Запрос к одной ненормализованной таблице как по времени, так и по памяти эффективнее запроса, выбирающего те же данные из группы связанных таблиц.  Вследствие этого в ситуациях, когда эффективность оказывается более важна, чем гибкость и объём БД, может проводиться денормализация - преобразование БД, при котором связанные ссылками таблицы объединяются для более эффективного доступа. При денормализации возможно возникновение аномалий в БД. 24. Функциональные зависимости.

Функциональная зависимость - это когда один столбец или множество столбцов функционально зависят от одного или множества столбцов. Если данное множество для Х определяет единственное множество значений для Y ( Х -> Y).  Множество значений первичного ключа однозначно определяет значение первичного ключа.

 Полная функциональная зависимость означает, что если атрибут B функционально зависит от некоторого значения атрибута A, то зависит от полного значения этого атрибута, а не какого-то его подмножества.  Если в зависимости АВ в группе А есть некий атрибут, при удалении которого эта зависимость сохраняется, то она называется частичной функциональной зависимостью. Т. о., как я и говорил, обратное соответствие атрибутов здесь не выполняется. 25. Процесс нормализации.

Нормализация - процесс совершенствования реляционной модели, подъем уровня организации. Основывается на на концепции функциональной зависимости.  Назначение процесса нормализации:  - Обеспечение целостности (приводит к исключению избыточности данных).  - Создание формальной модели, которая будет наиболее независима от специфики приложений.  - Снижение требований к объему памяти, вследствии чего идет повышение скорости поиска данных.  Ненормализованная таблица содержит группу или несколько групп повторяющихся данных. 26. Нормальные формы.

Отношение находится в первой нормальной форме, если все значения его атрибутов атомарны, то есть все значения на пересечении строки и столбца структурно неделимы (содержат только одно значение).  Отношение находится во второй нормальной форме, если оно находится в первой нормальной форме, а также в таблице отсутствует частичная зависимость (каждый неключевой атрибут полностью зависит от полного первичного ключа, то есть от всех атрибутов, из которых он состоит). Неключевой атрибут функционально полно зависит от составного ключа, если он функционально зависит от всего ключа вцелом, но не находится в функциональной зависимости от какого-либо атрибута, входящего в него.  Отношение находится в третьей нормальной форме, если оно находится во второй нормальной форме, а также отсуствует транзитивная зависимость. То есть, ни один неключевой атрибут не зависит ни от одного неключевого атрибута. А также каждый неключевой атрибут нетранзитивно зависит от первичного ключа. 27. Ограничения целостности.

См. вопрос 13

Ограничения целостности обладают следующими свойствами:

  • Ограничения целостности навязывают правила на уровне таблицы.

  • Ограничения целостности предотвращают удаления строк в случаях, если на эти строки в таблицы наложены ограничения.

  • Ограничения к таблице могут быть наложены на момент создания таблицы, а также после создания таблицы.

  • ORACLE автоматически генерирует имена ограниениям при их создании при помощи добавлению SYS_C уникального числа.