Теоретические основы



Скачать 354.32 Kb.
страница1/5
Дата22.12.2012
Размер354.32 Kb.
ТипДокументы
  1   2   3   4   5
Реляционная Модель Данных

Теоретические основы


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

Переход от множеств переменных (смотри рисунок мн-ва) к структурам данных произошел в 60-е года. Переход предложенный Коддом осуществляется на основе Теоретико-множественного аппарата.

Существует множество А={1,….,n}.

Оно может быть представлено и таком виде, когда элементы множества именованы: A={ai}

B={bj}

Тогда возникло понятие декартова произведения множеств С=АхВ={(ai,bj)} – это подмножество.

Геометрическая интерпретация отношения:

Р=AxB декартово произведение….

Отношение – с одной стороны это подмножество декартова произведения множеств, называемых доменами P c D1xD2x…Dn. Каждый домен состоит из мно-ва элементов Di={din}.

C другой стороны отношение - это множество элементов, называемых картежами, Р={(di1, di2,…din)}, каждый из которых имеет вид di1…din, причем на первом месте стоит элемент из домена D1, а на последнем элемент из домена Dn.

Отношение: 1) геометрическое 1) P c D1xD2x…Dn( правило порождения

структуры), где Р – это имя пространства

(подмножество) , а D1xD2x…Dn – это структура

постранства (оси координат)

2)Р={(di1, di2,…din)},

где Р –подмножество , а (di1, di2,…din) множество

точек этого подмножества пространства
2) табличное 1) P c D1xD2xDn, где Р – это имя таблицы,
D1xD2x…Dn – это шапка таблицы
2) Р={(di1, di2,…din)} где Р – это имя таблицы,
{(di1, di2,…din)} - строки таблицы,

Размерность отношения называется арностью, которая определяется числом доменов.

Табличная интерпретация : имя домена соответствует имени столбца, но сам домен полностью не совпадает со столбцом (столбец – подмножество данного множества)


домен

q-я строка картежа

D1

D2





Dn

gif" name="object1" align=absmiddle width=26 height=24>















Структурные единицы

Простые

Сложные

Мета-уровень

Домен

Отношение

Конкретный уровень

Значение

Кортеж


Артибут = столбец

Общие понятия реляционного подхода к организации БД.

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


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

Для начала покажем смысл этих понятий на примере отношения СОТРУДНИКИ, содержащего информацию о сотрудниках некоторой организации:



1.1.Тип данных

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

В нашем примере мы имеем дело с данными трех типов: строки символов, целые числа и "деньги".

1.2.Домен

Домен (элемент) – это допустимое потенциальное множество значений данного типа.

Например, домен "Имена" в нашем примере определен на базовом типе строк символов, но в число его значений могут входить только те строки, которые могут изображать имя (в частности, такие строки не могут начинаться с мягкого знака).

1.3.Схема отношения, схема базы данных

(Схема отношения - это именованное множество пар {имя атрибута, имя домена }. )

Размерность картежа называется арностью, которая определяется числом доменов.

Степень отношения СОТРУДНИКИ равна четырем, то есть оно является 4-арным.

Схема БД (в структурном смысле) - это набор именованных схем отношений.

1.4.Кортеж, отношение

Кортеж (сложное состояние) - это множество пар {имя атрибута, значение}, которое содержит одно вхождение каждого имени атрибута, принадлежащего схеме отношения.

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

Отношение (структура на элементах) - это множество кортежей (соответствующих одной схеме отношения.)

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

Как видно, основные структурные понятия реляционной модели данных имеют очень простую интуитивную интерпретацию, хотя в теории реляционных БД все они определяются абсолютно формально и точно.
1.5. Свойства отношений

Остановимся теперь на некоторых важных свойствах отношений:

1. Отсутствие кортежей-дубликатов

Отношения не содержат кортежей-дубликатов. Это следует из определения отношения как множества кортежей.

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

2. Отсутствие упорядоченности кортежей

Отсутствие упорядоченности кортежей отношения также является следствием определения отношения как множества кортежей. Отсутствие требования к поддержанию порядка на множестве кортежей отношения дает дополнительную гибкость СУБД при хранении баз данных во внешней памяти и при выполнении запросов к базе данных.

3. Отсутствие упорядоченности атрибутов

Атрибуты отношений не упорядочены, поскольку по определению схема отношения есть множество пар {имя атрибута, имя домена}, если атрибуты поименованы.



4. Атомарность значений атрибутов

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

2.Реляционная модель данных

2.1. Общая характеристика



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

  • структурной части (представление данных),

  • манипуляционной части,

В структурной части модели фиксируется, что единственной структурой данных, используемой в реляционных БД, является нормализованное (n-арное) отношение.

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

Это абстрактные языки запросов. Они представлены в формальном виде и не реализованы в какой-либо действующей СУБД, но они служат эталоном для оценки существующих систем. Реальные языки запросов обычно обеспечивают не только функции абстрактных языков, но и некоторые дополнительные потребности пользователей.

