Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
IV.docx
Скачиваний:
52
Добавлен:
11.04.2015
Размер:
107.1 Кб
Скачать

1.7 Архитектура системы базы данных

В процессе научных исследований, посвященных тому, как именно должна быть устроена СУБД, предлагались различные способы реализации. Самой жизнеспособной оказалась, предложенная американским комитетом по стандартизации ANSI (American National Standards Institute), трехуровневая система организации БД. Она включает: внутренний, концептуальный и внешний уровни.

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

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

Предметная область – это часть реальной системы, представляющая интерес для данного исследования.

Концептуальная модель – это представление всей информации базы данных в несколько более абстрактной форме; представление данных таковыми, какие «они есть на самом деле».

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

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

Трехуровневая архитектура позволяет обеспечить логическую (между 1 уровнем и 2) и физическую (между уровнями 2 и 3) независимость при работе с данными. Логическая независимость предполагает возможность изменения одного приложения без корректировки других приложений, работающих с этой же базой данных. Физическая независимость предполагает возможность переноса хранимой информации с одних носителей на другие при сохранении работоспособности всех приложений, работающих с данной базой данных. Это именно то, чего не хватало при использовании файловых систем.

Контрольные вопросы

  1. Назовите уровень, отражающий обобщенную модель предметной области

  2. Чем обеспечивается логическая независимость при работе с данными?

1.8 Проектирование баз данных

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

  • обеспечение быстрого доступа к данным в таблицах;

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

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

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

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

Домен – общая совокупность значений, из которой берется реальное значение атрибутов.

Функциональная зависимость является связью типа многие-к-одному между множествами атрибутов данного отношения.

Пусть R–это отношение, а X и Y – произвольные подмножества множества атрибутов отношения R. Тогда У функционально зависимо от Х тогда и только тогда, когда каждое значение множества Х отношения R связано в точности с одним значением множества У отношения R.

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

Практически утверждение, что функциональная зависимость выполняется «всегда» является ограничением целостности, поскольку при этом накладываются определенные ограничения на все допустимые значения.

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

    • физический макет может рассматриваться как отдельная сопутствующая часть;

    • физический макет является специфическим для каждой СУБД. Логический макет, наоборот, совершенно независим от СУБД.

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

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

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

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

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

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

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

Контрольные вопросы

  1. Дайте определение понятию нормализация

  2. Как осуществляется поддержание целостности данных на этапе проектирования?

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