Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Информационные системы. 1НФ – первая нормальная форма




ИНФОРМАЦИОННЫЕ СИСТЕМЫ И БАЗЫ ДАННЫХ

Принятые сокращения

ВВЕДЕНИЕ В ТЕОРИЮ БАЗ ДАННЫХ

Конспект лекций

 

1НФ – первая нормальная форма

2НФ – вторая нормальная форма

3НФ – третья нормальная форма

АИС – автоматизированная информационная система

АС – автоматизированная система

АСУ – автоматизированная система управления

ВТ – вычислительная техника

БД – база данных

БнД – банк данных

ИС – информационная система

МД – модель данных

НФ – нормальная форма

НФБК – нормальная форма Бойса-Кодда

ПО – предметная область

РБД – реляционная база данных

РМД – реляционная модель данных

СУБД – система управления базой данных

УО – универсальное отношение

ФЗ – функциональная зависимость

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

В реализации основополагающего принципа логистики доставки грузов «just-in-time» (точно в срок) при минимальных затратах трудовых и материальных ресурсов, первостепенное значение занимает раздел транспортной логистики, решение задач которой невозможно без широкого использования и развития систем электронного обмена и обработки данных.

Существует различие между понятиями «Данные» и «Информация».

«Данные» – сведения о некоторой сущности, зафиксированные в виде значений и хранящиеся на некоторых носителях – набор конкретных значений, параметров, характеризующих объект, ситуацию, другие факторы:

Петров Н.С., 20 руб. 03.07.2004

«Данные» не обладают определенной структурой, они становятся содержательной информацией тогда, когда им

после осмысленной обработки задается определенная структура,

происходит представление в нужное время в нужном месте.

Далее эти понятия будут подменять друг друга.

Основные идеи современной информационной технологии строятся на концепции Баз Данных (БД).

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

 

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

Создание искусственных систем по переработке информации и автоматизации управления стало возможным с появлением ЭВМ.

ИС (АИС) – система, реализующая автоматизированный сбор, обработку и манипулирование данными и включающая технические средства обработки данных, программное обеспечение и технический персонал.

Термины АСУ, ИС, АИС, АС в дальнейшем используются как синонимы.

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

Основная задача ИС – качественно удовлетворять информационные потребности своих пользователей.

ИС обеспечивает выполнение следующих функций:

1) надежное хранение информации в памяти ЭВМ;

2) выполнение специфических преобразований информации и вычислений;

3) предоставление пользователям удобного интерфейса.

 

Существуют две внутренние информационные причины создания таких систем.

1. Достижение человеческим обществом состояния, когда все население Земли вместе не может переработать возросшие потоки и количество информации (академик Глушков В.М., 70-е гг).

2. Противоречие между своевременностью и достоверностью информации в управлении: пусть объект находится в состоянии S0 в момент времени t0

(S0, t0) ––––––––à – (S1, t1)

Для выработки управляющего воздействия на объект необходимо собрать информацию i0. Но за время ее сбора объект перейдет в состояние (S1, t1), т.е. информация i0 уже недостоверна.

Применение ИС на базе ЭВМ сокращает это противоречие, приближая человека к созданию идеальных инструментов управления.

 

1.2 Основные понятия БД

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

Это могут быть: транспортное предприятие, ТЭК, диспетчерская служба аэропорта и т.д.

ПО представляется множеством фрагментов: для транспортного предприятия – службой главного механика, главного диспетчера, ОТЗ, бухгалтерией, ОК и т.д.

Впервые термин «БД» появился в 1962 г.

Примеры БД – записная книжка, картотека в библиотеке, данные бухучета и т.п.

ИС включает в себя БД и без нее не может быть построена.

БД является центральной частью ИС.

БД проектируется под конкретную ИС и обеспечивает данными процессы ИС.

ИС и БД часто используются как синонимы.

БД – именованная совокупность данных, отражающая состояние объектов и их отношений в рассматриваемой ПО (определение ГКНТ).

Другие определения:

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

БД – совокупность данных для машинной обработки, которая отражает информационную модель ПО на определенном уровне абстракции.

БД представляет собой описание состояния ПО на формализованном языке.

Задача БД – хранить все представляющие интерес для предприятия данные в одном месте таким способом, который заведомо исключает их избыточность.

Не всякий блок данных является БД.

БД обладает следующими качествами:

1) интегрированность, направленная на решение общих задач, т.е. интеграция данных, когда все данные накапливаются и хранятся централизованно (заработная плата – кадры);

