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


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

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



ОБЩИЕ ОПРЕДЕЛЕНИЯ

1.БД - совокупность данных организованных по определенным правилам.

2. СУБД - набор программных и языковых средств для ведения БД.

Свойства современных СУБД

Надежность

Параллельность

Мощность

Масштабируемость

Безопасность

4.Модель данных - это совокупность трех элементов:

структура данных

ограничения целостности

операции над данными

Различают следующие модели данных:

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

Сетевая модель данных

Иерархическая модель данных

Объектно ориентированная модель данных

РЕЛЯЦИОННАЯ МОДЕЛЬ ДАННЫХ

5.Реляционная модель данных - от слова relation(отношение), таблица - это одно из возможных визуальных представлений отношения.

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

6.Домен - совокупность однотипных элементов.

7.Атрибут - именнованный домен: Di = dom(Ai);

8.Схема отношения - конечное множество атрибутов: R(A1,..,An);

9.Отношение - конечное подмножество множества декартового произведения всех доменов соответствующих атрибутам, входящим в схему отношения: D = D1x,..,xDn; r(R) \in D; r(R) = (t1,..,tm);

10.Кортеж - элемент отношения: t = {d1,..,dn};

11.Кардинальное число отношения(m) - количество кортежей в схеме отношения.

12.Степень отношения(n) - количество атрибутов в схеме отношения.

13.Ключ отношения - минимальная совокупность атрибутов уникально идентифицирующая кортеж: r(R), k \in R;

1)\all t1!= t2 \in r(R) => t1(k)!= t2(k); 2)\notexist k' \in k

14.Потенциальный ключ - атрибуты, которые можно выбрать в качестве ключа.

15.Первичный ключ отношения - ключ выбранный в качестве основного из нескольких потенциальных ключей (Primary Key).

16.Внешний ключ отношения - совокупность атрибутов, принимающая значение ключа, на который она ссылается.(Foreign Key)

17.Первичные атрибуты - атрибуты, входящие в первичный ключ.

18.Вторичный ключ - любой потенциальный, непервичный ключ.

19.Простой ключ - состоит из одного атрибута.

20.Составной ключ - состоит из нескольких атрибутов.

Ограничения целостности реляционной модели данных

Запрет дублирования кортежей в отношении.

Порядок кортежей не определен. В БД они хранятся в произвольном порядке.

Порядок атрибутов не определен. Обращение по имени.

Два правила целостности:

Целостность по сущностям: ключевые атрибуты не допускают NULL.

Целостность по ссылкам: FK содержат значения либо PK, либо NULL.

Операции над данными в реляционной модели данных.

Операции обновления отношения.

Операция добавления кортежа в отношение

] r(A1,..,An) - обновляемое отношение, {d1,..,dn} - добавляемый кортеж.

ADD(r; A1 = d1,.., An = dn);

Операция удаления кортежа из отношения

] r(A1,..,An) - обновляемое отношение, {d1,..,dn} - удаляемый кортеж.

DEL(r; A1 = d1,.., An = dn);

Удаление по PK: DEL(r; k = <k>), k = PK;

Изменение значения данных в одном из кортежей

] r(A1,..,An) - обновляемое отношение, {d1,..,dn} - старый кортеж, {e1,..,en} - новый кортеж.

CH(r; A1 = d1,.., An = dn; A1 = e1,.., An = en);

Изменение по PK: CH(r; k = <k>; A1 = e1,.., An = en), k = PK;

 

Операции реляционной алгебры(операции над множествами и специальные операции).

Операции над множествами.

Пересечение отношений

] R(A1,..,An) - схема отношения, тогда:

r(R) = a(R)*b(R), где r(R) = (t1,..,tm), причем ti: ti \in a(R) и ti \in b(R);

Объединение двух отношений

] R(A1,..,An) - схема отношения, тогда:

r(R) = a(R)+b(R), где r(R) = (t1,..,tm), причем ti: ti \in a(R) или ti \in b(R);

Разность двух отношений

] R(A1,..,An) - схема отношения, тогда:

r(R) = a(R)-b(R), где r(R) = (t1,..,tm), причем ti: ti \in a(R) и ti \notin b(R);

Дополнение отношения

Дополнение к отношению r, это множество r^ = D - r, причем D конечное множество, иначе операция дополнения не определена.

Активное дополнение отношения

Активное дополнение к отношению r, это множество r" = D-r;

D = adom(A1,r)x,..,x(An,r) -декартово произведение активных доменов.

adom(Ai,r) = {d\inDi| \exsist t \in r: t(Ai) = d}; - активный домен.

Активное дополнение используется в случае, если D бесконечно.

Специальные операции

Операция проекции

Результат - новое отношение со схемой состоящей из выбранных атрибутов и содержащее все значения этих атрибутов в проецируемом отношении.

R1(A1,..,An);

Map(r(R1),Ai) = s(R2), где R2(Ai,..,Ak);

или: П(r,A) = {t(A) | t\in r}; r(R), A \in R;