Реляционная алгебра базируется в основном на классической теории множеств.

Реляционное исчисление - на классическом логическом аппарате исчисления предикатов первого порядка.

В свою очередь, рассматриваются два вида реляционного исчисления - исчисление доменов и исчисление предикатов.

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

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

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

Именно поэтому эти механизмы включены в реляционную модель данных.

2.2. Реляционная алгебра


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

Набор основных алгебраических операций состоит из восьми операций, которые делятся на два класса - теоретико-множественные операции и специальные реляционные операции.
    1. Элементы реляционной алгебры
    2. (Лекции - геометрическая интерпретация и определения,
    3. семинары – практические примеры на каждую операцию)
  1. Объединение (1) Объединением отношений R и S называется отношение Q, которое представляет собой множество кортежей, принадлежащих R или S, или им обоим.
Атрибуты рез отношения не поименованы, дублирующие кортежи не удваиваются. Основное формальное ограничение – требование одинаковой арности.
Отношение Q:

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

Разность Разностью двух отношений R и S называется отношение Q, представляющее собой множество картежей, принадлежащих () R и не принадлежащих () S.

Основное формальное ограничение – требование одинаковой арности.

Отношение Q:

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

3. Декартово произведение

Пусть отношения R и S обладают арностями kl и k2 соответственно. Тогда декартовым произведением R X S отношений R и S называется отношение Q, в котором множество кортежей имеют длину k1 + k2, первые k1 компонентов которых образуют кортежи, принадлежащие R, а последние k2 — кортежи, принадлежащие S.



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

4.Проекция (всегда понижение арности, 0,)- столбцы





Унарная операция, которая позволяет осуществить доступ к определенной части отношения. Проецирование – это понижение арности.

Идея этой операции заключается в том, что берется отношение R, удаляются некоторые из его компонентов и (или) переупоря­дочиваются оставшиеся компоненты. Пусть R — отношение арности k. Обо­значим проекцию R на компоненты i1 ,i2, ..., im,

через pi1, i2, ... im (R), где ij — являются различными целыми в диа­пазоне от 1 до k, т. е. Множество m, состоящее из а1 а2 ...am, таких, что существует некоторый принадлежащий R кортеж b1,b2…bk длины k, удовлетворяющий условию: aj = bi. для j = 1,2, ..., m.

Например,

проекция отношения R


Например, для построения (или П а,с (R)) нужно из каждого кортежа i, принадле­жащего R, сформировать кортеж длины из суммы третьего и первого его ком­понентов в указанном порядке. Если у R имеются атрибуты, с помощью ко­торых помечены его столбцы, то мы можем подставить имена этих атрибутов1 вместо номеров компонентов и использовать те же имена в отношении, полученном в результате проекции.

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

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

5.Селекция (выбор по критерию) – строки.



Пусть F — формула, образованная:

а) операндами, являющимися константами (постоянными) или номерами компонентов;

б) арифметическими операторами сравнения.



в) логическими операторами и, или, нет.

Тогда селекция есть множество картежей t, принадлежащих R, таких, что при подставки i-го компонента t, вместо любого вхождения i в формулу F для всех i, формула становится истинной.

Как и в проекции, формула в селекции мо­жет ссылаться на столбцы по именам, а не по номерам, если столбцы отно­шения именованы. Заметим также, что константы в формулах должны быть заключены в кавычки. Это позволяет отличать их от номеров или имен столбцов.

Например, обо­значает множество кортежей, принадлежащих R, второй компонент которых совпадает с символом b.

Некоторые дополнительные алгебраические операции

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

Отношение Q:
d
a
F

  • Операция пересечения двух отношений производит отношение, включающее все кортежи, входящие в оба отношения-операнда.

7. Частное

Пусть R и S является отношением арности r и s, при этом арность r>s, и отношение S- не пустое, тогда частное отношение Q есть множество картежей t длины (), таких, что для всех картежей Q

Пусть R и S — отношения. Соответствующее отношение R÷S. Кортеж аb принадлежит R ÷ S, поскольку abcd и abef принадлежат R. По аналогичной причине кортеж ed принадлежит R ÷ S. Кортеж bc является единственным в первых двух столбцах R не принадлежащим R÷S, так как bccd не принадлежит R. Кортеж abde, принадлежащий R во вторых двух столбцах не принадлежит S, поэтому кортеж abde не принадлежит частному.


Отношение R




Отношение S




Отношение R-:S

a

B

c

d




c

d




a

B

a

B

e

f




e

f




e

D

b

C

e

f

















e

D

c

f



















e

D

e

f



















a

B

d

e






















  1. Соединение



iQj

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

Виды соединений: Естественное соединение, Эквисоединение, Произвольное соединение.

Анализ (алгоритм):

? Есть ли одинаковые столбцы?

  • Есть

Естественное соединение: Столбцы поименованы и существует хотя бы один общий. К=К1+К2-N, где N- количество общих столбцов.

  • Нет

