Главная

Категории:

ДомЗдоровьеЗоологияИнформатикаИскусствоИскусствоКомпьютерыКулинарияМаркетингМатематикаМедицинаМенеджментОбразованиеПедагогикаПитомцыПрограммированиеПроизводствоПромышленностьПсихологияРазноеРелигияСоциологияСпортСтатистикаТранспортФизикаФилософияФинансыХимияХоббиЭкологияЭкономикаЭлектроника






Специальные операции реляционной алгебры


Операция фильтрации

Первой специальной операцией реляционной алгебры является операция фильтрации (иначе, операция горизонтальный выбор или операция ограничения отношений).

 

Операцией фильтрации, или выбора, называется операция R[a], с помощью которой из отношения R получается отношение Rα (Rα = R[a]), включающее те кортежи исходного отношения, для которых истинно условие выбора или фильтрации:

Операция проектирования

Пусть R есть отношение, SR = (A1, ... , Аn) — схема отношения R.

Обозначим через В подмножество {Ai}; В Í {Аi}.

 

Операцией проектирования отношения R на набор атрибутов В, обозначаемой R[В], называется операция, результатом которой является отношение со схемой, соответствующей набору атрибутов В, SR[B] = В, содержащее кортежи, получаемые из кортежей исходного отношения R путем удаления из них значений, не принадлежащих атрибутам из набора.

Операция условного соединения

Следующей специальной операцией реляционной алгебры является операция условного соединения(иначе ее называют Ө-соединением).

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

 

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

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

 

Последней операцией, включаемой в набор операций реляционной алгебры, является операция деления.

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

Преимущества и недостатки распределенных СУБД

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

Преимущества Недостатки
Отображение структуры организации Повышение сложности
Разделяемость и локальная автономность Увеличение стоимости
Повышение доступности данных Проблемы защиты
Повышение надежности Усложнение контроля за целостностью данных
Повышение производительности Отсутствие стандартов
Экономические выгоды Недостаток опыта
Модульность системы Усложнение процедуры разработки базы данных

 

Проектирование БД

 

Основными целями проектирования являются:

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

- создание модели данных, способной поддерживать выполнение любых требуемых транзакций обработки данных;

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

 

Проектирование БД включает в себя:

- проектирование конкретных объектов, которые будут реализованы в базе данных. Например, это такие объекты, как таблицы, представления, индексы и хранимые процедуры, а также функции и пакеты;

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

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

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

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

Задача проектировщика – максимально эффективно выполнить работу в рамках этих ограничений.

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

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

- провести исследование предметной области,

- определить, что получат заказчики,

- количественно представить затраты, выгоды,

- построить график работ.

Если заказчика все предложенное устраивает, то проект продолжается.

Выполняется анализ – подробное исследование бизнес-процессов (функций) и информации, необходимой для выполнения этих функций, и формулируются требования к проектируемой системе. Результатом этапа является определение (схема) базы данных на основании модели сущностей, разработанной на этапе анализа и набор спецификаций модулей.

Схема базы данных содержит описания всех объектов базы данных: таблиц, представлений, столбцов, индексов, кластеров, ограничений, триггеров и т.д.

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

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

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

Если информационная система уже существовала, то необходимо рассмотреть вопрос о переносе данных, так как они могут быть полезны.

Основные задачи проектирования базы данных:

- выявить нереализуемые и необычные конструкции данных в модели “сущность – отношение” и в определениях сущностей;

- разрешить все дуги, супертипы и подтипы;

- выявить все первичные и внешние ключи;

- спроектировать и реализовать (если потребуется) денормализацию базы данных с целью ускорения обработки запросов в приложениях;

- определить, какие прикладные процессы необходимо реализовать в схеме базы данных как хранимые процедуры;

- выявить и реализовать ограничения, предназначенные для обеспечения целостности данных и реализации правил для данных;

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

- разработать стратегию индексирования и кластеризации;

- выполнить оценку размеров всех таблиц, кластеров и индексов;

- определить уровни доступа пользователей, разработать правила безопасности и аудита. Создать роли и синонимы для обеспечения многопользовательского доступа с согласованными уровнями полномочий доступа;

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



Последнее изменение этой страницы: 2016-06-09

headinsider.info. Все права принадлежат авторам данных материалов.