Система управления базами данных (СУБД) основывается на использовании определенной модели данных. Модель данных отражает взаимосвязи между объектами.
В настоящей главе рассматриваются три модели данных: реляционная, иерархическая и сетевая [2]. В качестве иллюстрации приводятся примеры из упрощенной информационной системы некоторого госпиталя [4].
4.1. Что такое модель данных
Одна из главных функций администрации базы данных состоит в разработке концептуальной модели (или модели предметной области). Компонентами модели являются объекты и их взаимосвязи. Она обеспечивает концептуальное представление данных. Концептуальная модель служит средством общения между различными пользователями и поэтому разрабатывается без учета особенностей физического представления данных. Эта модель используется для выражения, организации, упорядочения и обмена представлениями. Она не зависит от применяемой СУБД.
С помощью модели данных могут быть представлены объекты предметной области и взаимосвязи между ними. Современные СУБД основываются на иерархической, сетевой или реляционной модели, на комбинации этих моделей или на их некотором подмножестве.
Концептуальную модель (называемую также «моделью предметной области») необходимо отобразить в логическую модель, обеспечиваемую конкретной СУБД, а логическую модель в свою очередь — в физическую. (Последнюю называют еще «внутренней моделью» или «физической структурой»). Логическая модель данных может быть либо реляционной, либо иерархической, либо сетевой. Термин «модель данных» мы приводим здесь в обобщенном смысле. В каждом конкретном случае речь может идти о концептуальной, логической или внутренней (физической) модели.
При проектировании концептуальной модели не учитываются особенности используемой СУБД. Проектирование логической модели, напротив, в значительной степени зависит от СУБД. На практике чаще всего СУБД определяется заранее и перед АБД не стоит проблема выбора. Это объясняется тем, что на отдельной вычислительной машине, как правило, может быть установлено не более одной-двух СУБД. В идеальном случае СУБД должна быть определяющим фактором при выборе вычислительной машины, однако на практике это условие выполняется редко. Лучше всего осуществлять выбор СУБД после того, как спроектирована концептуальная модель. При этом необходимо учитывать особенности отображения концептуальной модели в логическую.