
- •Лекция 10. Разработка базы данных. Модели данных. Реляционная модель Введение
- •Основные понятия баз данных Определения
- •Логическая организация баз данных
- •Типовые функции обработки данных
- •Основные требования к базам данных
- •Создание базы данных и ввод данных
- •Многопользовательская технология обработки данных бд
- •Модели данных, поддерживаемые в субд
- •Сетевые и иерархические модели данных
- •Структуры данных сетевых и иерархических моделей
- •Связи объектов в сетевых и иерархических моделях данных
- •Операции обработки данных модели
- •Сравнение сетевых и иерархических моделей
- •Реляционная модель данных
- •Структуры данных реляционной модели
- •Определения и основные понятия реляционного подхода
- •Нормализация данных
- •Логические связи в реляционной модели, реляционная бд
Определения и основные понятия реляционного подхода
В реляционном подходе к построению баз данных используется терминология теории отношений. Простейшая двумерная таблица определяется как отношение. Столбец таблицы со значениями соответствующего атрибута называетсядомен, а строки со значениями разных атрибутов –кортеж.
Реляционная таблица-отношение. На рис.4 дана в общем виде иллюстрация реляционной таблицы-отношения R.
Рис. 4 Иллюстрация реляционной таблицы-отношения R размерностиn=6.
Формальное определение отношения R (реляционной таблицы) опирается на представление о ее доменах Di (столбцах) и кортежах Kj (строках). Отношением R, определенным на множествах доменов D i , называется подмножество декартова произведения доменов D1 D2 .... DN.
Таблица-отношение R (рис. 4) содержит столбцы с именами атрибутов (A1, A2, ... ). Значения атрибутов dij находятся в содержательной части таблицы и образуют строки и столбцы. Множество значений атрибутов в одном столбце образуют один домен Di. Множество значений атрибутов в одной строке образуют один кортеж К j.
Отношение R образуется множеством упорядоченных кортежей
R = K j , j =1- m K j = d1j, d2j, ... ,d nj, где
n - число доменов отношения определяет размерность отношения (арность);
j - номер кортежа;
m - общее число кортежей в отношении, называемое координатным числом отношения.
Ключ реляционной таблицы Строки не должны повторятся внутри таблицы-отношения и соответственно должны иметь уникальный идентификатор –первичный ключ.
В общем случае ключи бывают двух видов: первичный (уникальный) ключ(ПК) ивторичный ключ(ВК)
Первичный ключ (ПК)– это один или несколько атрибутов, однозначно идентифицирующих строку. Если первичный ключ состоит из одного атрибута, он называетсяпростым, если из нескольких –составнымпервичным ключом. По значению первичного ключа может быть найден единственный экземпляр строки.
Вторичный ключ (ВК), в отличие от первичного, – это такой атрибут, значение которого может повторяться в нескольких записях таблицы, т.е. он не является уникальным. По значению вторичного ключа отыскивается несколько строк с одинаковым значением этого ключа. Атрибуты, входящие в состав первичного ключа, являются вторичными ключами.
Индексирование.Средством эффективного доступа по ключу к данным является индексирование. При индексировании создается дополнительный индексный набор, который содержит в упорядоченном виде все значения ключа таблицы. Для каждого значения ключа в индексном наборе содержится указатель на соответствующую строку. При наличии индексного набора, размеры которого всегда меньше таблицы данных, быстро отыскивается заданный ключ. С помощью указателя осуществляется прямой доступ к искомой строке. Индексирование может производиться не только по первичному, но и по вторичному ключу.
Нормализация данных
Важным требованием, предъявляемым к реляционным таблицам, является нормализация данных, представленных таблицей. Любая реляционная таблица должна отвечать как минимум требованию первичной нормализации. Первично нормализованная таблица содержит строки, в которых для каждого атрибута может быть только одно значение. Это соответствует обязательному требованию недопустимости множественных и повторяющихся структур данных в реляционной модели.
Таблица cненормализованными данными может быть преобразована в несколько нормализованныхтаблиц-отношений.
Существует несколько нормальных формреляционной модели, которые вводят ограничения и позволяют минимизировать дублирование данных, обеспечить поддержание целостности и однократность ввода данных:
при первой нормальной форме все атрибуты отношения должны бытьпростыми;
при второй нормальной формевсе атрибуты отношения являются простыми, и каждый неключевой атрибутфункционально-полнозависит от ключа. Полная функциональная зависимость неключевого атрибута означает, что ключ однозначно определяет неключевой атрибут, то есть одному значению ключа соответствует одно значение неключевого атрибута. Если ключ составной, то подобная зависимость должна выполняться на уровне всего ключа, а не какой-либо его части.
при третьей нормальной форме все атрибуты отношения являются простыми, и каждый неключевой атрибут функционально-полно зависит от ключа, причемне транзитивно.
Существуют и более высокие формы нормализации, которые не имеют большого практического значения. Заметим, если реляционные таблицы БД находятся в первой нормальной форме, при этом еще не будут выполняться требования по отсутствию дублирования данных.