2) взаимосвязанность;

3) модельность (т.е. структурированность, отражающая некоторую часть реального мира);

4) независимость описания данных от прикладных программ, поскольку данные и их описания хранятся совместно в БД; максимально возможная независимость программ от данных.

Для создания БД используются специальные программные инструментальные системы – СУБД.

СУБД – совокупность языковых и программных средств, предназначенных для создания, ведения и совместного использования БД многими пользователями (определение ГКНТ).

Основное назначение СУБД:

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

2) автоматическое отображение информационной модели в физическую БД на магнитных носителях ЭВМ;

3) создание и манипулирование данными (выбор, вставка, обновление, удаление и т.п.);

4) контроль целостности и непротиворечивости данных в БД.

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

Преимущество автоматизированных БД.

1) Возможность быстрого поиска необходимых сведений:

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

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

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

2) Компактность – ПЭВМ с винчестером может хранить тысячи документов.

3) Возможность генерирования отчетов, т.е. выдачи выбранной информации в требуемом виде.

Трехуровневая система организации БД включает в себя:

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

2) Концептуальный уровень – отражает обобщенную модель ПО (объектов реального мира), для которой создавалась БД.

3) Физический уровень (внутренняя) – собственно данные, расположенные на внешних носителях информации; приближена к технической среде, включает метод доступа к данным и т.п.

На втором уровне различают «фактографические» и «документальные» БД.

1) Фактографическая БД содержит сведения об объектах ПО

2) Документальная БД накапливает и обрабатывает произвольные текстовые документы.

МД (нет единого определения):

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

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

Различают сетевые, иерархические и реляционные МД.

Сетевые МД используют модель представления данных в виде произвольного графа.

В иерархических МД данные представляются в виде древовидной (иерархической) структуры.

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

 

1.3 Определения реляционной модели

Теоретическая основа РМД – теория отношений, основу которой заложили логики Чарльз Содерс Пирс (1839-1914, США) и Эрнст Шредер (1841-1902, Германия).

РМД предложена Эдвардом Коддом (IBM) в 1970. Им впервые сформулированы основные понятия и ограничения РМД. Он ограничил набор операций семью основными и одной дополнительной операцией.

Причины популярности РМД:

– простота и наглядность для пользователей-непрограммистов,

– серьезное теоретическое обоснование.

Основная структура данных РМД – отношение (relation – отношение, родство).

Домен – некоторое множество элементов (множество допустимых значений, которые может принимать объект по некоторому свойству – множество целых чисел; множество дат и т.п.).

Полное декартово произведение – D = D1 х D2 х...х Dn набор всевозможных сочетаний из n элементов, где каждый элемент берется из своего домена Di.

Пусть даны n множеств D1, D2,... Dn.

R есть отношение над этими множествами, если R есть множество упорядоченных n-кортежей (т.е. состоящих из n элементов, по одному из каждого домена Di) вида <d1, d2,... dn>, где d1 элемент из D1, d2 – элемент из D2, dn – элемент из Dn.

D1, D2,... Dn – домены отношения R.

R принадлежит D1 х D2 х...х Dn

 

Пример: <Авиакомпания, ТипВС, Маршрут>.

D1 – множество наименований АК;

D2 – наименований типов ВС;

D3 – наименований маршрутов

Отношение (Авиакомпания, ТипВС, Маршрут) состоит из кортежей, кортеж – из 3 элементов, каждый выбирается из своего домена.

Элементами отношения являются кортежи.

Порядок элементов в каждом кортеже один и тот же.

Порядок кортежей в отношении не существен.

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

Атрибут – вхождение домена в отношение; использование домена внутри отношения.

Возможно использование двух атрибутов из одного домена.

Степень (ранг) отношения – количество атрибутов в отношении.

Мощность Мощность отношения – число кортежей отношения.

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

Отношение – двумерная таблица при соблюдении определенных ограничивающих условий.

В этой таблице:

каждая строка есть кортеж,

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

Условия и ограничения, которые позволяют таблицы считать отношениями (таблица, представляющая отношение, обладает следующими свойствами):

1) нет одинаковых строк;

2) все строки имеют одну и ту же структуру – количество и названия атрибутов у всех записей одинаково (каждая строка представляет собой кортеж из n значений, принадлежащих n столбцам);

3) имена столбцов различны, а значения – однотипны;

4) порядок следования строк в таблице произвольный;

