Файл: Управление данными (пособие).pdf

ВУЗ: Не указан

Категория: Не указан

Дисциплина: Не указана

Добавлен: 31.03.2021

Просмотров: 1654

Скачиваний: 26

ВНИМАНИЕ! Если данный файл нарушает Ваши авторские права, то обязательно сообщите нам.
background image

 

41

Низкоуровневые средства

 

навигации

 

 

манипулирования

 

данными

 

ли

тем

 

не

 

менее

в

 

ранних

 

системах

 

обеспечивать

 

высокую

 

ивность

 

реализации

 

 

и

позволя
эффект

этих

 

функций

 

прикладными

 

программами

экон
к

 

досто

особенно

 

учитывая

 

уровень

 

вычислительных

 

сист

 

языковы

явля

я

знания

 

ения

 

и

 

хранения

 

данных

В

 

к

невозмо
система
реализа

независ

 

омное

 

использование

 

памяти

 

вычислительной

 

системы

Это

 

можно

 

отнести

 

инствам

 

этих

 

систем

ем того

 

времени

 (60-

е

 – 70-

е

 

годы

). 

Одним

 

из

 

следствий

 

низкого

 

уровня

 

х

 

средств

используемых

 

в

 

этих

 

моделях

 

для

 

работы

 

с

 

данными

лась

 

сложность

 

создани

 

прикладных

 

программных

 

систем

необходимость

 

при

 

этом

 

особенностей

 

физического

 

представл

онечном

 

итоге

 

это

 

приводило

 

к

 

большей

 

сложности

 

или

 

даже

 

жность

 

выполнения

 

комплекса

 

требований

 

к

 

информационным

 

м

 

с

 

базами

 

данных

рассмотренного

 

в

 

предыдущих

 

разделах

например

 

ции

 

требований

 

многоаспектного

 

использования

 

данных

обеспечения

 

имости

 

данных

 

от

 

логики

 

использующих

 

их

 

программ

 

и

 

др


background image

6. 

Реляционная

 

модель

 

данных

сновные

 

понятия

С

О

труктуры

 

данных

  

 

 

 

 

т

я

 

образованию

он

 

привнес

 

в

 

область

 

управления

 

базами

 

данных

 

строгие

 

математические

 

принципы

 

и

 

точность

которых

 

не

 

хватало

ст

 

р

ци

 

утвердился

 

не

 

сразу

можно

 

отмет

дан

е

 

с

-

х

 

годов

 

продукты

 

баз

 

данных

 

осно

нн

ляц

н

де

Подавляющее

 

большинство

 

научн

ов

аст

аз

течение

 

последних

 

35 

лет

 

также

 

проводил

именно

 

в

м

 

направлении

Рассматривая

 

ст ен

я

 

ов

понятия

 

реляционной

 

модели

будем

 

имет

и

ы

 

ел

  

 

структуры

 

данных

 

операции

о

я

ад

и

  

 

ограничения

связанные

 

с

 

обеспечением

 

целостности

 

данных

Основн

лицы

называемые

 

в

 

реляционной

 

теории

 

отношениями

Собственно

 

от

 

термина

 

отно

и

 

пояс

ное

 

числ

ка

 

не

 

очень

 

строго

основные

 

понятия

 

реляционной

 

модели

 

мож

6.1. 

Основные

 

понятия

 

реляционной

 

модели

 

данных

 

В

 

основе реляционных

 

систем

 

лежит

 

реляционная модель данных

Принципы

 

реляционной

 

модели

 

были

 

заложены

 

в

 1969–70-

х

 

годах

 

американским

 

ученым

 

Е

.

Ф

Коддом

 (E.F.Codd), 

в о

 

врем

 

работавшим

 

в

 

корпорации

 IBM. 

Являясь

 

математиком

 

по

 

ранним

 

си

емам

Хотя

вс

 

с

еля онный

 

подход

н а

 

ить что

 

почти

ваны

 

име

 

е оз

о

 

на

 

ре

ны

ион

 

ко ц

70

ом

 

подхо

ых

 

исслед аний

 

в

 

обл

и

 

б

 

данных

 

в

 

ись

 

 

это

.  

и

 

по еп

ь

 

в

 

виду

 

тр

но

 

уточня

 

компонент

осн

мод

ные

 

и

 

данных

:

которые

 

м жно

 

выполн ть

 

н

 

данными

ой

 

структурой

 

данных

 

в

 

реляционной

 

модели

 

являются

 

таб

