4.3 Моделирование баз данных
Моделирование БД выполняется в соответствии с трехуровневой архитектурой СУБД, принятой в 1978 г. комитетом по стандартизации ANSI/SPARC (ANSI – Национальный институт стандартизации США; SPARC – Комитет планирования стандартов и меры). Трехуровневая архитектура СУБД включает в себя концептуальный, внутренний и внешний уровни.
Концептуальный уровеньдает представление о логической схеме БД.
Внутренний уровеньопределяет физический вид БД. Он связан со способами хранения информации на физических устройствах. На этом уровне выбирают физические устройства для хранения данных, методы доступа к БД для извлечения и обновления информации, политику поддержания или повышения быстродействия системы.
Внешний уровеньпредназначен для отражения частной логической структуры данных для отдельного приложения (задачи) или пользователя. На этом уровне поддерживается санкционированный доступ к БД. На состав и структуру данных, доступных в приложении, наложены ограничения, а также заданы допустимые процедуры обработки этих данных.
Начальным этапом моделирования является разработка инфологической (информационно-логической) модели предметной области, основной особенностью которой является ее полная независимость от СУБД и физической среды хранения данных.
Инфологическая модельпредставляет собой обобщенное неформальное описание будущей БД. Это описание выполняется с использованием естественного языка, математических формул, таблиц, графиков и других, понятных проектировщикам, средств. Инфологическая модель является человеко-ориентированной.
Далее разрабатываются последовательно даталогическая (концептуальная), физическая и внешняя модели БД, которые ориентированы на конкретную СУБД и их трехуровневую архитектуру.
Даталогическая (концептуальная) модельсоответствует концептуальному уровню архитектуры СУБД и представляет собойинтегрированныеконцептуальные требования всех пользователей к БД в данной предметной области. Она состоит из множества экземпляров различных типов данных, структурированных в соответствии с требованиями конкретной СУБД к логической структуре БД. Даталогическая модель отражает логические связи между атрибутами объектов вне зависимости от их содержания и среды хранения иможет быть реляционной, иерархической, сетевой, объектно-ориентированной и т.д. Даталогическую (концептуальную) модель еще называютсхемой данных. Она отображается в физическую память, образуя физическую модель БД.
Физическая модельсоответствует внутреннему уровню архитектуры СУБД и характеризует размещение БД на запоминающих устройствах, методы доступа к ним, технику формирования указателей, индексирования и другие средства поддержки связей между данными.
Внешняя модельсоответствует внешнему уровню архитектуры СУБД и является подмножеством концептуальной модели (подсхемой БД). Она отображает ту часть БД, которая необходима конкретному пользователю. Возможно пересечение внешних моделей по данным. На рисунке 4.4 дан пример соотношения между концептуальной моделью и внешними моделями
Рис. 4.4. Соотношение концептуальной и внешней моделей
Инфологическая модель «сущность – связь»
Основными конструктивными элементами инфологических моделей являются сущности, атрибуты (их свойства), ключи и связи между сущностями.
Сущность– это любой объект, информацию о котором необходимо хранить в БД. Сущностями в экономических системах могут быть готовые изделия, сотрудники, поставщики, заказы, города, денежные средства и т.д.
Сущность имеет тип и экземпляры. Типом является название сущности, отличающее одну сущность от другой, например, ГОРОДА. Экземпляр представляет собой конкретное значение этой сущности, например, г. Полоцк Витебской области.
Атрибут– поименованная характеристика сущности. В реляционной таблице атрибуту соответствует поле. Имя атрибута для конкретной сущности должно быть уникальным, но может быть одинаковым для различного типа сущностей. Примерами атрибутов для сущности ГОРОДА могут быть: название города, код АМТС (автоматической междугородной или международной телефонной связи), административное значение (областной или районный центр), расстояние до ближайшей железнодорожной станции.
Атрибут сам может выступать в качестве сущности. Примером может служить сущность КОДЫ АМТС с атрибутами: код АМТС, название города, страна.
Ключ– набор атрибутов сущности, по значениям которых можно найти требуемый экземпляр сущности.
Связь– ассоциирование двух или более сущностей.
Типы связей
Различают следующие типы связей между сущностями:
один к одному (1:1);
один ко многим (1:М, в ЭВМ представлена как 1:∞);
многие ко многим (М:М).
Связь один к одномуобозначает, что в каждый момент времени одному экземпляру сущностиAсоответствует один и только один экземпляр сущностиBи наоборот(Рис. 4.5).
Рис.4.5 Связь один к одному
Связь один ко многимимеет место в том случае, когда в каждый момент времени одному экземпляру сущностиAсоответствует ноль, один или более экземпляров сущностиB, но каждый экземпляр сущностиBсвязан только с одним экземпляром сущностиA(Рис. 4.6)
Рис. 4.6 Связь один ко многим
Связь многие ко многим, показывает, что в каждый момент времени одному экземпляру сущностиAсоответствует ноль, один или более экземпляров сущностиB, и наоборот – каждому экземпляру сущностиBсоответствует ноль, один или более экземпляров сущностиA (Рис. 4.7).
Рис. 4.7 Связь многие ко многим
ER- диаграммы
Инструментом графического представления инфологических моделей является язык ER-диаграмм (Entity-Relationship– сущность-связь).
В ER-диаграммах сущности изображаются прямоугольниками, ассоциациишестиугольниками, атрибуты –овалами, связи –линиямис обозначениемтипа связи.
Рассмотрим пример построения ER-диаграммы инфологической модели. Пусть модель описывает предметную область, отражающую командировки сотрудников фирмы. Все необходимые для включения в БД сведения, содержатся в сущностях, состав и атрибуты которых приведены в таблице 4.3 В столбце «Атрибуты» таблицы 4.3 курсивом показаны ключи.
Таблица 4.3 Сущности и атрибуты инфологической модели
Сущности | Атрибуты |
СОТРУДНИКИ | Фамилия (Фам), номер личного дела (НЛД), код ВУЗа (ВУЗ) |
ЛИЧНОЕ ДЕЛО | Номер личного дела, фамилия, характеристика 1 (Хар1) … характеристика N (ХарN) |
КОМАНДИРОВКИ | Фамилия, город, расходы |
ВУЗЫ | Код Вуза, наименование Вуза (НВ), код специальности (КС) |
СПЕЦИАЛЬНОСТИ | Код специальности, наименование специальности (НС) |
На рисунке 4.8 представлена инфологическая модель на языке ER-диаграмм
Рис. 4.8 ER-диаграмма инфологической модели БД
ER-диаграмма, изображенная на рисунке 4.8, удовлетворяет следующим условиям: сотрудники отдела могут ездить в разные города; каждый сотрудник может несколько раз быть в одном и том же городе; в один и тот же город могут ездить разные сотрудники; любая специальность может быть в любом вузе.
Преобразование ER- модели в реляционную модель данных
Процесс получения реляционной схемы базы данных из ER-диаграммы осуществляется по следующим правилам:
1. Каждая простая сущность превращается в отношение (таблицу). Простая сущность – это сущность, не являющаяся подтипом и не имеющая подтипов. Имя сущности становится именем отношения.
2. Каждый атрибут становится возможным столбцом с тем же именем. Столбцы, соответствующие необязательным атрибутам, могут содержать неопределенные значения.
3. Компоненты уникального идентификатора сущности превращаются в первичный ключ отношения. Если имеется несколько возможных уникальных идентификаторов, выбирается наиболее используемый идентификатор.
4. Атрибуты, имеющие типы связи M:1 (и 1:1) становятся внешними ключами.
5. В таблицах, построенных на основе ассоциаций, внешние ключи используются для идентификации участников ассоциации, а в таблицах, построенных на основе характеристик и обозначений, внешние ключи используются для идентификации сущностей, описываемых этими характеристиками и обозначениями.
6. Если в концептуальной схеме присутствовали подтипы, то возможны два способа:
а) все подтипы размещаются в одной таблице;
б) для каждого подтипа строится отдельная таблица.
Полученные таблицы должны удовлетворять требованиям:
каждая таблица состоит из однотипных строк и имеет уникальное имя;
строки таблицы обязательно отличаются друг от друга хотя бы единственным значением поля, что обеспечивает однозначную идентификацию любой строки;
таблицы имеют фиксированное число столбцов и их значений;
в каждой таблице на пересечении строки и столбца должно находиться только одно значение или ничего;
в столбцах таблицы размещаются однородные значения данных.
Важным этапом проектирования реляционной БД является обеспечение реляционной целостности данных.
Реляционная целостность данных– это система правил, используемых для поддержания связей между записями (строками) в связанных таблицах, а также для обеспечения защиты от случайного удаления или изменения связанных данных.
Существуют ограничения по условию целостности данных:
ограничение по сущностям– каждая строка должна отличаться от остальных ее строк значением хотя бы одного столбца;
ограничение по ссылкам – внешний ключ не может быть указателем на несуществующую строку той таблицы, на которую он ссылается.
Чтобы обеспечить целостность, работа с данными должна производиться с учетом перечисленных далее правил.
Невозможно ввести в связанное поле подчиненной таблицы значение, отсутствующее в связанном поле главной таблицы. Однако можно ввести пустое значение, показывающее, что для данной записи связь отсутствует.
Не допускается удаление записи из подчиненной таблицы, если существуют связанные с ней записи в главной таблице.
Невозможно изменить значение поля в подчиненной таблице, если оно является ключевым в главной таблице.
Нормализация таблиц
На завершающем этапе моделирования БД проводится процедура нормализации. Цель нормализации состоит в том, чтобы набор таблиц и состав их полей удовлетворяли условию минимальности по следующим параметрам:
избыточность полей в таблицах;
состав первичных ключей;
нежелательные функциональные зависимости между полями;
дублирование данных;
трудоемкость выполнения операций включения, удаления и модификации данных;
время выполнения запросов на выборку данных
Нормализация таблиц – это пошаговый процесс композиции или декомпозиции исходных таблиц в таблицы, обладающие лучшими свойствами при включении, изменении и удалении данных.
Теория нормализации оперирует с пятью нормальными формами таблиц и основывается на наличии функциональных зависимостей между полями таблиц.
Функциональная зависимость. ПолеBтаблицы функционально зависит от поляАтой же таблицы в том и только том случае, когда в любой заданный момент времени для каждого из различных значений поляАобязательно существует только одно из различных значений поляВ. ПоляАиВмогут быть составными.
Полная функциональная зависимость. АтрибутВнаходится в полной функциональной зависимости от составного атрибутаА, если оно функционально зависит отА и не зависит функционально от любого подмножества поляА.
Многозначная зависимость. ПолеА многозначно определяет полеВ той же таблицы, если для каждого значения поляАсуществует хорошо определенное множество соответствующих значенийВ.
При нормализации каждая последующая нормальная форма должна удовлетворять требованиям предыдущей формы и некоторым дополнительным условиям.
Таблица находится в первой нормальной форме (1НФ)тогда и только тогда, когда ни одна из ее строк не содержит в любом своем поле более одного значения и ни одно из ее ключевых полей не пусто.
Таблица находится во второй нормальной форме (2НФ), если она удовлетворяет определению1НФи все ее поля, не входящие в первичный ключ, связаны полной функциональной зависимостью с первичным ключом.
Таблица находится в третьей нормальной форме (3НФ), если она удовлетворяет определению2НФи ни одно из ее неключевых полей не зависит функционально от любого другого неключевого поля.
Во многих случаях приведение таблиц к 3НФ позволяет эффективно работать с базой данных. При необходимости проводится дальнейшая нормализация.
Таблица находится в нормальной форме Бойса-Кодда (НФБК), если, и только если, любая функциональная зависимость между ее полями сводится к полной функциональной зависимости от возможного ключа.
Таблица находится в пятой нормальной форме (5НФ) тогда и только тогда, когда в каждой ее полной декомпозиции все проекции содержат возможной ключ. Полной декомпозициейтаблицы называют такую совокупность произвольного числа ее проекций, соединение которых полностью совпадает с содержимым таблицы.
Четвертая нормальная форма (4НФ)является частным случаем5НФ, когда полная декомпозиция должна быть соединением ровно двух проекций.
- Основы информационных технологий
- Оглавление
- Предисловие
- Современные информационные технологии
- 1.1 История, современное состояние и перспективы развития вычислительной техники
- 1.2 Элементная база, архитектура, сетевая компоновка, производительность
- 1.3 Понятие информации. Классификация и виды информационных технологий
- Основные свойства информационных технологий.
- 1 .4 Операционные системы
- 2 Основные программные средства информационных технологий
- 2.1. Программное обеспечение. Текстовые редакторы, их возможности и назначение
- 2.2. Графические редакторы
- 2.3. Электронные таблицы
- 2.4. Сервисные инструментальные программные средства
- 2.5. Системы математических вычислений MatLab
- 2.6 Система подготовки презентаций
- 3 Сетевые технологии и интернет
- 3.1 Классификация компьютерных сетей
- 3.2 Семиуровневая модель структуры протоколов связи
- 2.3. Взаимодействие компьютеров в сети
- 3.3 Организационная структура Internet
- 3.4 Инструментальные средства создания web-сайтов. Основы web-дизайна
- 3.5 Языки разметки гипертекста html и xml
- 3.6 Скриптовые языки программирования
- 4 Системы управления базами данных
- 4.1. Классификация систем управления базами данных
- 4.2 Модели данных
- 4.3 Моделирование баз данных
- 4.4 Архитектура и функциональные возможности субд. Языковые и программные средства субд
- 4.5 Общая характеристика субд ms Access
- 4.6 Основные объекты ms Access
- 4.7 Основы языка sql
- Контрольные вопросы
- 5 Защита информации при использовании информационных технологий
- 5.1 Основы информационной безопасности
- 5.2. Методы и средства защиты информации
- 5.3 Защита от несанкционированного доступа к данным
- 5.4 Классы безопасности компьютерных систем
- 5.5 Основные аспекты построения системы информационной безопасности
- 6 Математическое моделирование и численные методы
- 6.1 Математические модели и численные методы решения задач в различных предметных областях
- 6.2 Численное дифференцирование и интегрирование
- 6.2.1 Особенность задачи численного дифференцирования
- 6.2.2 Интерполяционная формула Лагранжа для равноотстоящих узлов
- 6.2.3 Численное дифференцирование на основе интерполяционной формулы Лагранжа
- 6.2.4 Численное дифференцирование на основе интерполяционной формулы Ньютона
- 6.2.5 Постановка задачи численного интегрирования
- 6.2.6 Квадратурные формулы Ньютона-Котеса
- 6.2.7 Формула трапеций
- 6.2.8 Формула Симпсона
- 6.2.9 Оценка точности квадратурных формул
- 6.3 Методы решения обыкновенных дифференциальных уравнений
- 6.3.1 Задача Коши и краевая задача
- 6.3.1.1 Классификация уравнений
- 6.3.1.2 Задача Коши
- 6.3.2 Одношаговые методы решения задачи Коши
- 6.3.2.1 Метод Эйлера
- 6.3.2.2 Модифицированный метод Эйлера
- 6.3.2.3 Метод Рунге-Кутта четвертого порядка
- 6.3.2.4 Погрешность решения и выбор шага
- 6.3.3 Многошаговые методы решения задачи Коши
- 6.3.3.1 Многошаговые методы
- 6.3.3.2 Метод Адамса
- 6.3.3.3 Методы прогноза и коррекции (предиктор-корректор)
- 6.3.3.4 Общая характеристика многошаговых методов
- 6.3.4 Краевая задача и метод стрельбы
- 6.3.4.1 Краевая задача
- 6.3.4.2 Метод стрельбы
- 6.3.4.3 Метод стрельбы для линейного дифференциального уравнения
- 6.4 Решение дифференциальных уравнений в чстных производных
- 6.4.1 Краткие теоретические сведения
- 6.4.2 Классификация уравнений по математической форме
- 6.4.3 Основы метода конечных разностей
- 6.4.3.1 Построение сетки
- 6.4.3.2 Аппроксимация уравнения эллиптического типа
- 6.4.3.3 Аппроксимация уравнения гиперболического типа
- 6.4.3.4 Аппроксимация уравнения параболического типа
- 6.4.3.5 Погрешность решения
- 6.4.4 Основы метода конечных элементов
- 6.4.4.1. Формирование сетки
- 6.4.4.2 Конечно-элементная аппроксимация
- 6.4.4.3 Построение решения
- 6.6 Элементы математической статистики
- 6.6.1 Генеральная совокупность. Выборка. Статистические ряды
- 6.6.2 Графическое изображение вариационных рядов. Эмпирическое распределение
- 6.6.3 Средние величины и показатели вариации
- 6.6.4 Средняя арифметическая и ее свойства
- 6.6.5 Дисперсия и ее свойства. Среднее квадратическое отклонение
- 6.6.6 Коэффициент вариации
- 6.6.7 Структурные средние
- 6.6.8 Законы распределения случайных величин
- 6.6.9 Статистические гипотезы
- 7 Методы оптимизации и системы поддержки принятия решений
- 7.1 Характеристика методов решения задач оптимизации
- 7.1.1 Численные методы безусловной оптимизации нулевого порядка
- 7.1.1.1 Основные определения
- 7.1.1.2 Классификация методов
- 7.1.1.3 Общая характеристика методов нулевого порядка
- 7.1.1.4 Метод прямого поиска (метод Хука-Дживса)
- 7.1.1.5 Метод деформируемого многогранника (метод Нелдера—Мида)
- 7.1.1.6 Метод вращающихся координат (метод Розенброка)
- 7.1.1.7 Метод параллельных касательных (метод Пауэлла)
- 7.1.2 Численные методы безусловной оптимизации первого порядка
- 7.1.2.1 Минимизация функций многих переменных. Основные положения
- 7.1.2.2 Метод наискорейшего спуска
- 7.1.2.3 Метод сопряженных градиентов
- 7.1.3 Численные методы безусловной оптимизации второго порядка
- 7.1.3.1 Особенности методов второго порядка
- 7.1.3.2 Метод Ньютона
- 7.2 Линейное программирование
- 7.2.1 Транспортная задача линейного программирования
- 7.2.1.1 Постановка задачи
- 7.2.1.2 Венгерский метод
- 7.2.1.3 Метод потенциалов
- 7.3 Прямые методы условной оптимизации
- 7.3.1 Основные определения
- 7.3.2 Метод проекции градиента
- 7.3.3 Комплексный метод Бокса
- 7.4 Методы штрафных функций
- 7.4.1 Основные определения
- 7.4.2 Методы внутренних штрафных функций
- 7.4.3 Методы внешних штрафных функций
- 7.4.4 Комбинированные алгоритмы штрафных функций
- 7.5 Информационные технологии поддержки принятия решений
- 7.6 Информационные технологии экспертных систем Характеристика и назначение
- Список литературы