5) значения атрибутов атомарны – отношения не могут иметь в качестве компонент другие отношения;

6. Соблюдается ссылочная целостность для внешних ключей (см. ниже).

 

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

Сущность – объект любой формы, о котором надо хранить информацию в БД.

Пример:

множество студентов можно назвать сущностью Студент, множество типов ВС – Самолет, множество аэропортов – Аэропорт.

Атрибуты – свойства, характеризующие сущность.

Это – столбцы, имеют имена.

Сущность Студент: Номер, Фамилия, ДатаРожд, Группа;

Сущность Аэропорт: Название, Регион, КоличествоВПП;

Сущность ВС: ТипВС, Пассажировместимость, ВзлетныйВес, Дальность.

Для представления набора свойств объектов атрибуты интерпретируются столбцами отношений.

Множество допустимых значений атрибута интерпретируется соответствующим доменом.

Каждый кортеж отношения играет роль описания отдельного объекта из набора.

Само отношение играет роль описания всего набора объектов.

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

 

Сущность СТУДЕНТ

Номер Фамилия ДатаРожд Группа
  Иванов 11.01.84  
  Петров 15.02.83  

 

Сущность АЭРОПОРТ

Название Регион КоличествоВПП
Быково Московская обл.  
Курумоч Самарская обл.  

 

Сущность САМОЛЕТ

ТипВС Пассажировместимость ВзлетныйВес Дальность
Ту-154      
Як-42      

 

Отношение – динамическая модель некоторого реального объекта внешнего мира.

Экземпляр отношения – отражает состояние данного объекта в какой-то момент времени (листинг).

Схема отношения – список имен атрибутов отношения с указанием домена, к которому они относятся.

Если отношение называется R и имеет атрибуты A1, A2, … An, относящиеся к доменам D1, D2,... Dn, то схема отношения обозначается следующим образом:

R(A1, A2, … An), Ai Di, i = 1...n

Примеры:

СТУДЕНТ (Номер, Фамилия, ДатаРожд, Группа)

АЭРОПОРТ (Название, Регион, КоличествоВПП)

САМОЛЕТ (ТипВС, Пассажировместимость, ВзлетныйВес, Дальность).

Одной из возможных реализаций отношения в памяти ЭВМ является файл записей, формат которых соответствует схеме отношения.

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

Каждое отношение (таблица) в ЭВМ представляется в виде отдельного файла; все записи однородны. Между ними существует соответствие:

Предметный Математич. ТБД Физич.
Сущность Отношение Таблица Файл
Экз. Сущности Кортеж Строка Запись
Свойство Атрибут Столбец Поле

 

РБД содержит конечное множество экземпляров отношений.

Схему РБД можно представить в виде:

R1(A1.1, A1.2, … A1.n1);

R2(A2.1, A2.2, … A2.n2);

...

Rm(Am.1, Am.2, … Am.nm).

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

РБД – совокупность изменяемых во времени взаимосвязанных отношений различных, и возможно, меняющихся мощностей и степеней (изменение во времени – включение, удаление, коррекция), содержащих всю информацию, которая должна храниться в БД.

Часто встречается случай, когда внутри одного отношения существует атрибут, значения которого однозначно идентифицируют кортежи отношения.

Пример: название аэропорта – все кортежи отношения содержат различные значения Названия; они могут быть использованы для того, чтобы отличать кортежи один от другого.

Этот атрибут (первичный ключ для этого отношения) однозначно идентифицирует отдельный объект.

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

Один атрибут – специальный случай.

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

Т.о., каждое отношение имеет (возможно, составной) первичный ключ.

Первичный ключ – атрибут или набор атрибутов, который полностью и однозначно определяет значения всех остальных атрибутов отношения.

В отношении не должно быть строк с одинаковыми ключами, т.е. не должно быть дублирования объектов.

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

Пример: паспорт студента, номер его зачетной книжки

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

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

Не ключевой атрибут – атрибут, не входящий в состав ни одного возможного ключа.

Не ключевые атрибуты функционально зависят от этого ключа.

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

Связи между отношениями поддерживаются неявным образом:

– одно отношение выступает как основное (родительское), другое в роли подчиненного (дочернего);

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

В основном (родительском) отношении это – первичный ключ.

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

Атрибут отношения R1 является внешним ключом, если он не первичный ключ отношения R1, но его значения являются значениями первичного ключа некоторого отношения R2.

 

Пример:

