СУБД, а во втором — отдельный пакет программ в виде дополнения к
СУБД.
В настоящее время СД рассматривают как связующее звено в системе
ПО обработки данных, включающей в себя
процессор,
СУБД, языки запросов,
монитор телеобработки.
В полном объеме СД обязан:
-
поддерживать КМ, логическую, внутреннюю и внешнюю модели;
-
быть интегрированным с СУБД, поддерживать тестовые и рабочие версии хранимых описаний;
-
обеспечивать эффективный обмен информацией с СУБД и процесс изменения рабочей версии при изменении БД.
Словарь данных должен иметь свою
БД. Основные составляющие
БД словаря данных:
-
атрибут;
-
объект;
-
групповой элемент данных;
-
выводимый объект данных;
-
синонимы, т. е. атрибуты, имеющие одинаковое назначение, но различные идентификаторы;
-
омонимы, т. е. атрибуты с различным назначением, но с одинаковыми идентификаторами;
-
описание КМ, ЛМ, внешних и внутренних моделей;
-
описание, позволяющее пользователям формально и однозначно выбирать атрибуты для решения задач.
Контрольные вопросы и упражнения
-
Что такое система данных?
-
Определите предметную область, объект, атрибут (элемент данных), значения данных и постройте таблицы связи между ними.
-
Что такое идентификаторы объекта и ключевые атрибуты?
-
Что такое запись данных? Приведите примеры.
-
Что такое файл данных (набор данных)?
-
Приведите пример взаимно однозначного соответствия между прикладными программами логического проектирования и файлами данных.
-
Какие проблемы возникают при обработке данных с несколькими файлами?
-
Приведите известные определения базы данных (БД).
-
В чем сходство и различие между БД и файлом?
-
Приведите основные определения системы управления базами данных (СУБД).
-
Опишите основные функции СУБД и требования к ним.
-
В чем заключается информационная согласованность в САПР?
-
Что такое функция администрирования БД и кто такой администратор БД (АБД)? Какие функции выполняет АБД?
-
Что такое независимость данных?
-
Какие языки используются в БД?
-
Что такое концептуальная модель (КМ)?
-
Приведите определение логической, внешней, внутренней (физической) моделей.
-
Что такое независимость данных?
-
Опишите иерархическую модель данных (ИМД). Постройте пример.
-
Опишите сетевую модель данных (СМД) и постройте пример.
-
Опишите реляционную модель данных (РМД) и постройте пример.
Реляционная модель баз данных
Реляционная база данных, разработанная Э.Ф. Коддом (Е. F. Codd) в 1970 г., – это конечный набор конечных отношений (таблиц) вида рис. 10.3,б. Над отношениями можно осуществлять различные алгебраические операции. Тем самым теория реляционных баз данных становится областью приложения математической логики и современной алгебры и опирается на точный математический формализм.
Каждое отношение имеет свое имя; столбцы отношения соответствуют тому или иному атрибуту, имеющему имя и значения. Элементы отношения, соответствующие одной строке, составляют кортеж отношения ( рис. 10.3, б). Арность кортежа – число значений атрибутов в кортеже, т.е. число атрибутов в отношении [7,13, 31].
Схема отношения – список имен атрибутов вместе с именем отношения; так, для рис. 10.3,а схема отношения – ТРАНЗИСТОРЫ ( p, Iк max, Pк, Cк ), для рис. 10.3, б – ИМЯ ОТНОШЕНИЯ ( A, B, С, D ).
Домен – множество значений атрибутов (в том числе и только одного атрибута – один столбец). Вообще столбцы не обязательно являются поименованными, а порядок следования элементов в кортежах также несущественен.
Существует три подхода к анализу реляционных БД и формированию запросов в них: реляционная алгебра, реляционное исчисление на переменных-кортежах и реляционное исчисление на переменных- доменах.
В реляционных базах данных основные операции – включение, удаление, модификация и запрос данных – применяются к кортежам и доменам.
Для осуществления операции включения данных задаются новый кортеж и отношение, в которое он должен быть включен. Тогда значения нового кортежа образуют ключ файла включения данных.
При удалении данных должны быть заданы отношение и значения атрибутов, образующих ключ удаляемых кортежей.
При модификации данных задаются отношение, значения атрибутов ключа и новые значения для применяемых атрибутов. Преобразуются ключевые значения в значения полей. К файлу применяется процедура модификации.
Запрос в реляционных базах данных может быть сформулирован к одному или нескольким отношениям (таблицам). Например имеется запрос: указать типы всех транзисторов и их Pк, для которых Ск > 15 пФ. Тогда значение атрибута Ск = 15 пФ. Затем напечать
выдается новый
файл-
отношение 
. Могут быть более сложные запросы: например, определить мощности рассеивания транзисторов, для которых

