Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Тема 4 - Базы и хранилища данных.docx
Скачиваний:
1
Добавлен:
01.05.2025
Размер:
93.61 Кб
Скачать

Тема 4. Базы и хранилища данных

1. Основные этапы проектирования базы данных (БД), логическая и физическая модели данных, трехуровневая архитектура ANSI/SPARC.

2. Модели баз данных (иерархическая, сетевая реляционная и др.).

3. Формализованное описание отношений, ER-диаграмма.

Формализованное описание отношений

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

Схема отношения

Понятию схема отношения соответствует описание структуры двумерной таблицы (имена столбцов). Схемой отношения R называется перечень имен атрибутов (конечное множество имен атрибутов) данного отношения с указанием домена, к которому они относятся: SR = (A1, A2, A n), Ai Di n – арность схемы отношения. Исходные множества D1, D2, …, Dn являются доменами.

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

Каждому имени атрибута Ai соответствует допустимое множество значений, которые может принимать атрибут Ai. Это множество значений Di называется доменом атрибута Ai, i=1, n. По определению, домены являются непустыми конечными или счетными множествами.

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

Пусть D = D1∪ D2∪…∪Dn.

Отношением r со схемой R называется конечное множество отображений {t1, t2,…, tp} из множества R: {A1, A2, …, An} в множество D:{ D1∪ D2∪…∪Dn }, таких, что tk(Ai) ∈ Di, k=1, p; i=1, n.

Отображение tk называется k-ым кортежем, n – размерность кортежа.

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

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

Отметим следующие свойства отношения:

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

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

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

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

Два отношения, отличающиеся только порядком строк или порядком столбцов, будут интерпретироваться в рамках реляционной модели как одинаковые. Отношение R и отношение R1 одинаковы с точки зрения реляционной модели данных.

N-арным отношением R называют подмножество декартова произведения D1× D2× … ×Dn множеств D1, D2, …, Dn (n > 1), необязательно различных.

R D1 × D2 × … × Dn

где D1 × D2 × … ×Dn— полное декартово произведение.

Полное декартово произведение — это набор всевозможных сочетаний из n элементов каждое, где каждый элемент берется из своего домена.

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

Ключом (первичным ключом) отношения r со схемой R называется подмножество K={Ai1, Ai2, …, Aim} {A1, A2, …, An}, где {i1, i2, …, im} {1, 2, …, n}, такое, что любые два различных кортежа t1, t2 r (t1≠ t2) не совпадают по значениям множества K={Ai1, Ai2, …, Aim}.

Таким образом, достаточно знать значение кортежа на множестве K, чтобы однозначно его идентифицировать.

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

Текущие значения соответствующих отношений называются реляционной базой данных.

ER-диаграмма

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

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

В настоящий момент именно модель Чена "сущность—связь", или "Entity Relationship", предложенная в 1976 году стала фактическим стандартом при инфологическом моделировании бд. Общепринятым стало сокращенное название ER-модель, большинство современных CASE-средств содержат инструментальные средства для описания данных в формализме этой модели.

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

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

Основные понятия ER-диаграмм

Сущность объект, событие или концепцию, информация о которых должна сохраняться. Это класс однотипных объектов, информация о которых должна быть учтена в модели.

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

Каждая сущность должна иметь наименование, выраженное существительным в единственном числе, не носить "технических" наименований и быть достаточно важными для того, чтобы их моделировать. Пример сущностей - классы объектов как "Поставщик", "Сотрудник", "Накладная".

Экземпляр сущности - это конкретный представитель данной сущности.

Например, представителем сущности "Сотрудник" может быть "Сотрудник Иванов".

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

Объект, которому соответствует понятие сущности, имеет свой набор атрибутов характеристик, определяющих свойства данного представителя класса. При этом набор атрибутов должен быть таким, чтобы можно было различать конкретные экземпляры сущности. Атрибут сущности - это именованная характеристика, являющаяся некоторым свойством сущности. Примером - сущность Заказчик (но не Заказчики!) с атрибутами Номер заказчика, Фамилия заказчика и Адрес заказчика. Наименование атрибута должно быть выражено существительным в единственном числе (возможно, с характеризующими прилагательными).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]