Реляционная алгебра, реляционное исчисление - Банки и базы данных. Системы управления базами данных
Для работы с реляционными отношениями используется аппарат реляционной алгебры, предложенный Ф. Э. Коддом. Этот аппарат мог возникнуть потому, что в теории реляционных отношений доказывается, что множество отношений всегда замкнуто относительно некоторого набора операций, образуя, таким образом, вместе с этими операциями абстрактную алгебру. Это свойство и было использовано при разработке языка манипулирования данными, получившего название реляционной алгебры.
Операции реляционной алгебры Кодда делятся на основные теоретико-множественные и специальные реляционные. В первую группу операций входят классические операции теории множеств: объединение, пересечение, разность и расширенное декартово произведение. Вторая группа операций разработана непосредственно для решения задач манипулирования данными и в нее входят операции выборки (фильтрации, горизонтального выбора), проекции, деления и соединения (условного соединения или соединения по условию).
Рассмотрим сначала основные операции реляционной алгебры.
Объединением двух отношений, имеющих одинаковые схемы, называется отношение, множеством кортежей которого являются все кортежи исходных отношений.
Пересечением двух отношений, имеющих одинаковые схемы, называется отношение, множеством кортежей которого являются кортежи одновременно первого и второго отношений.
Разностью двух отношений, имеющих одинаковые схемы, называется отношение, множеством кортежей которого являются кортежи, принадлежащие первому отношению и не принадлежащие второму. В отличие от операций объединения и пересечения операция разности не является коммутативной.
Рассмотренные операции реляционной алгебры применимы только к совместимым отношениям, то есть к отношениям, имеющим эквивалентные схемы. В отличие от них, операция расширенного декартова произведения не накладывает никаких условий на схемы исходных отношений, поэтому она может быть выполнена над любыми двумя отношениями.
Для определения операции расширенного декартова произведения необходимо предварительно определить операцию сцепления двух кортежей. Сцеплением двух кортежей называется кортеж, который получается путем добавления атрибутов второго из сцепляемых кортежей непосредственно за последним атрибутом первого.
Расширенным декартовым произведением двух отношений со степенями m и n называется отношение степени m+n, кортежи которого получаются сцеплением кортежей первого отношения с кортежами второго. Для того, чтобы получить произведение двух кортежей, необходимо, чтобы в них не было одинаковых имен атрибутов. Что же касается схем исходных отношений, то в отличие от рассмотренных ранее операций, они могут быть произвольными.
Операция произведения может считаться симметричной в том смысле, что она допускает возможность перестановки атрибутов в отношении. Достаточно часто эта операция используется для получения отношения, характеризующего все возможные комбинации между элементами отдельных множеств. Однако при этом сама по себе эта операция достаточно редко имеет самостоятельное значение. Результат, получаемый с ее помощью, является промежуточным и требует дальнейшей обработки.
Теперь дадим определения специальных операций.
Выборкой отношения по условию w является новое отношение с той же самой схемой, кортежи которого удовлетворяют условию w. В качестве условия выступают имена атрибутов, логические операции и операции сравнения, константы.
Проекцией отношения на подмножество его атрибутов является отношение, содержащие эти атрибуты и все кортежи исходного отношения, в которых содержатся значения данных атрибутов.
При операции проектирование запрещается указывать одинаковые атрибуты. Операция проектирования используется для получения требуемых характеристик объекта. Зачастую эта операция, так же как и операция расширенного декартова произведения, используется в качестве промежуточного шага (главным образом, в операциях выборки). Самостоятельное значение эта операция имеет, в основном, на заключительном этапе вычислений для получения результата запроса.
Частными случаями операции проекции являются операция тождественной проекции (результатом ее выполнения является исходное отношение) и операция пустой проекции (ее результатом является пустое множество).
Операция соединения отношений выполняется над двумя отношениями. Соединением двух отношений по условию w является отношение, получаемое путем декартова произведения данных отношений с последующим применением к полученному результату операции выборки по условию w.
Операцию деления можно определить следующим образом. Пусть имеются два отношения R1 и R2, А - подмножество множества атрибутов отношения R1, В - подмножество множества атрибутов обоих отношений. Делением отношения R1 на отношение R2 по общему подмножеству атрибутов В является отношение, состоящее из множества атрибутов А и содержащее набор таких кортежей а, что в отношении R1 имеются наборы кортежей а и b, где набор кортежей b является множеством значений подмножества В отношения R2.
Операция деления используется в основном тогда, когда необходимо провести сравнение некоторого множества характеристик атрибутов отношений. Вообще говоря, эта операция является достаточно сложной для ее абстрактного представления, и она всегда может быть заменена сочетанием других операций реляционной алгебры.
Необходимо отметить, что предложенный Коддом набор операций реляционной алгебры имеет ряд недостатков. Действительно, эти операции являются избыточными, поскольку минимальный необходимый набор составляют пять операций - объединение, разность, произведение, выборка и проекция. Остальные три операции можно определить через них.
Кроме того, операций реляционной алгебры недостаточно для построения реальной СУБД. Поэтому Дейтом были предложены дополнительные операции - переименования, расширения, подведения итогов, присвоения, вставки, обновления, удаления, сравнения.
Операция переименования предназначена для изменения имени атрибута отношения. Ее расширенным вариантом является операция множественного переименования, которая позволяет одновременно изменять имена нескольких атрибутов в отношении.
Применение операции расширения приводит к возникновению нового отношения, содержащего полный набор атрибутов исходного отношения плюс новый дополнительный атрибут, значения которого получаются путем некоторых вычислений. Как частный случай, операция расширения может использоваться и для переименования атрибута. Операция множественного расширения позволяет одновременно добавлять в исходное отношение несколько новых вычисляемых атрибутов.
Операция подведения итогов используется для выполнения неких групповых вычислений. Ее результатом является отношение, содержащее список части атрибутов исходного отношения, а также новый атрибут, который вычисляется. Таким образом, при выполнении операции подведения итогов фактически выполняется проецирование исходного отношения на часть атрибутов, а затем каждый кортеж проекции дополняется новым вычисляемым атрибутом. Так же как и в предыдущих случаях, данная операция дополняется операцией множественного подведения итогов.
Операции присвоения, вставки, обновления и удаления предназначены для изменения тела исходного отношения. С помощью этих операций можно удалять и добавлять атрибуты и кортежи в исходном отношении, заменять значения атрибутов на новые, присваивать атрибутам вычисляемые значения
Операция реляционного сравнения используется для сравнения значений атрибутов в двух отношениях.
Все перечисленные операции обладают одним общим свойством - свойством замкнутости, которое заключается в том, что результатом выполнения любой из этих операций является реляционное отношение, которое далее может вновь участвовать в любой другой реляционной операции.
И, наконец, при использовании операций реляционной алгебры необходимо придерживаться следующих правил:
- 1. Так же как и в обычной алгебре, в реляционной алгебре определен приоритет выполнения операций, который всегда нужно учитывать при записи выражений. При необходимости изменения порядка производимых вычислений используются скобки. 2. Одно и то же выражение может быть записано с помощью различных комбинаций операций реляционной алгебры. Это позволяет зачастую упрощать выражения. 3. Операции реляционной алгебры могут производиться как над одним, так и над двумя отношениями. В первом случае они называются унарными, во втором - бинарными. При выполнении бинарных операций реляционной алгебры следует помнить о совместимости исходных отношений: при выполнении действий над двумя отношениями необходимо следить за эквивалентностью их схем, степеней и в нужных случаях перед выполнением тои либо иной операции совмещать исходные отношения (в частности, менять названия атрибутов).
В заключение отметим, что в реляционной алгебре все действия выполняются над отношениями, и результатом всех выполненных операций также являются отношения. В этом контексте любой формализованный язык реляционной алгебры (в качестве примера можно привести язык запросов ISBL - Information System Base Language) следует считать процедурным - искомое отношение вычисляется при выполнении последовательности реляционных операторов. Эти операторы состоят из операндов (отношений) и самих реляционных операций.
В отличие от языков реляционной алгебры существуют языки реляционного исчисления, которые являются непроцедурными и используются для построения запросов к БД, содержащих в себе лишь информацию о желаемом результате. Другими словами, вместо записи в явном виде набора операций, необходимого для получения искомого результата, указывается только необходимый набор свойств этого результата без конкретизации процедуры его получения. К языкам этого типа прежде всего относится SQL.
Похожие статьи
-
Структура SQL - Банки и базы данных. Системы управления базами данных
Широкое развитие информационных систем и связанная с этим унифицированность информационного пространства привело к необходимости создания стандартного...
-
Модели транзакций - Банки и базы данных. Системы управления базами данных
Под транзакциями понимаются действия, производимые над базой данных и переводящие ее из одного согласованного состояния в другое согласованное состояние....
-
Инфологическое моделирование - Банки и базы данных. Системы управления базами данных
Инфологическое проектирование является вторым этапом проектирования БД, который следует непосредственно после анализа предметной области. Эта стадия...
-
Запросы на выборку - Банки и базы данных. Системы управления базами данных
Запросы используются для получения пользователем информации, содержащейся в БД, в удобном для него виде. Результат запроса отображается для пользователя...
-
Даталогическое проектирование - Банки и базы данных. Системы управления базами данных
Даталогической моделью БД называется модель логического уровня, построенная в рамках конкретной СУБД, в среде которой проектируется БД. Описание...
-
Целостность БД - Банки и базы данных. Системы управления базами данных
Банк база данный case технология Понятие целостности является одним из основополагающих в теории БД. Любая БД содержит в себе информацию об объектах...
-
Построение реляционной схемы БД - Банки и базы данных. Системы управления базами данных
В основе реляционной модели БД лежит понятие отношения. Под отношением в этой модели понимается двумерная таблица данных. Строки таблицы называются...
-
Создание представлений - Банки и базы данных. Системы управления базами данных
Представлением (View) называется виртуальная таблица, отображающая данные, получаемые из реальных таблиц БД, а также из других представлений....
-
Физические модели БД - Банки и базы данных. Системы управления базами данных
Под физической моделью БД понимается способ размещения данных на устройствах внешней памяти и способ доступа к этим данным. Каждая СУБД по-разному...
-
Уровни и типы моделей БД - Банки и базы данных. Системы управления базами данных
Любая БД отражает информацию об определенной предметной области. В зависимости от уровня абстракции, на котором представляется предметная область,...
-
Сетевая модель данных, Реляционная модель данных - Система управления базами данных
Отличие сетевой структуры от иерархической заключается в том, что каждый элемент в сетевой структуре может быть связан с любым другим элементом (рис. 8)....
-
Защита информации в БД - Банки и базы данных. Системы управления базами данных
Целью защиты информации является обеспечение безопасности ее хранения и обрабатывания. Процесс построения эффективной защиты начинается на начальных...
-
CASE-технологии - Банки и базы данных. Системы управления базами данных
В последнее время широкое распространение получила технология автоматизированного проектирования информационных систем (ИС) и программных продуктов,...
-
Определение и типология банков данных - Банки и базы данных. Системы управления базами данных
В основе решения практически любой задачи лежит обработка определенной информации. Система обработки информации, в том числе и автоматизированная с...
-
Настройка и администрирование СУБД - Банки и базы данных. Системы управления базами данных
Для успешного функционирования разработанной ИС недостаточно выбора СУБД и сервера БД. В процессе эксплуатации всегда на разных этапах приходится...
-
Основные термины теории баз данных - БД (База данных) - совокупность специальным образом организованных данных, хранимых в памяти вычислительной системы...
-
Распределенная обработка данных - Банки и базы данных. Системы управления базами данных
В современных условиях работа пользователя с небольшой по объему БД, расположенной на одном компьютере, в монопольном режиме является нехарактерной....
-
Информационные объекты и их связи - Система управления базами данных
Понятие информационного объекта Информационный объект - описание некоторой сущности (реального объекта, явления, события) в виде совокупности логически...
-
CoDeSys -- универсальный инструмент разработки прикладных программ для программируемых логических контроллеров на языках стандарта IEC 61131-3. Данный...
-
Структура и процесс функционирования системы управления базами данных - Разработка базы данных
СУБД является прикладным программным обеспечением, предназначенным для решения конкретных прикладных задач и выполнения системных функций, расширяющих...
-
Заключение - Разработка системы управления базой данных "Судоходство"
Информационные технологии прочно вошли в нашу жизнь. Применение ЭВМ стало обыденным делом, хотя совсем еще недавно рабочее место, оборудованное...
-
В современной технологии баз данных предполагается, что создание базы данных, ее поддержка и обеспечение доступа пользователей к ней осуществляются...
-
Структурированный язык запросов SQL - Система управления базами данных
Запрос представляет собой специальным образом описанное требование, определяющее состав производимых над БД операций по выборке, удалению или модификации...
-
Этапы проектирования и создания БД - Система управления базами данных
При разработке БД можно выделить следующие этапы работы. I этап. Постановка задачи. На этом этапе формируется задание по созданию БД. В нем подробно...
-
Причины возникновения систем баз данных Основой решения большинства задач является обработка информации. Информация - это совокупность фактов,...
-
Введение - Система управления базами данных
Развитие средств вычислительной техники обеспечило для создания и широкого использования систем обработки данных разнообразного назначения....
-
Экономические показатели, используемые для оценки проекта призваны доказать или опровергнуть ожидания о планируемой выгоде. Наиболее распространенными в...
-
ИЕРАРХИЧЕСКАЯ МОДЕЛЬ ДАННЫХ ИМД основана на понятии деревьев, состоящих из вершин и ребер. Вершине дерева ставится в соответствие совокупности атрибутов...
-
Регистрация нового пользователя в системе возможна двумя способоами: 1) Самостоятельная регистрация пользователя; 2) Регистрация пользователя...
-
Базы данных - Система управления базами данных
Предметная область АИС "материализуется" в форме, хранимой в памяти ЭВМ структурированной совокупности данных, которые характеризуют состав объектов...
-
Объектно-ориентированная модель - Система управления базами данных
В объектно-ориентированной модели при представлении данных имеется возможность идентифицировать отдельные записи базы данных. Между записями и функциями...
-
Технология управленческого процесса в банке состоит по крайней мере из 2 частей: информационного процесса и связанного с принятием управленческих...
-
Многомерная модель - Система управления базами данных
Многомерный подход к представлению данных появился практически одновременно с реляционным, но интерес к многомерным СУБД стал приобретать массовый...
-
Концептуальный уровень, Внутренний уровень - Система управления базами данных
Концептуальное представление - представление всей информации БД в несколько более абстрактной форме по сравнению с физическим способом хранения данных....
-
Информационно-логические модели данных, Иерархическая модель - Система управления базами данных
Иерархическая модель Иерархическая структура представляет совокупность элементов, связанных между собой по определенным правилам. Графическим способом...
-
Типы СУБД - Система управления базами данных
По степени универсальности систем управления базами данных различают два вида - системы общего назначения и специализированные системы. СУБД общего...
-
Управляющим компонентом многих СУБД является ядро, выполняющее следующие функции: Хоменко А. Д. Основы современных компьютерных технологий /А. Д....
-
"Базы данных и СУБД", Понятие банка данных, базы данных и СУБД - Базы данных и СУБД
Понятие банка данных, базы данных и СУБД Существует множество различных систем управления базами данных, именуемые в последующем "СУБД", такие как: IMS,...
-
При использовании этого способа данные во всех консолидируемых областях должны располагаться идентично. Для консолидации следует выполнить следующие...
-
Для упрощения работы с трехмерной моделью на любом этапе проектирования и повышения ее наглядности в SolidWorks используется Дерево Построений (Feature...
Реляционная алгебра, реляционное исчисление - Банки и базы данных. Системы управления базами данных