Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

ftd

.pdf
Скачиваний:
22
Добавлен:
16.03.2016
Размер:
13.91 Mб
Скачать

Сетевая модель данных

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

На рис. 6.4 изображена сетевая структура базы данных в виде графа.

Рис.6.4. Графическое изображение сетевой структуры

Примером сложной сетевой структуры может служить структура базы данных, содержащей сведения о студентах, участвующих в научноисследовательских работах (НИРС). Возможно участие одного студента в нескольких НИРС, а также участие нескольких студентов в разработке одной НИРС.

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

Рис.6.5. Пример сетевой структуры БД

Реляционная модель данных

Понятие реляционный (англ. relation — отношение) связано с разработками известного американского специалиста в области систем баз данных Е. Кодда.

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

Реляционная модель ориентирована на организацию данных в виде двумерных таблиц. Каждая реляционная таблица представляет собой двумерный массив и обладает следующими свойствами:

каждый элемент таблицы — один элемент данных;

все столбцы в таблице однородные, т.е. все элементы в столбце имеют одинаковый тип (числовой, символьный и т.д.) и длину;

каждый столбец имеет уникальное имя;

одинаковые строки в таблице отсутствуют;

порядок следования строк и столбцов может быть произвольным.

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

Табл. 6.1. Пример реляционной таблицы

№ личного

Фамилия

Имя

Отчество

Дата рождения

Группа

дела

 

 

 

 

 

 

 

 

 

 

 

16493

Сергеев

Петр

Михайлович

01.01.76

111

16593

Петрова

Анна

Владимировна

15.03.75

112

16693

Анохин

Андрей

Борисович

14.04.76

111

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

6.2.РЕЛЯЦИОННЫЙ ПОДХОД К ПОСТРОЕНИЮ ИНФОЛОГИЧЕСКОЙ МОДЕЛИ.

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

1. Понятие информационного объекта

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

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

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

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

Рассмотрим пример структуры и экземпляров информационного объекта Студент.

В информационном объекте Студент ключом является реквизит Номер (№ личного дела), к описательным реквизитам относятся: Фамилия (Фамилия студента), Имя (Имя студента). Отчество (Отчество студента). Дата (Дата рождения). Группа (№ группы). Если отсутствует реквизит Номер, то для однозначного определения характеристик конкретного студента необходимо использование составного ключа из трех реквизитов: Фамилия + Имя + Отчество. (Табл. 6.2)

 

 

 

 

 

 

Табл. 6.2

 

 

 

 

 

 

 

Структура

Номер

Фамилия

Имя

Отчество

Дата

Группа

 

 

 

 

 

 

 

Экземпляры

16493

Сергеев

Петр

Михайлович

01.01.76

111

информ.

 

 

 

 

 

 

16593

Петрова

Анна

Николаевна

15.03.75

112

объекта

 

 

 

 

 

 

Студент

16693

Анохин

Андрей

Борисович

14.04.76

111

 

 

 

 

 

 

 

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

2. Понятие нормализации отношений

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

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

Примеры

ТОВАР

110

компактного

преставления

 

 

информационных

КодТ

 

объектов

 

 

 

Пример представления информационного объекта в виде графа

Простой ключ

 

ПОСТАВКА

110

КодТ +NДок Ключ

Составной ключ

Рис. 6.6. Примеры представления информационного объекта

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

Кнормализации предъявляются следующие требования:

ИО должен содержать идентификатор-ключ (простой или составной);

Все описательные (неключевые) реквизиты должны быть взаимно независимы;

Каждый описательный реквизит должен функционально полностью зависеть от ключа ИО, т.е. каждому значению ключа соответствует только одно значение описательного реквизита;

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

Функциональная зависимость реквизитов — зависимость, при которой в экземпляре информационного объекта определенному значению ключевого реквизита соответствует только одно значение описательного реквизита.

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

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

Пример. Графическое изображение функциональных зависимостей реквизитов Студент показан на рис.6.7, на котором ключевой реквизит указан *.

Номер* Фамилия Имя Отчество Дата Группа

Рис. 6.7. Графическое изображение функциональной зависимости реквизитов

В случае составного ключа вводится понятие функционально полной зависимости.

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

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

3. Структурные связи

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

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

один к одному (1:1), одно-однозадачные реальные отношения;

один ко многим (1: М), одно-многозадачные реальные отношения;

многие ко многим (М:М), много-многозадачные реальные отношения. Рассмотрим эти типы связей на примере .

Пример. Дана совокупность информационных объектов, отражающих

учебный процесс в вузе:

СТУДЕНТ (Номер, Фамилия, Имя, Отчество, Пол, Дата рождения. Группа), СЕССИЯ (Номер, Оценка1, Оценка2, Оценка3, Оценка4, Результат), СТИПЕНДИЯ (Результат, Процент), ПРЕПОДАВАТЕЛЬ (Код преподавателя. Фамилия, Имя, Отчество).

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

Рис. 6.8 иллюстрирует указанный тип отношений.

А1 В1 А2

