имени Александра Григорьевича и Николая Григорьевича Столетовых

ВЛАДИМИРСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

 

КАФЕДРА БИЗНЕС-ИНФОРМАТИКИ И ЭКОНОМИКИ

Реферат

по дисциплине «Базы данных»

на тему: «Реляционная модель данных»

 

 

Выполнила:

студентка 3-го курса

группы БИ-114

Полякова И.В.

 

Принял:

Виноградов Д.В.

Владимир 2016

Содержание

Введение...................................................................................................................................3

Глава 1. Базовые понятия реляционной модели данных.....................................................4

Глава 1.1. Базовые операции в реляционной модели данных.............................................5

Глава 1.2.Отношения в реляционной модели.......................................................................7

Глава 2.Состав реляционной модели данных......................................................................11

Глава 2.1.Структура реляционной модели данных.............................................................12

Глава 2.2.Требования, достоинства и недостатки реляционной модели данных.............13

Заключение..............................................................................................................................15

Библиографический список..................................................................................................16


 

Введение

Реляционная модель данных – логическая модель данных. Впервые была предложена британским учёным сотрудником компании IBM Эдгаром Франком Коддом в 1970 году в статье "A Relational Model of Data for Large Shared Data Banks. Будучи математиком по образованию, он привнес в область управления базами данных строгие математические принципы и точность, которых не хватало ранним системам. Хотя реляционный подход утвердился не сразу, можно отметить, что почти все созданные с конца 70-х гг. продукты баз данных основаны именно на реляционном подходе. Подавляющее большинство научных исследований в области баз данных в течение последних 35 лет также проводилось именно в этом направлении. В настоящее время эта модель является фактическим стандартом, на который ориентируются практически все современные коммерческие СУБД.

В реляционной модели достигается гораздо более высокий уровень абстракции данных, чем в иерархической или сетевой. В упомянутой статье Е.Ф. Кодда утверждается, что "реляционная модель предоставляет средства описания данных на основе только их естественной структуры, т.е. без потребности введения какой-либо дополнительной структуры для целей машинного представления". Другими словами, представление данных не зависит от способа их физической организации. Это обеспечивается за счет использования математической теории отношений (само название "реляционная" происходит от английского relation – "отношение").


 

Глава 1.Базовые понятия реляционной модели данных

Рассматривая и постепенно уточняя основные понятия реляционной модели, будем иметь в виду три компоненты модели данных:

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

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

Рис. 1. Отношение и его компоненты

Коротко основные понятия реляционной модели можно определить следующим образом.

  • Отношение это таблица, подобная приведенной на рис.1, состоящая из строк и столбцов и имеющая вверху строку, называемую заголовок отношения.
  • Строки таблицы-отношения называются кортежами (tuple), а столбцы атрибутами (attribute).
  • Количество кортежей в отношении называется кардинальнымчислом отношения, а количество атрибутов называется степенью отношения.
  • Каждый атрибут в отношении имеет наименование, которое указывается в заголовочной части отношения.
  • Ключотношения – это атрибут или набор атрибутов отношения такие, что в любой момент времени в отношении не существует строк, для которых значение или комбинация значений ключевых атрибутов являются одинаковыми. Ключ, таким образом, является уникальным идентификатором кортежей отношения (на рис. 1 ключевой атрибут выделен жирным шрифтом).
  • Домен отношения – это множество значений, из которого могут браться значения конкретного атрибута. То есть конкретный набор значений атрибута в любой момент времени должен быть подмножеством множества значений домена, на котором определен этот атрибут. Значения атрибута, которые отсутствуют в множестве, задаваемом доменом, являются недопустимыми.

Понятие домена является важным для реляционной модели. Домен фактически задает ограничения, которым должны удовлетворять значения соответствующего атрибута.

Такие термины как таблица, строка, столбец, строго говоря, не являются полностью эквивалентными используемым в реляционной модели математическим понятиям отношение, кортеж, атрибут соответственно. Однако на практике их часто используют именно как синонимы, что допустимо, если при этом понимать, какой действительный смысл вкладывается в эти термины.