Операция селекции

Результат - новое отношение, содержащее кортежи со значениями a на атрибуте A.

Ъ(a,A=a) = {t \in r | t(A) = a};

Операция эквисоединения

]r(R(A)),s(S(B)) -отношения, причем R*S = \emptyset;

dom(A) = dom(B);

r(R)[A=B]s(S) = {t \in R+S| \exist tr \in R, \exist ts \in S: tr = t(R), ts = t(S), tr(A) = ts(B)};

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

Операция деления

Результат - новое отношение a содержащее значения атрибутов R-S кортежей из отношения r, для которых соответствующие значения атрибутов S включают все значения из отношения s.

] S \in R, тогда

r(R) % s(S) = {t(R-S)| \all ts \in s \exist tr \in r: tr(R-S) = t \and tr(S) = ts};

КЛАСТЕРИЗАЦИЯ

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

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

37.Внутрифайловая кластеризация - кластеризация в рамках одного логического объекта БД. Записи расположены друг за другом в рамках одной таблицы.

38.Межфайловая кластеризация - кластеризация в рамках нескольких логических объектов БД. Друг за другом расположены записи из связанных таблиц. Запись поочередно считывается то из одной то из другой таблицы.

ИНДЕКСЫ

Индексы служат для ускорения выборки данных из БД и делятся на два типа:

39. Кластерные индексы - физическое упорядочивание записей по атрибуту(только одно на таблицу).

40. Некластерные индексы - структура из ссылок на физические данные, ссылки упорядочены по выбранному атрибуту(можно много на одну таблицу, но это замедляет обновление данных). Некластерный индекс состоит из упорядоченых записей выбранного атрибута и RID указателя для каждой записи. Данная структура называется индексным файлом(41).

42. RID - ReadID указатель состоящий из физического адреса страницы и адреса ячейки слота(последовательности байт в конце с транице). Ячейка слота содержит указатели на записи в таблице.

43.Плотный индекс - индекс, содержащий столько записей, сколько записей в индексируемой таблице. Структура (Запись, RID).

44.Неплотный индекс - индекс по плотному индексу, содержит столько записей, сколько страниц в индексируемой таблице. Структура (Первая запись со страницы, ссылка на страницу).

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

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

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

48.Вторичный индекс -любой индекс, не являющийся первичным. Может не быть уникальным.

ХРАНИМЫЕ ПРОЦЕДУРЫ

41.Хранимая процедура - программа, написанная на языке манипулирования данными СУБД и хранящаяся вместе с метаданными в БД.

ТРИГГЕРЫ

50.Триггер - процедура, которая вызывается автоматически при выполнении операций обновления данных.

51.Механизм обработки событий - состоит из трех частей:

Триггер или процедура посылает сообщение менеджеру событий(планировщику).

Планировщик помещает сообщение в очередь и уведомляет приложение о наступлении события.

Приложение, которое заинтересовано в событии, ждет его наступления.

 

ПРЕДСТАВЛЕНИЯ

52.Представление - виртуальная(логическая) таблица, представляющая собой именованный запрос, т.е именованный запрос, структура которого хранится в БД.

В отличии от таблиц БД, представление не содержит данных. Содержимое представления динамически вычисляется на основе данных в реальных таблицах.

Изменение данных в реальной таблице БД немедленно отражается в содержании представлений, построенных на этой таблице.

Преимущества:

Безопасность, простота запросов, структурная простота, защита БД от изменений, Целостность данных

Недостатки:

Производительность, управляемость, ограничения на обновление.

Типы представлений

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

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

Смешанное представление - содержит часть строк и часть столбцов исходной таблицы.

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

Объединенное представление - представление, базирующиеся на многотабличных запросах(данные извлекаются из нескольких таблиц). Позволяет упростить разработку пользовательского интерфейса, сохранив при этом конкретность схемы БД.

Применение представлений

Для наглядного представления данных из нескольких таблиц

Безопасность. Пользователи не видят некоторые данные из таблиц

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

Для создания сложных запросов.

55.Снимок - состояние БД на конкретный момент времени. Представление БД на конкретный момент времени, доступное только для чтения.

ТРАНЗАКЦИИ

56.Транзакция - последовательность операций, выполняемая БД и переводяща ее из одного соглассованного состояния в другое соглассованное состояние.

Свойства транзакций

Атомарность - целиком выполняется или целиком не выполняется.

Согласованность - БД в согласованном состоянии до и после транзакции.

Изолированность - конкурирующие за доступ к данным транзакции выполняются изолированно друг от друга.

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

Варианты завершения транзакций

Транзакция заканчивается двумя возможными способами - фиксацией или откатом.

Фиксация транзакции выполняется при успешном завершении транзакции(COMMIT).

Откат транзакции выполняется при неуспешном завершении транзакции. После отката БД возвращается в состояние до начала транзакции(ROLLBACK).

Типы блокировок

Монопольная(Эксклюзивная, X-блокировка) - никакая другая команда не может прочитать данные.

