Разработка онлайн-органайзера с использованием объектно-ориентированного подхода. Исследование 1 Методология проектирования информационных систем
Скачать 1.64 Mb.
|
2.2 Процесс проектирования базы данныхПроцесс проектирования базы данных состоит из следующих отдельных шагов: концептуального проектирования, проектирования логической структуры базы данных, которая поддерживается СУБД и описывает представление пользователя о данных, и выбора физической структуры, которая включает представление данных, методы доступа и физическое группирование данных. Основным компонентом ИС (базы данных), является модель данных (концептуальная модель). Множество структур данных, поддерживаемых в концептуальной модели, определяет набор операций в языке манипулирования данными. Значит, основной вопрос: какую форму должны иметь модель данных и связанный с ней язык данных. Системы баз данных классифицируются в соответствии с выбранной моделью данных. Широкое распространение получили три типа моделей данных: иерархическая модель, сетевая модель и реляционные модели данных. Эти типы образуют некоторое "базовое" множество. Каждый из типов определяет соответствующую систему управления базами данных (далее СУБД). Сетевая модель данных. В основе сетевой модели лежит понятие сети, изображаемой в виде плоского ориентированного графа, в узлах которого размещаются сущности, а связи между ними изображаются дугами. В сетевой модели могут быть реализованы все типы связей, в том числе и М:М. Это значит, что каждый исходный узел сети может иметь несколько порожденных узлов – «сыновей», а каждый порожденный - несколько исходных узлов – «отцов». Такие сложные сети затрудняют организацию данных и управление ими и обычно заменяются более простыми, не сложнее 1:М или М:1. В настоящее время известны различные способы упрощения сложных связей в сети, наиболее распространенным из которых является введение составных атрибутов. Иерархическая модель данных представляется в виде иерархии - “леса” независимых деревьев. Деревья реализуют связи, не сложнее 1:М. Это значит, что каждый исходный узел дерева может иметь несколько порожденных узлов, а каждый порожденный узел - только один исходный. Поскольку иерархия является частным случаем сети, можно легко показать, что сетевая модель может быть сведена к иерархической введением избыточности в данные. Реляционная модель описывает данные в виде одного или нескольких отношений или таблиц. В основе реляционной модели лежат простые таблицы, которые удовлетворяют определенным ограничениям, а потому могут рассматриваться как математические отношения. Строки таких таблиц называются кортежами, имена столбцов - атрибутами. Следует отметить, что все кортежи различны, а порядок столбцов произволен, чем упрощается процесс обработки кортежей. В отношении (таблице) выделяется несколько атрибутов, однозначно идентифицирующих кортежи и называемых ключами. Особенность реляционной модели заключается в том, что в отличие от сетевой и иерархической моделей реальные объекты и взаимосвязи между ними представляются в базе данных единообразно в виде нормализованных отношений. Легко видеть, что каждая строка таблицы реализует связь 1:1. Все строки одной таблицы или всей БД могут реализовать все возможные типы связей. Основной недостаток реляционной модели данных связывается с низкой производительностью реляционной СУБД. Но разработка современных СУБД таких как, ORACLE, InterBase, PostgreSQL, MySQL и др. позволило преодолеть и этот недостаток. В принципе любая модель может быть использована для описания реальных данных, поскольку возможна трансформация (преобразование) одной модели данных в другую. При трансформации более сложной в более простую модель появляется избыточность в данных. Перечислим достоинства и недостатки каждой модели данных: Достоинства: реляционной модели данных: простота и доступность для понимания; представление, как информации, так и связей единым образом в виде таблиц-отношений; симметричная реализация симметричных запросов; эффективная реализация алгоритмов обработки данных; мощный математический аппарат поддержки (реляционная алгебра и реляционное исчисление); иерархической модели данных: дерево отражает естественные связи в реальных данных; более простая, чем в реляционной модели, реализация повторяющихся групп данных (иерархий); сетевой модели данных: сеть отражает естественные связи в реальном мире; почти симметричная реализация симметричных запросов; достаточно простая и эффективная реализация основных алгоритмов обработки данных. Недостатки: реляционной модели данных: трудности при реализации иерархий, например, повторяющихся групп (используются специальные приемы); необходимость организации данных с использованием сильных нормальных форм, хотя бы третьей нормальной формы; трудности в реализации сложных запросов, т.е. таких, ответы на которые могут быть получены из более чем одного отношения (необходимо отслеживать связи между отношениями); иерархической модели данных: несимметричная реализация симметричных запросов; трудности при реализации операций обработки данных (значительный объем анализируемых данных, потенциальная противоречивость данных и пр.); сетевой модели данных: сложность связей; отсутствие формализованных процедур поиска связующего элемента, поэтому результат всецело зависит от опыта и интуиции разработчика. Поскольку среди перечисленных логических моделей данных реляционная обладает значительными преимуществами и малыми недостатками, то она и будет взята в основу для построения СУБД. |