Глава 1.1. Базовые операции в реляционной модели данных

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

К операциям обновления базы данных относятся те операции, которые выполняют вставку новых кортежей, удаление ненужных, корректировку значений атрибутов существующих кортежей, а именно: это операции Включить, Удалить, Обновить.

1)Операция Включитьтребует задания имени отношения и предварительного формирования значений атрибутов нового кортежа. Обязательно должен быть задан ключ кортежа.

2)Операция Удалитьтребует наименования отношения, а также идентификации кортежа или группы кортежей, подлежащих удалению.

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

4)Что касается операций обработки, то они позаимствованы из реляционной алгебры. Существует несколько подходов к определению реляционной алгебры. Они отличаются набором операций и их интерпретацией. Рассмотрим набор операций, который предложил Э. Кодд. Согласно его подходу реляционная алгебра включает восемь операций, пять из которых являются базовыми: Выборка, Проекция, Умножение, Объединение, Вычитание.

5)Операция Выборкапозволяет выбрать из отношения только те кортежи, которые удовлетворяют заданному условию.

6)При Проекцииотношения на заданный набор его атрибутов получается новое отношение, создаваемое посредством извлечения из исходного отношения кортежей, содержащих указанные атрибуты.

7)При Умножении(декартовом произведении) двух отношений получается новое отношение, кортежи которого являются сцеплением (конкатенацией) кортежей первого и второго отношений.

8)В результате Объединениядвух отношений получается третье, включающее кортежи, входящие хотя бы в одно отношение, то есть содержащее все элементы исходных отношений.

9)При Вычитаниивыдаются лишь те кортежи первого отношения, которые остались от вычитания второго отношения, то есть из первого отношения выбрасываются все кортежи второго.

Остальные три операции являются производными, они могут быть получены из основных операций, их называют дополнительными: Соединение, Пересечение, Деление.

10)Операция Соединениеприменяется к двум отношениям, имеющим общий атрибут. Результат этой операции для двух отношений по некоторому условию есть отношение, состоящее из кортежей, которые являются сочетанием первого и второго отношений, удовлетворяющих указанному условию. Результатом операции

11)Пересечениедвух отношений является отношение, включающее все кортежи, входящие в оба отношения.

12)Операция Деленияпредполагает, что имеется два отношения: одно – бинарное (содержащее два атрибута), другое – унарное (содержащее один атрибут). В результате получается отношение, состоящее из кортежей, включающих значения первого атрибута кортежей первого отношения, но только таких, для которых множество значений второго атрибута первого отношения совпадает с множеством значений атрибутов второго отношения.

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

В целом, операции реляционной модели данных предоставляют возможность манипулировать отношениями, позволяя обновлять базу данных, а также выбирать подмножества хранимых данных и представлять их в нужном виде.

При проектировании баз данных и работе с ними этих восьми операций обычно не достаточно. Поэтому добавляются такие операции как: переименование атрибутов, образование новых вычисляемых атрибутов, операции присваивания, сравнения и др.[1]

Глава 1.2.Отношения в реляционной модели

Реляционное отношение обладает следующими свойствами.

  • В отношении нет одинаковых кортежей.
  • Кортежи отношения не упорядочены (сверху вниз).
  • Атрибуты отношения не упорядочены (слева направо).
  • Все значения атрибутов атомарны (скалярны, неделимы).

Поясним эти свойства.

Отсутствие в отношении одинаковых кортежей

Это свойство следует из того факта, что тело отношения – это математическое множество (кортежей). В классической теории множеств по определению множество не содержит одинаковых элементов.

Это свойство является одним из примеров отмечаемой выше неэквивалентности понятий отношение и таблица. Таблица (в общем случае) может содержать одинаковые строки и, следовательно, таблица, содержащая одинаковые строки, не может быть отношением по определению.

Важным следствием того, что в отношении нет одинаковых строк-кортежей, является то, что в отношении всегда существует по крайней мере один потенциальный ключ. Действительно, так как кортежи уникальны, то обязательно комбинация всех или части атрибутов будет обладать свойством уникальности, и, следовательно, может служить ключом отношения, однозначно идентифицирующим кортежи.

