Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
курсовые работы / РАЗРАБОТКА БАЗЫ ДАННЫХ / Пояснительная записка лукешин2.docx
Скачиваний:
48
Добавлен:
28.01.2014
Размер:
804.69 Кб
Скачать

2 Этап логического проектирования базы данных

2.1 Выбор модели базы данных

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

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

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

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

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

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

Иерархическая модель данных строится по принципу иерархии типов объектов, то есть один тип объекта является главным, а остальные, находящиеся на низших уровнях иерархии, - подчиненными. Между главным и подчиненными объектами устанавливается взаимосвязь "один ко многим".

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

Узлы и ветви образуют иерархическую древовидную структуру. Узел является совокупностью атрибутов, описывающих объект. Наивысший в иерархии узел называется корневым (это главный тип объекта). Корневой узел находится на первом уровне. Зависимые узлы (подчиненные типы объектов) находятся на втором, третьем и т. д. уровнях.

Недостатки: из нижних уровней иерархии нельзя направить информационный поиск по вышележащим узлам.

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

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

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

Признаки, позволяющие считать таблицу отношением:

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

  • в каждой строке содержатся значения одного и того же набора атрибутов;

  • отношения неразложимы (не могут быть элементами другого отношения).

Достоинства реляционных моделей данных.

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

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

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

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

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

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

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