шение

  (

по

-

английски

 

relation

и

 

произошло

 

само

 

название

 

модели

 – 

реляционная

На

 

рисунке

 6.1 

приведен

 

пример

 

такой

 

таблицы

-

отношения

 

нение

 

основных

 

терминов

 

реляционной

 

модели

 – 

кортеж

кардиналь

о

атрибут

степень

домен

первичный

 

ключ

.  

Коротко

по

но

 

определить

 

следующим

 

образом


background image

 

43

Код

_

студента

Имя

_

студента

Факуль ет

Иванов
Петрова

Иванов

Орлов

Петрова

Орлов
Смирнов

Сидоров

Попова
Кузнецов

Смирнов

Сидоров

П

Потапов

опова Кузнецов

Романов

Код

Имя

З

Отношение

Атрибут

Значение

 

атрибута

На менование

риб та

рс

аголовок

отношения

и

ат

у

Кортеж

Ключ

Ку

Факультет

Курс

т

С

2

С

2

С

5

С

4

С

9

С

10

С

8

Математический

С

1

С

7

С

3

Биологический

Физический

Химический

С

4

С

6

С

1

С

7

Фи

Физический

Физический
Химический

Исторический

2
4
3

Физический
Химический

1
2

зический

Исторический

1

1

3

4

2

5

6

4

До

ны
м

е

 

Рис

.  6.1 

Отношение

 

и

 

его

 

компоненты

 

 

являются

 

одинаковыми

Ключ

таким

 

образом

является

 

уникальным

 

из

 

значения

 

конкретного

 

атрибута

То

 

есть

 

конкретный

 

набор

 

значений

 

 

Отношение

 

это

 

таблица

подобная

 

приведенной

 

на

 

рисунке

 6.1, 

состоящая

 

из

 

строк

 

и

 

столбцов

 

и

 

имеющая

 

вверху

 

строку

называемую

 

заголовок

 

отношения

 

Строки

 

таблицы

-

отношения

 

называются

 

кортежами

 (tuple), 

а

 

столбцы

 

атрибутами

 (attribute). 

 

Количество

 

кортежей

 

в

 

отношении

 

называется

 

кардинальным

 

числом

 

отношения

а

 

количество

 

атрибутов

 

называется

 

степенью

 

отношения

.  

 

Каждый

 

атрибут

 

в

 

отношении

 

имеет

 

наименование

которое

указывается

 

в

 

заголовочной

 

части

 

отношения

 

Ключ

 

отношения

 – 

это

 

атрибут

 

или

 

набор

 

атрибутов

 

отношения

 

такие

что

 

в

 

любой

 

момент

 

времени

 

в

 

отношении

 

не

 

существует

 

строк

для

 

которых

 

значение

 

или

 

комбинация

 

значений

 

ключевых

 

атрибутов

 

идентификатором

 

кортежей

 

отношения

  (

на

 

рисунке

 6.1 

ключевой

 

атрибут

 

выделен

 

жирным

 

шрифтом

). 

 

Домен

 

отношения

 – 

это

 

множество

 

значений

,   

которого

 

могут

 

браться


background image

 

44

атрибута

 

в

 

любой

 

момент

 

времени

 

должен

 

быть

 

подмножеством

 

множества

 

значений

 

домена

на

 

котором

 

определен

 

этот

 

атрибут

Значения

 

атрибута

которые

 

отсутствуют

 

в

 

множестве

задаваемом

 

доменом

являются

 

недопустимыми

Понятие

 

домена

 

является

 

важным

 

для

 

реляционной

 

модели

Домен

 

 

должны

 

удовлетворять

 

значения

 

Как

 

уже

 

отмечалось

приведенные

 

выше

 

определения

 

не

 

являются

 

строгими

Такие

 

термины

 

как

 

таблица

строка

столбец

строго

 

говоря

не

 

явля

нной

 

модели

 

мат а

атрибут

соответственно

Однако

имы

что

в

 

общем

допу и

льный

 

смысл

 

вкла

в

ы

 

более

 

строго

Р

ью

 

которой

 

пред

е

1

-

 

е

 

с

 

объект

значение

 

которого

 

фактически

 

задает

 

ограничения

которым

соответствующего

 

атрибута

.  

ются

 

полностью

 

эквивалентными

 

используемым

 

в

 

реляцио

ем тическим

 

понятиям

 

отношение

кортеж

  

на

 

практике

 

их

 

часто

 

используют

 

именно

 

как

 

синон

ст мо

если

 

при

 

этом

 

понимать

какой

 

действите

ды ается

 

в

 

эти

 

термины

ятия

 

реляционной

 

модели

 

будут

 

определен

Ниже

 

приведенные

 

пон

6.2. 

Структуры

 

данных

 

реляционной

 

модели

еляционные

 

отношения

 

Отношение

 

является

 

основной

 

структурой

с

 

помощ

ставляются

 

данные

 

в

 

р ляционной

 

модели

.  

Прежде

 

чем

 

дать

 

более

 

строгое

 

определение

 

понятию

 

отношение

необходимо

 

отметить

что

 

следует

 

различать

 

два

 

понятия

отношение

 

как

 

переменная

 

и

 

значение

 

отношения

 

, 3, 6]