Кортежи отношения не упорядочены (сверху вниз)

Это свойство также следует из того, что тело отношения – это математическое множество, а простые множества в математике не упорядочены. Так, в отношении, представленном на рис. 6.1, кортежи могли быть расположены в любом другом порядке, и, тем не менее, это все равно было бы то же самое отношение. Исходя из сказанного, к отношению не применимы такие понятия,как первый кортеж, последний кортеж, десятый кортеж, следующий или предыдущийкортеж и т. д. Другими словами, в отношении отсутствует позиционной адресация кортежей.

Обращение к конкретному кортежу, его идентификация могут быть осуществлены только по ключу отношения.

Это свойство также служит иллюстрацией не эквивалентности понятий отношение и таблица. В отличие от отношения, строки в таблице всегда упорядочены – есть первая строка, вторая, последняя и т. д.

Атрибуты отношения не упорядочены (слева направо)

Это свойство следует из того факта, что заголовок отношения также определен как простое математическое множество, а именно: множество пар <имяатрибута: имя-домена>.

Значения всех атрибутов являются атомарными

В реляционной моделидомены, на которых определены атрибуты отношения, и из которых «черпаются» фактические значения атрибутов, могут содержать только атомарные (неделимые, скалярные) значения. Другими словами на пересечении столбца и строки таблицы, представляющей отношение, должно быть в точности одно значение, а не набор значений или какая либо сложная (составная) структура значений.

Отношение, удовлетворяющее этому условию, называется нормализованным, или представленным в первой нормальной форме . Из сказанного следует, что реляционная модель рассматривает только нормализованные отношения, хотя отношение, понимаемое в математическом смысле, в общем случае может быть и ненормализованным. В качестве значений атрибутов ненормализованного отношения могут использоваться и более сложные структуры значений, например другие отношения.

Примером ненормализованного отношения 1. Как следует из вышесказанного, в реляционной моделиможет служить приведенная на рисунке 6.3 таблица Отношение отношения 1, может быть полностью представлена в виде нормализованноготакого вида являются недопустимыми. Следует, однако, заметить, что это ограничение ни в коем смысле не ограничивает нас с точки зрения самой возможности отражения необходимой информации. Так вся информация, представленная в ненормализованном отношении Отношение отношения 2.

Рис. 2. Пример ненормализованного и нормализованного отношений

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

Различные отношения, встречающиеся в реляционных системах, можно классифицировать по различным признакам.

1.Именованные отношения – это отношения, определенные в СУБД с помощью специального оператора создания отношения, которым при этом присваиваются имена, уникальные в конкретной базе данных.

2.Базовым отношением называется именованное отношение, которое является автономным и не определяется или не выводится из других отношений, т. е. которое не является производным (см. ниже).

3.Производным отношением называется отношение, которое определено с помощью реляционного выражения через другие именованные отношения и, в конечном итоге, через базовые отношения, то есть получается в результате преобразования каких-либо других отношений.

4.Представление (View) – это именованное производное отношение. Представления виртуальны, они представлены в базе данных исключительно через свое определение в терминах других отношений. При изменении значений данных в исходных отношениях будут изменяться и данные, видимые через конкретное представление.

5.Снимок (Snapshot) – это именованное производное отношение, которое, однако, в отличие от представлений (View) не виртуально, а представлено помимо своего определения через другие отношения реальными данными. Создание снимка похоже на выполнение запроса, результат которого сохраняется в базе данных под определенным именем.

6.Отношение – результат запроса. Это неименованное производное отношение, являющееся результатом некоторого запроса к базе данных.

7.Промежуточным результатом называется неименованное производное отношение, являющееся результатом некоторого реляционного выражения, вложенного в другое выражение.

8.Хранимым отношением называется отношение, которое поддерживается в физической памяти, т. е. значения которого сохраняются на устройствах долговременной памяти. Хранимое отношение – это не обяза­тельно базовое отношение, например, отношениеснимок (snapshot) также является хранимым отношением.[2]


 