Блокировка с разделенным доступом(Shared, S-блокировка) - возможно совместное чтение данных несколькими транзакциями, но нельзя вносить изменения.

Объекты блокировок

БД, файлы БД, тыблицы БД, страницы, отдельные строки таблиц, отдельные поля, индексы, закоголовки и другие объекты.

РАСПРЕДЕЛЕННЫЕ БД(РБД)

66. Фрагментация - разбиение БД или таблицы на несколько частей и хранение этих частей на разных узлах РБД.

67.Реприкация - создание и хранение копий одних и тех же фрагментов БД на разных узлах РБД.

68.РБД - логически единая БД, разделенная на части, находящиеся на разных узлах, связанных сетью. Каждый узел может иметь свое ПО и группу пользователей. СУРБД - система управления БД.

Принципы РБД

Главный принцип - для пользователей РБД должна выглядеть обычной БД.

Локальная независимость - узлы в РБД независимы(автономны) Все операции на узле контролируются этим же узлом.

Отсутствие опоры на центральный узел. Все узлы равны.

Непрерывное функционирование - более высокая доступность и надежность.

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

Независимость от фрагментации.

Независимость от реприкации.

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

Управление распределенными транзакциями.

Аппаратная независимость.

Независимость от ОС.

Независимость от сети - возможность поддерживать множество различных узлов.

Независимость от типа СУБД.

СЕТЕВАЯ МОДЕЛЬ ДАННЫХ

Сетевая модель данных - логическая модель данных, являющаяся расширением иерархической модели.

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

Операции выборки данных.

ИЕРАРХИЧЕСКАЯ МОДЕЛЬ ДАННЫХ

ТЕМПОРАЛЬНЫЕ БД

76.Темпоральная БД(Временная БД) - БД, хранящая темпоральные данные.

Темпоральные данные - данные которые явно или неявно связаны с определенными датами или промежутками времени.

Темпоральная БД - БД в которой поддерживается какой0либо аспект времени, не считая времени определяемого пользователем.

OLAP

78.OLAP(OnLine Analytical Processing = Аналитическая обработка данных в режиме прямого доступа) - технология обработки данных, заключающаяся в подготовке суммарной информации на основе больших массивов данных, структурированных по многомерному принципу.

Команда SELECT языка SQL

Команда выборки данных:

SELECT<выражение> FROM<таблица> [WHERE <условие>] - основа

[GROUP BY <выражение>] -группировка

[HAVING <условие>] - проверка условия для группировки

[ODER BY <выражение>] - сортировка (asc - по возрастанию, desc - по убыванию).

Для исключения повторяющихся строк в выбоке необходимо писать DISTINCT после SELECT.

ОБЩИЕ ОПРЕДЕЛЕНИЯ

1.БД - совокупность данных организованных по определенным правилам.

2. СУБД - набор программных и языковых средств для ведения БД.

Свойства современных СУБД

Надежность

Параллельность

Мощность

Масштабируемость

Безопасность

4.Модель данных - это совокупность трех элементов:

структура данных

ограничения целостности

операции над данными

Различают следующие модели данных:

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

Сетевая модель данных

Иерархическая модель данных

Объектно ориентированная модель данных

РЕЛЯЦИОННАЯ МОДЕЛЬ ДАННЫХ

5.Реляционная модель данных - от слова relation(отношение), таблица - это одно из возможных визуальных представлений отношения.

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

6.Домен - совокупность однотипных элементов.

7.Атрибут - именнованный домен: Di = dom(Ai);

8.Схема отношения - конечное множество атрибутов: R(A1,..,An);

9.Отношение - конечное подмножество множества декартового произведения всех доменов соответствующих атрибутам, входящим в схему отношения: D = D1x,..,xDn; r(R) \in D; r(R) = (t1,..,tm);

10.Кортеж - элемент отношения: t = {d1,..,dn};

11.Кардинальное число отношения(m) - количество кортежей в схеме отношения.

12.Степень отношения(n) - количество атрибутов в схеме отношения.

13.Ключ отношения - минимальная совокупность атрибутов уникально идентифицирующая кортеж: r(R), k \in R;

1)\all t1!= t2 \in r(R) => t1(k)!= t2(k); 2)\notexist k' \in k

14.Потенциальный ключ - атрибуты, которые можно выбрать в качестве ключа.

15.Первичный ключ отношения - ключ выбранный в качестве основного из нескольких потенциальных ключей (Primary Key).

16.Внешний ключ отношения - совокупность атрибутов, принимающая значение ключа, на который она ссылается.(Foreign Key)

17.Первичные атрибуты - атрибуты, входящие в первичный ключ.

18.Вторичный ключ - любой потенциальный, непервичный ключ.

19.Простой ключ - состоит из одного атрибута.

20.Составной ключ - состоит из нескольких атрибутов.



Поделиться:


Последнее изменение этой страницы: 2017-01-27; просмотров: 665; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.117.182.179 (0.081 с.)