ФАКУЛЬТЕТЫ(НомерФак, Название, Декан) и КАФЕДРЫ(Каф, Ауд, Телефон, НомерФак)

В основном (родительском) отношении ФАКУЛЬТЕТЫ первичный ключ – атрибут НомерФак. В подчиненном (дочернем) отношении КАФЕДРЫ для моделирования связи присутствует атрибут НомерФак, соответствующий первичному ключу НомерФак отношения ФАКУЛЬТЕТЫ.

 

Пример:

КАФЕДРЫ(Каф, Ауд, Телефон, НомерФак) и ПРЕПОДЫ(ФИО,Долж,Стаж,Каф)

В основном (родительском) отношении КАФЕДРЫ первичный ключ – атрибут Каф.

В подчиненном (дочернем) отношении ПРЕПОДЫ для моделирования связи присутствует атрибут Каф, соответствующий первичному ключу Каф отношения КАФЕДРЫ.

 

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

В отношении ФАКУЛЬТЕТЫ обязательно должны присутствовать строки, соответствующие значениям атрибута НомерФак в отношении КАФЕДРЫ – если для кафедры указан номер факультета, то этот факультет должен существовать!!!

В отношении КАФЕДРЫ обязательно должны присутствовать строки, соответствующие значениям атрибута Каф в отношении ПРЕПОДЫ. – если для преподавателя указан кафедра, то эта кафедра должна существовать!!!

 

Для представления данных отношение используется двояко:

– для представления набора объектов (т.е. группы подобных объектов);

– для представления связей между наборами объектов.

Система БД должна иметь возможность представлять два типа объектов – собственно «объекты» и «связи».

Между ними не существует принципиального различия; связь представляет собой просто специальный вид объекта.

В РБД связи между объектами представляются, так же как и сами объекты, т.е. кортежами в отношении.

Отношения в зависимости от содержания подразделяют на два класса.

Объектное отношение хранит данные об объектах (экземплярах сущности).

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

 

Пример:

БД Студент-Предмет содержит три типа информации:

1. О студентах: отношение СТУДЕНТ(НомерЗачетки, ФИО, ДатаРожд, Группа);

2. Об изучаемых предметах: отношение ПРЕДМЕТ (Название, Семестр, Кафедра);

3. О студентах и предметах: отношение ИЗУЧАЕТ (НомерЗачетки, Название, Оценка).

В отношении ИЗУЧАЕТ атрибуты НомерЗачетки и Название являются внешними ключами, связывающими объекты (студентов и предметы), атрибут Оценка функционально зависит от них (связи).

В отношениях СТУДЕНТ и ПРЕДМЕТ обязательно должны присутствовать строки, соответствующие значениям атрибутов Номер и Название в отношении ИЗУЧАЕТ.

 

Пример:

БД ВС-Аэропорт содержит три типа информации:

1. О Воздушных судах: отношение САМОЛЕТ(ТипВС, Пассажировместимоть, ВзлетныйВес, Дальность);

2. Об Аэропортах: отношение АЭРОПОРТ (Название, Регион, КоличествоВПП);

3. О Воздушных судах и Аэропортах: отношение ЛЕТАЕТ(ТипВС, Название, Билеты).

В отношении ЛЕТАЕТ атрибуты ТипВС и Название являются внешними ключами, связывающими объекты (воздушные суда и аэропорты), атрибут Билеты функционально зависит от них (связи).

В отношениях САМОЛЕТ и АЭРОПОРТ обязательно должны присутствовать строки, соответствующие значениям атрибутов ТипВС и Название в отношении ЛЕТАЕТ.

 

1.4 Операции над отношениями

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

Алгебра – множество объектов с заданной на нем совокупностью операций, замкнутых относительно этого множества, называемого основным множеством.

1.4.1 Теоретико-множественные операции реляционной алгебры

1) Объединение двух отношений – отношение, содержащее множество кортежей, принадлежащих либо первому, либо второму исходным отношениям, либо обоим отношениям одновременно.

R3 = R1 R2

Пример

R1 (Ту-154, Ту-134, Як-40) – ВС первой авиакомпании;

R2 (Ту-154, Ту-134, Як-42, Л-410) – ВС второй авиакомпании

R3 (Ту-154, Ту-134, Як-40, Як-42, Л-410) – ВС двух авиакомпаний.

2) Пересечение двух отношений – отношение, содержащее множество кортежей, принадлежащих одновременно и первому и второму отношениям.

R3 = R1 R2