Отношение переменная

 

имеет

 

тот

 

же

 

смысл

что

 

и пер менные

 

в

 

языках программирования другими

 

ловами

  

Отношение

-

переменная

 

это

 

именованный

может

 

изменяться

 

со

 

временем

Значение

 

этой

 

переменной

 

в

 

любой

 

момент

 

времени

 

и

 

будет

 

значением

 

отношения

.  

Внач ле

 

рассмотрим

 

определ ние

 

отношения

 

в

 

смысле

 

значение

 

отношения

Отношение

-

значение

 

представляет

 

собой

 

математическое

 

множество

 

элементов

 

следующего

 

вида

а

е


background image

 

45

<A

1

:D

>

 

<A

2

:D

>

 

 

<A

n

:D

>

 

<A

1

:v

11 

> <A

2

:v

12 

> … <A

n

:v

1n 

<A

1

:v

21 

> <A

2

:v

22 

> … <A

n

:v

2n 

… … 

… 

… 

<A

1

:v

j 1 

> <A

2

:v

j

 

> … <A

n

:v

j

 

… … 

… 

… 

<A

1

:v

m1 

> <A

2

:v

m2 

> … <A

n

:v

m

 

Рис

. 6.1. 

Множество

 

элементов

представля

х

 

отношение

 

ющи

,

Как

 

видно

 

из

 

рисунка

 6.1, 

множество

 

элементов

из

 

которых

 

образуется

 

отношение

 

R

 

содержит

 

две

 

части

заголовок

 

отношения

 

и

 

тело

 

отношения

Множество

 

A

1

, A

2

, …, A

n

 

это

 

множество

 

имен

 

атрибутов

 

отношения

Совокупность

 

D

1

 

D

2

, …, 

D

n  

это

 

набор

 

доменов

на

 

котором

 

определено

 

это

 

отношение

.  

Заголовок

 

отношения

 – 

это

 

фиксированное

 

множество

 

атрибутов

 

или

 

точнее

ар

 <

имя

-

атрибута

-

домена

>: 

п

имя

{

<A :D

1

>, <A

2

:D

>, …, <A

n

:D

>

}

причем

 

каждый

 

атрибут

 

A

k

 

соответствует

 

одному

 

и

 

только

 

одному

 

домену

 

D

(

k

 = 1, 2, …, 

n

), 

на

 

которых

 

определено

 

отношение

.  

В

 

отношении

 

все

 

имена

 

атрибутов

 

A

а

1

, A

2

, …, A

n

должны

 

быть

 

уникальными

Элементы

 

же

 

набора

 

доменов

 

D

1

D

2

, …, 

D

n  

не

 

обязательно

 

различны

Отсюда

 

следует

что

 

разные

 

атрибуты

 

отношения

 

могут

 

быть

 

определены

 

н

 

одинаковых

 

доменах

Иногда

 

структуру

задаваемую

 

заголовком

 

отношения

называют

 

схемой

 

отношения

Тело

 

отношения

 

это

 

структура

представляющая

 

собой

 

множество

 

кортежей

.  

 

Каждый

 

кортеж

в

 

свою

 

очередь

это

 

множество

 

пар

       

 

 

 

<

имя

-

атрибута

значение

-

атрибута

следущего

 

вида

:  

<A

1

:V

i

 

>, <A

2

:V

i

 

>, …, <A

n

:V

i

 

(

= 1, 2, …, 

m

где

 

m

 – 

количество

 

кортежей

 

в

 

этом

 

множестве

).  

Каждая

 

такая

 

пара

  <

имя

-

атрибута

:

значение

-

атрибута

>, 

то

 

есть

  

<A

 

а

п

 

k

:V

i k

>

соответствует

 

паре

 

<A

k

:D

k

для

 

каждого

 

атрибут

 

A

k

 

в

 

заголовке

 

отношения

Для

 

любой

 

такой

 

ары

 

<A

k

:V

i k

>

 

элемент

 V

i k

 

является

 

значением из

 

домена

 

D

который

 

связан

 

с

 

атрибутом

 

A

k