? Q-является оператором сравнения «=»?

  • Да

Эквисоединение R=R1+R2, Q -всегда «=»

  • Нет

Произвольное соединение К=К1+К2

  1. Естественное соединение



Существует тогда и только тога, когда столбцы поименованы и существует по крайней мере хотя бы 1 общий столбец.

Пусть A1,…,Аn – общие столбцы исходных отношений. Тогда отношение

, где i1…ik- упорядоченное множество всех столбцов за исключением дублированных.
1) RxS


A

B

C

D

a

b

c

d

a

b

c

e

d

b

c

d

d

b

c

e

c

a

d

b
Отношение R Отношение S Отношение Q


A

B

C

a

b

c

d

b

c

b

b

f

c

a

d



B

C

D

b

c

d

b

c

e

a

d

b



    1. 2) Произвольное соединение

    2. Для примера предположим, что в нашей библиотеке не все читатели обладают равными правами. Есть редкие издания, доступные только ограниченному кругу. У книги есть атрибут ее ценности level, а у читателя - некоторый уровень доступа rate, причем читатель не может получить книгу, ценность которой превышает его собственный уровень доступа. Библиотекарь хочет распечатать все возможные комбинации, кому какую книгу можно выдать по этим правилам. Вот решение его проблемы:



    3. Readers [rate >= level] Books




    1. 3) Эквисоединение

    2. Эквисоединение - тоже частный произвольного соединения. Эквисоединение - это произвольное соединение, в котором оператор сравнения - обычное равенство. Эквисоединение рассматривается как особая разновидность соединения только потому, что на практике применяется особенно часто.



    3. Добавим к таблице Books атрибут givento, содержащий код читателя, которому выдана книга, или <пусто>, если она в данный момент находится в библиотеке. Потребуем у нашей базы отчет, какие книги в данный момент на руках и у кого:



    4. Readers [id = givento] Books






    1. Законы операций (композиции)

  1. коммутативный

  2. ассоциативный

  3. дистрибутивный

В практике упрощенно называются оптимизацией запроса.

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

  1. Закон коммуникативный для соединения и декартового произведения



2. Закон ассоциативный для соединения и ДП


3. Закон перестановки операции селекция с другими операциями.



4. Законы каскадов



Закон каскадов для проекции:

, справедлив, если множество атрибутов A1…An (принадлежит) множеству атрибутов B1…Bm
Практические примеры:

Элементы реляционной алгебры

  1. Обьединение

Q=AuB. Атрибуты результирующего отношения не поименованы. Дублирующие кортежи не удваиваются. Основное формальное ограничение – одинаковая АРНОСТЬ отношений.
  1   2   3   4   5

Похожие:

Теоретические основы iconТеоретические основы радиолокации
Данное пособие является продолжением цикла лабораторных работ дисциплины "Теоретические основы радиолокации". В него включены две...
Теоретические основы iconПримерная программа дисциплины " Теоретические основы электротехники" Рекомендуется для специальности подготовки
Изучение дисциплины «Теоретические основы электротехники» направлено на формирование у студента следующих компетенций
Теоретические основы iconI. теоретические основы химии
Для успешной сдачи вступительного экзамена необходимо хорошо знать теоретические основы химии (раздел I) и применять их для изложения...
Теоретические основы iconРабочая учебная программа По дисциплине: Теоретические основы беспроводной связи По направлению: 010900 «Прикладные математика и физика»
...
Теоретические основы iconОрганизация работ лабораторные работы проводятся на стендах в лаборатории «Теоретические основы электротехники»
«Теоретические основы электротехники» с использованием реального оборудования. Возможно также проведение работ на компьютере с использованием...
Теоретические основы iconПо курсу Теоретические основы квалификации преступлений
Сборник методических материалов по курсу «Теоретические основы квалификации преступлений». – М.: Импэ им. А. С. Грибоедова, 2006....
Теоретические основы iconПрограмма дисциплины «Теоретические основы анализа применения инструментов торговой политики»
Дисциплина “Теоретические основы анализа применения инструментов торговой политики» представляет собой элемент подготовки студентов...
Теоретические основы iconПрограмма дисциплины «Теоретические основы анализа применения инструментов торговой политики»
Дисциплина “Теоретические основы анализа применения инструментов торговой политики» представляет собой элемент подготовки студентов...
Теоретические основы iconМетодические указания Учебные занятия по курсу "Теоретические основы химии"
Учебные занятия по курсу “Теоретические основы химии” состоят из лекций, семинаров, лабораторных работ, курсовой работы и домашней...
Теоретические основы iconТеоретические и методологические основы управления интегрированными структурами с государственным участием в инвестиционно-строительной сфере
Теоретические и методологические основы управления интегрированными структурами
Разместите кнопку на своём сайте:
ru.convdocs.org


База данных защищена авторским правом ©ru.convdocs.org 2016
обратиться к администрации
ru.convdocs.org