R3 - (Ту-154, Ту-134).

3) Разность двух отношений – отношение, содержащее множество кортежей, принадлежащих первому и не принадлежащих второму.

R3 = R1 \ R2 R3 (Як-40).

R3 = R2 \ R1 R3 (Як-42, Л-410).

1 и 2 операции – коммутативные операции (результат не зависит от порядка аргументов в операции); 3 – несимметричная операция (результат различен для разного порядка). Все они применимы только к отношениям с эквивалентными схемами.

Конкатенация (сцепление) кортежей – кортеж, полученный добавлением значений второго в конец первого:

c = <c1, c2, …, cn> и q = <q1, q2, …, qm>, (c, q) = <c1, c2, …, cn, q1, q2, …, qm>

4) Расширенное декартово произведения отношения R1(A1, A2, …, An) степени n и отношения R2 (B1, B2, …, Bm) степени m есть отношение R3(A1, A2, …, An, B1, B2, …, Bm) степени n+m, содержащее кортежи, полученные сцеплением каждого кортежа отношения R1 с каждым кортежем отношения R2.

R3 = R1 R2

R1 (ТипВС,ПассВм) R2(АК) R3(ТипВС,ПассВм,АК)

Ту-154 164 Пулково Ту-154 164 Пулково

Ту-134 76 Самара Ту-154 164 Самара

Як-42 120 Ту-134 76 Пулково

Ту-134 76 Самара

Як-42 120 Пулково

Як-42 120 Самара

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

1) Горизонтальный выбор (операция фильтрации) заданный на отношении R.

α - булевское выражение, составленное из термов сравнения с помощью связей И, ИЛИ, НЕ и, возможно, скобок. Может быть сколь угодно сложным.

Терм А ос а

ос – операция сравнения = <> > >= < <=

А – имя атрибута из домена,

а – константа из этого же домена,

АК=”Пулково”

ПассВм > 100

АК=”Самара” И ПассВм <= 100

Терм А ос В

А и В – имена атрибутов из одного и того же домена.

Откуда <> Куда

Результат – отношение R[α(r)], включающее кортежи из исходного отношения, для которых истинно условие выбора или фильтрации.

Является одной из основных при работе с РБД.

 

2) Проектирование.

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

R[B] = {r[B]}

Все дублирующие кортежи удаляются из результирующего отношения (по определению отношения).

R1(ТипВС, ПассВм, АК) R2 = R1[Тип, ПассВм]

Ту-154 164 Пулково Ту-154 164

Ту-154 164 Самара Ту-134 76

Ту-134 76 Пулково Як-42 120

Ту-134 76 Самара

Як-42 120 Пулково

Як-42 120 Самара

 

3) Условное соединение

Операция выполняется над двумя отношениями R1 и R2.

В каждом отношении R1 и R2 выделяются атрибуты X и Y (оба атрибута принадлежат одному и тому же домену), по которым проводится соединение. Результирующее отношение R3 включает в себя кортежи, которые являются конкатенаций кортежа, принадлежащего R1, и кортежа, принадлежащего R2, для которых выполняется условие x ос y (ос = <> >= <= > <); (x – значение X из R1, y – значение Y из R2)

 

R1(ТипВС, АК) R2(ТипВС, ПассВм)

Ту-154 Пулково Ту-154 164

Ту-134 Кр.Авиалинии Ту-134 76

Як-42 Самара Л-410 12

Ан-24 44

Як-42 120

 

Условие соединения R1.ТипВС= R2.ТипВС

R3(ТипВС, АК, ПассВм)

Ту-154 Пулково 164

Ту-134 Кр.Авиалинии 76

Як-42 Самара 120

 

1) и 2) – унарные операции, 3) – бинарная

 

4) Деление

Операция между бинарным отношением (делимое) и унарным (делитель), в результате которой получается унарное (частное)

Делимое А имеет атрибуты X,Y: А (X,Y)

Делитель В имеет атрибут Z: В(Z)

Y и Z принадлежат одному домену.

Деление дает частное С, определенное на том же домене, что и X: С(X)

Значение x появится в частном тогда и только тогда, когда пара <x, y> появится в А для всех значений y, содержащихся в В.

Частное состоит из тех x-компонентов делимого, где соответствующие y-компоненты делимого включают каждый компонент делителя.

А (X,Y) B(Z) B(Z) B(Z)

s1 p1 p1 p2 p1

s1 p2 p4 p2

