- •Трехуровневая архитектура ansi/sparc систем управления базами данных (субд).
- •Реляционная модель данных.
- •Функции субд.
- •Компоненты субд.
- •Архитектура многопользовательских субд.
- •Операторы начальной алгебры э. Кодда.
- •Нормализация реляционных баз данных.
- •Концепции er-моделирования.
- •Общий обзор процедуры проектирования реляционных баз данных.
- •Объектно-ориентированные модели данных и субд.
Нормализация реляционных баз данных.
При проектировании базы данных в реляционной СУБД основной целью разработки логической модели данных является создание точного представления данных, связей между ними и требуемых ограничений. Для достижения этой цели прежде всего необходимо определить подходящий набор отношений. Метод, который используется для решения последней задачи, называется нормализацией (normalization). Нормализация представляет собой вариант восходящего подхода к проектированию базы данных, который начинается с установления связей между атрибутами. Однако нормализация также используется и при нисходящем подходе к проектированию базы данных, который начинается с выявления основных сущностей и связей, в качестве метода проверки корректности полученного результата.
Нормализация – это метод создания набора отношений с заданными свойствами на основе требований к данным, установленным в некоторой организации.
Процесс нормализации был впервые предложен Э. Ф. Коддом (1972). Нормализация часто выполняется в виде последовательности тестов для некоторого отношения с целью проверки его соответствия (или несоответствия) требованиям заданной нормальной формы. Таким образом, процесс нормализации основывается на концепции нормальных форм. Говорят, что отношение находится в некоторой нормальной форме, если удовлетворяет заданному набору условий. Например, отношение находится в первой нормальной форме или сокращенно в 1НФ тогда и только тогда, когда оно содержит только скалярные значения (или атомарные значения).
Основная цель проектирования реляционной базы данных заключается в группировании атрибутов в отношения так, чтобы минимизировать избыточность данных и таким образом сократить объем памяти, необходимый для физического хранения отношений, представленных в виде таблиц. Дело в том, что при работе с отношениями, содержащими избыточные данные, могут возникать проблемы, которые называются аномалиями обновления и подразделяются на аномалии вставки, удаления и модификации.
Ненормализованная форма – это таблица, содержащая одну или несколько повторяющихся групп данных.
Первая нормальная форма – это отношение, в котором все используемые домены содержат только скалярные значения.
Концепции er-моделирования.
Модель “сущность – связь” (Entity-Relationship model или ER-модель) представляет собой высокоуровневую концептуальную модель данных, которая была разработана Ченом (Chen) в 1976 году с целью упрощения задачи проектирования баз данных. Эта модель данных представляет собой набор концепций, которые описывают структуру базы данных и связанные с ней транзакции обновления и извлечения данных. Основная цель разработки высокоуровневой модели данных заключается в создании модели пользовательского восприятия данных и согласовании большого количества технических аспектов, связанных с проектированием базы данных. Следует особо подчеркнуть, что концептуальная модель данных не зависит от конкретной СУБД или аппаратной платформы, которая используется для реализации базы данных.
Основные концепции модели “сущность – связь” включают типы сущностей, типы связей и атрибуты.
Типы сущностей – это объекты или концепции, которые характеризуются на данном предприятии как имеющие независимое существование.
Основной концепцией ER-моделирования является тип сущности (entity type), который представляет множество объектов реального мира с одинаковыми свойствами. Тип сущности характеризуется независимым существованием и может быть объектом с физическим (или реальным) существованием или объектом с концептуальным (или абстрактным) существованием, как показано в табл. 11.1. При этом разные разработчики базы данных могут выделять разные сущности.
Сущность – это экземпляр типа сущности, который может быть идентифицирован уникальным образом.
Слабый тип сущности – это тип сущности, существование которого зависит от какого-то другого типа сущности.
Сильный тип сущности – это тип сущности, существование которого не зависит от какого-то другого типа сущности.
Атрибут – это свойство типа сущности или типа связи.
Домен атрибута – это набор значений, которые могут быть присвоены атрибуту.
Простой атрибут – это атрибут, состоящий из одного компонента с независимым существованием.
Составной атрибут – это атрибут, состоящий из нескольких компонентов, каждый из которых характеризуется независимым существованием.
Однозначный атрибут – это атрибут, который содержит одно значение для одной сущности.
Многозначный атрибут – это атрибут, который содержит несколько значений для одной сущности.
Производный атрибут – это атрибут, который представляет значение, производное от значения, связанного с ним атрибута или некоторого множества атрибутов, принадлежащих некоторому (не обязательно данному) типу сущности.
Потенциальный ключ – это атрибут или набор атрибутов, который уникально идентифицирует отдельные экземпляры типа сущности.
Первичный ключ – это потенциальный ключ, который выбран в качестве первичного ключа.
Составной ключ – это потенциальный ключ, который состоит из двух или более атрибутов.