А3 В2

ИО ИО

А

В

Рис. 6.8. Связь «Один к Одному»

Примером связи 1:1 может служить связь между информационными объектами СТУДЕНТ и СЕССИЯ:

Каждый студент имеет определенный набор экзаменационных оценок в сессию.

СТУДЕНТ СЕССИЯ

При связи Один ко Многим (1:М) одному экземпляру информационного объекта А соответствует 0, 1 или более экземпляров объекта В, но каждый экземпляр объекта В связан не более, чем с 1 экземпляром объекта А.

Графически данное соответствие имеет вид, представленный на рис.6.9.

А1 В1

А2 В2

А3 В3

Главный ИО

 

Подчиненный ИО

 

 

 

А

В

Рис. 6.9. Связь «Один ко Многим»

Примером связи 1:М служит связь между информационными объектами СТИПЕНДИЯ и СЕССИЯ:

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

СТИПЕНДИЯ СЕССИЯ

Связь Многие ко Многим (М:М) предполагает, что в каждый момент времени одному экземпляру информационного объекта А соответствует 0, 1 или более экземпляров объекта В и наоборот. На рис. 6.10 графически представлено указанное соответствие.

Рис. 6.10. Связь «Многие ко Многим»

Примером данного отношения служит связь между информационными объектами СТУДЕНТ и ПРЕПОДАВАТЕЛЬ:

Один студент обучается у многих преподавателей, один преподаватель обучает многих студентов.

СТУДЕНТ ПРЕПОДАВАТЕЛЬ

4. Архитектура СУБД

Базы данных и программные средства их создания и ведения (СУБД) имеют многоуровневую архитектуру, представление о которой можно получить из рис. 6.11.

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

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

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

Логический уровень представления данных

Физический уровень

представления данных

Рис. 6.10. Представление архитектуры СУБД

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

5. Понятие информационно-логической модели

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

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

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

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

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

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

Преподаватель

Студент

 

Стипендия

 

 

 

Сессия

Рис.6.12. Пример информационно-логической модели

6. Понятие логической модели

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

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

Логическая структуры записи файла в описании содержит последовательность расположения полей записи и их основные характеристики

(табл. 6.3).

 

 

 

 

 

 

Табл.6.3

 

 

 

 

 

 

 

 

Имя таблицы-отношения

 

 

 

Атрибут (поле)

Признак

 

Формат поля

 

Обозначение

Наименование

ключа

тип

длина

 

точность

(имя)

 

 

 

 

 

 

Имя 1

 

 

 

 

 

 

 

 

 

 

 

 

 

….

 

 

 

 

 

 

 

 

 

 

 

 

 

Имя 2

 

 

 

 

 

 

 

 

 

 

 

 

 

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

Втабл. 6.4 приведен пример описания логической структуры записи файла (таблицы) СТУДЕНТ.

 

 

 

 

 

 

 

Табл. 6.4

 

 

Описание логической структуры

 

 

 

 

 

 

 

 

 

 

 

 

 

Имя файла: СТУДЕНТ

 

 

Поле

 

 

Признак

 

Формат поля

 

Обозначение

Наименование

 

ключа

Тип

Длина

Точность

Номер

№ личного

 

*

 

Симв.

5

 

 

дела

 

 

 

 

 

 

Фамилия

Фамилия

 

 

 

Симв.

15

 

 

студента

 

 

 

 

 

 

Имя

Имя

 

 

 

Симв.

10

 

 

студента

 

 

 

 

 

 

Отчество

Отчество

 

 

 

Симв.

15

 

 

студента

 

 

 

 

 

 

Дата

Дата

 

 

 

Дата

8

 

 

рождения

 

 

 

 

 

 

6.3. ФУНКЦИОНАЛЬНЫЕ ВОЗМОЖНОСТИ СУБД

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

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

В табл.6.5 приведены характеристики некоторых СУБД, являющихся

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

 

 

 

 

Табл. 6.5.

Характеристики СУБД

 

 

 

 

 

 

 

Наименование

dBASE IV

MS Access

MS FoxPro

Paradox

 

 

 

 

 

Производительность

4

3

1

2

 

 

 

 

 

Обеспечение целостности данных

нет

1

нет

2

 

 

 

 

 

Работа в многопользовательских

2

2

4

3

средах

 

 

 

 

 

 

 

 

 

Импорт-экспорт

2

1

1

1

 

 

 

 

 

Доступ к данным SQL

2

1

2

3

 

 

 

 

 

Возможности запросов и

 

 

 

 

инструментальные средства

3

3

1

4

разработки прикладных программ

 

 

 

 

 

 

 

 

 

Обеспечение безопасности

2

1

5

4

 

 

 

 

 

Производительность оценивается:

временем выполнения запросов,

скоростью поиска информации,

временем выполнения операций импортирования базы данных из других форматов,

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

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

На производительность СУБД оказывают влияние два фактора:

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

Производительность собственных прикладных программ сильно зависит от правильного проектирования и построения БД.

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

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

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