s1 p3 C(X) p3

s1 p4 s1 C(X) p4

s1 p5 s2 s1 p5

s1 p6 s4 p6

s2 p1

s2 p2 C(X)

s3 p2 s1

s4 p2

s4 p4

s4 p5

 

2 ПРОЕКТИРОВАНИЕ БД

Проектирование БД начинается с предварительной структуризации ПО:

1) объекты реального мира подвергаются классификации, фиксируется совокупность подлежащих отображению в БД типов объектов;

2) для каждого типа объектов фиксируется совокупность свойств, посредством которых будут описываться в БД конкретные объекты этого типа;

3) фиксируются виды взаимосвязей между объектами.

Затем решаются вопросы о том, какая информация об этих объектах должна быть представлена в БД, и как ее представить с помощью данных.

 

2.1 Требования к БД

В БД должно обеспечиваться:

1) поддержание целостности (непротиворечивость и корректность) данных в ходе обновления;

2) простое обновление данных;

3) приемлемые затраты памяти и быстродействие;

4) защищенность от несанкционированного доступа к данным;

5) удобные средства восстановления при сбоях.

 

2.2 Цели проектирования БД

Наиболее важные цели проектирования.

1. Обеспечение возможности хранения всех необходимых данных в БД – определение всех атрибутов для БД.

2. Исключение избыточности данных.

3. Нормализация отношений (для упрощения решения проблем, связанных с обновлением и удалением) – разбиение отношения на два или более

4. Сведение числа отношений БД к минимуму – разбиение желательно для исключения проблем, но неудобно для пользователя.

Цели 3 и 4 – противоречивы, нужен компромисс.

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

Атрибут Тип Длина Точность

...

(все атрибуты)

Схемы отношений, первичные ключи

 

2.3 Использование универсального отношения и проблемы, возникающие при этом

Два примера:

R1

Клиент Город Тел. Расст. Тариф Груз Упаковка Объем
Восток Уфа       Продукты Коробки  
Мебель Контейнер  
Запчасти Ящики  
Заря Казань       Продукты Коробки  
Запчасти Ящики  
Мебель Контейнер  
Маяк Уфа       Запчасти Ящики  
Продукты Коробки  
Мебель Контейнер  
Салют Казань       Продукты Коробки  

 

S1

Аэропорт УЕ ЗаПасс Тариф ТипВС Пасс-Вм ДУ Тяга Билеты
Алматы Алматы Да Да     Ил-96   ПС-90А 16.1  
Ту-204   ПС-90А 16.1  
Анапа Анапа Анапа Нет Нет Нет     Ил-96   ПС-90А 16.1  
Ту-154   НК-8-2 10.5  
ЯК-42   Д-36 6.5  
Баку Баку Да Да     Ту-154   НК-8-2 9.3  
Ту-204   ПС-90А 16.1  
Волгоград Нет     ЯК-42   Д-36 6.5  

Часть полей атомарны, часть – нет. Необходима реконструкция: требуется добавлять большой объем избыточных данных.

R1

Клиент Город Тел. Расст. Тариф Груз Упаковка Объем
Восток Восток Восток Уфа Уфа Уфа       Продукты Коробки  
Мебель Контейнер  
Запчасти Ящики  
Заря Заря Заря Казань Казань Казань       Продукты Коробки  
Запчасти Ящики  
Мебель Контейнер  
Маяк Маяк Маяк Уфа Уфа Уфа 553311 553311     Запчасти Ящики  
Продукты Коробки  
Мебель Контейнер  
Салют Казань       Продукты Коробки  

 

S1

Аэропорт УЕ ЗаПасс Тариф ТипВС Пасс-Вм ДУ Тяга Билеты
Алматы Алматы Да Да     Ил-96   ПС-90А 16.1  
Ту-204   ПС-90А 16.1  
Анапа Анапа Анапа Нет Нет Нет     Ил-96   ПС-90А 16.1  
Ту-154   НК-8-2 10.5  
ЯК-42   Д-36 6.5  
Баку Баку Да Да     Ту-154   НК-8-2 9.3  
Ту-204   ПС-90А 16.1  
Волгоград Нет     ЯК-42   Д-36 6.5  

Это – универсальные отношения (корректные отношения), включающие все атрибуты. Для малых БД (до 15...20 атрибутов) является отправной точкой при проектировании.

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




Поделиться с друзьями:


Дата добавления: 2015-05-09; Просмотров: 430; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.222 сек.