Глава 2.Состав реляционной модели данных

Реляционная модель данных — логическая модель данных, строгая математическая теория, описывающая структурный аспект, аспект целостности и аспект обработки данных в реляционных базах данных.

  • Структурный аспект (составляющая) — данные в базе данных представляют собой набор отношений.
  • Аспект (составляющая) целостности — отношения (таблицы) отвечают определенным условиям целостности. РМД поддерживает декларативные ограничения целостности уровня домена (типа данных), уровня отношения и уровня базы данных.
  • Аспект (составляющая) обработки (манипулирования) — РМД поддерживает операторы манипулирования отношениями (реляционная алгебра, реляционное исчисление).

Кроме того, в состав реляционной модели данных обычно включают теорию нормализации.

Реляционная модель данных является приложением к задачам обработки данных таких разделов математики как теория множеств и формальная логика.

Термин «реляционный» означает, что теория основана на математическом понятии отношение (relation). В качестве неформального синонима термину «отношение» часто встречается слово таблица. Необходимо помнить, что «таблица» есть понятие нестрогое и неформальное и часто означает не «отношение» как абстрактное понятие, а визуальное представление отношения на бумаге или экране.

Для лучшего понимания РМД следует отметить три важных обстоятельства:

  • модель является логической, т.е. отношения являются логическими (абстрактными), а не физическими (хранимыми) структурами;
  • для реляционных баз данных верен информационный принцип: все информационное наполнение базы данных представлено одним и только одним способом, а именно — явным заданием значений атрибутов в кортежах отношений; в частности, нет никаких указателей (адресов), связывающих одно значение с другим;
  • наличие реляционной алгебры позволяет реализовать декларативное программирование и декларативное описаний ограничений целостности, в дополнение к навигационному (процедурному) программированию и процедурной проверке условий.[3]

 

 

Глава 2.1.Структура реляционной модели данных

Структура реляционной модели данных:

  • структурная
  • манипуляционная
  • целостная

Структурная часть модели определяет, то что единственной структурой данных является нормализованное n-арное отношение. Отношения удобно представлять в форме таблиц, где каждая строка есть кортеж, а каждый столбец – атрибут, определенный на некотором домене. Реляционная база данных представляет собой конечный набор таблиц.

Манипуляционная часть модели определяет два фундаментальных механизма манипулирования данными – реляционная алгебра и реляционное исчисление. Основной функцией манипуляционной части реляционной модели является обеспечение меры реляционности любого конкретного языка реляционных БД.

Язык называется реляционным, если он обладает не меньшей выразительностью и мощностью, чем реляционная алгебра или реляционное исчисление.

Целостная часть модели определяет требования целостности сущностей и целостности ссылок. Первое требование состоит в том, что любое отношение должно обладать первичным ключом. Требование целостности по ссылкам, или требование внешнего ключа состоит в том, что для каждого значения внешнего ключа, появляющегося в ссылающемся отношении, в отношении, на которое ведет ссылка, должен найтись кортеж с таким же значением первичного ключа, либо значение внешнего ключа должно быть неопределенным (т.е. ни на что не указывать).

Структура реляционной модели данных

Можно провести аналогию между элементами реляционной модели данных и элементами модели "сущность-связь". Реляционные отношения соответствуют наборам сущностей, а кортежи – сущностям. Поэтому, также как и в модели "сущность-связь" столбцы в таблице, представляющей реляционное отношение, называют атрибутами.

Пример базы данных, содержащей сведения о подразделениях предприятия и работающих в них сотрудниках, применительно к реляционной модели будет иметь вид:

Рис. 3 . Пример базы данных

База данных о подразделениях и сотрудниках предприятия

Например, связь между отношениями ОТДЕЛ и СОТРУДНИК создается путем копирования первичного ключа "Номер_отдела" из первого отношения во второе. Таким образом:

  • для того, чтобы получить список работников данного подразделения, необходимо:
    1. из таблицы ОТДЕЛ установить значение атрибута "Номер_отдела", соответствующее данному "Наименованию_отдела"
    2. выбрать из таблицы СОТРУДНИК все записи, значение атрибута "Номер_отдела" которых равно полученному на предыдущем шаге
  • для того, чтобы узнать в каком отделе работает сотрудник, нужно выполнить обратную операцию:
    1. определяем "Номер_отдела" из таблицы СОТРУДНИК
    2. по полученному значению находим запись в таблице ОТДЕЛ