, I
к max > 2а, С
к < 150 пФ и т. д. Тогда эти значения составляют
ключ, и
по ним составляется новое
отношение Р
к.
Все эти запросы реализуются с помощью специальных языков манипулирования данными, ряд из которых основан на реляционной алгебре.
Основные
операции реляционной алгебры приведены в табл. 11.1. В ней даны исходные отношения, результаты операций, а также в ряде случаев теоретико-множественное
представление операций. Первые пять операций являются основными, остальные – дополнительные, которые могут быть выражены через пять основных.
Объединение отношений 
– это множество кортежей (отношений), принадлежащих отношениям R, S или им обоим; отношения R и S должны иметь одинаковую
арность.
Разность отношений R – S – множество кортежей, принадлежащих R, но не принадлежащих S. Отношения R и S также должны иметь одинаковую
арность.
Декартово произведение отношений R x S – одна из основных операций
по затратам машинного времени при формировании запросов к реляционной
БД. При умножении отношений к каждому кортежу первого отношения ( R ) присоединяется каждый
кортежвторого отношения ( S ) –
конкатенация кортежей; при этом отношения R и S могут иметь одинаковую или различную
арность. При декартовом умножении
арности исходных отношений складываются, а количества кортежей – перемножаются.
Проекция отношения

–
операции выборки
по столбцам (атрибутам), приведенным в обозначении проекции.
Например,

—
отношение, составленное из атрибутов С и А отношения

—
отношение, составленное из 2-го и 3-го атрибутов отношения R, при этом
арность проекции равна числу имен в ее обозначении.
Селекция отношения

— операция выборки
по строкам (кортежам), удовлетворяющим формуле F. В формулу входят операнды, являющиеся константами или номерами (именами) атрибутов, арифметические
операторы сравнения:

и логические
операторы 
.
Например,

обозначает множество кортежей, в которых компоненты атрибута В равны f, или

обозначает множество кортежей, в которых компоненты 2-го атрибута больше компонентов 3-го атрибута и одновременно равны компоненты атрибутов А и D ).
Пересечение отношений

есть краткая
запись для отношения R – (R – S) и обозначает множество кортежей, принадлежащих одновременно R и S.
Частное отношений

— множество кортежей, содержащих r – s первых компонентов
кортежей отношения R, в которых остальные (s) компонентов принадлежат отношению S.
Соединение (

-
соединение) отношений 
— это
селекция (с формулой

) декартова произведения отношений R и S:
В частности,

означает, что сначала надо выполнить
декартово произведение отношений R и S, а затем в новом отношении выполнить селекцию
по формуле А < D.
Эквисоединение отношений

— это

-соединение, если в формуле

используются только равенства (см. таблицу 11.1, строку 9).
Естественное соединение 
— это
эквисоединение, которое выполняется для атрибутов отношений R и S с одинаковыми именами (см таблицу 11.1, строку 10). Так как для указанных атрибутов имена и значения полностью совпадают, то один из них в каждой паре в результирующем отношении устраняют.
Естественное соединение — одна из основных операций при формировании запросов к реляционной
БД.
Композиция отношений — это
проекция 
-соединения или проекции селекции декартова произведения.
По сути,
естественное соединение