Атрибуты, представляющие собой копии ключей других отношений, называются внешними ключами.[4]

Глава 2.2.Требования, достоинства и недостатки реляционной модели данных

Требования к реляционным моделям

Рациональные варианты концептуальной схемы базы данных должны удовлетворять третьей нормальной форме, а также следующим требованиям:

  • Выбранный перечень отношений должен быть минимален. Отношение используется, если только его необходимость обусловлена задачами.
  • Выбранный перечень атрибутов должен быть минимален. Атрибут включается в отношение только в том случае, если он будет использоваться.
  • Первичный ключ отношения должен быть минимальным. То есть невозможно исключить ни один атрибут из идентифицирующей совокупности атрибутов, не нарушив при этом однозначной идентификации.
  • При выполнении операций над данными не должно возникать трудностей.[5]

Достоинства реляционной модели:

  • простота и доступность для понимания пользователем. Единственной используемой информационной конструкцией является "таблица";
  • строгие правила проектирования, базирующиеся на математическом аппарате;
  • полная независимость данных. Изменения в прикладной программе при изменении реляционной БД минимальны;
  • для организации запросов и написания прикладного ПО нет необходимости знать конкретную организацию БД во внешней памяти.

Недостатки реляционной модели:

  • далеко не всегда предметная область может быть представлена в виде "таблиц";
  • в результате логического проектирования появляется множество "таблиц". Это приводит к трудности понимания структуры данных;
  • БД занимает относительно много внешней памяти;
  • относительно низкая скорость доступа к данным.[6]

 

Заключение

В настоящее время реляционные базы данных - наиболее распространенный тип баз данных, что обусловлено относительной легкостью проектирования. Другим решающим фактором превосходства РБД является поддержка производителей программного обеспечения управления базами данных. Наиболее известные и широко применяемые СУБД, такие как MS Access, SQL Server, MySQL предназначены именно для работы с реляционными БД.

Основное достоинство реляционных баз данных - это их совместимость с самым распространенным языком запросов SQL. Только при единственном запросе на языке SQL, выполняется несколько операций: соединение нескольких таблиц во временную таблицу и вырезание из таблицы требуемых строк и столбцов, то есть, селекция и проекция. Табличная структура реляционной базы данных проста в понимании для пользователя, как следствие и язык SQL так же является достаточно простым для изучения. Реляционная модель содержит достаточно большой теоретический материал, на нем были основаны эволюционные преобразования и успешная реализация реляционных баз данных. Именно популярность реляционных баз данных сыграла решающую роль в том что язык SQL стал основным.

 


 

Библиографический список

1. Бородина А.И. Лекции на тему базы данных, БГЭУ. 2008 г. - 505 с.

2. Зеленков Ю.А., Введение в базы данных. Ярославский государственный университет

Учебный курс, 1998 г., Ярославский государственный университет.

3. Кузнецов С.Д. , Основы современных баз данных, , 218 стр., информационно-аналитические материалы Центра Информационных Технологий

4.Электронный ресурс [http://online-academy.ru/demo/access/urok1/teor/teor5.htm]

5.Электронный ресурс[http://migku.wikidot.com/gos-db-12]

6.Электронный ресурс [https://moodle.vsu.ru/mod/book/view.php?id=22324]

 

 


[1] Бородин А.И. Лекции на тему базы данных

[2] Электронный ресурс [https://moodle.vsu.ru/mod/book/view.php?id=22324]

[3] Электронный ресурс[http://migku.wikidot.com/gos-db-12]

[4]Введение в базы данных Ю.А. Зеленков

[5] Электронный ресурс [http://online-academy.ru/demo/access/urok1/teor/teor5.htm]

[6] Основы современных баз данных С.Д. Кузнецов