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

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

На этапе концептуального проектирования представляют структуры данных при помощи различных технологий моделирования. Самая распространенная среди них - модель «сущность-связь», или ER-моделъ (Entity-relationship),предложенная П. Ченом в 1976 году.

В процессе моделирования строится ER-диаграмма. Единого общепризнанного формата для графического представления ER-диаграмм не установлено, хотядля самих ER-моделей существует международный стандарт ISO 9007 «Conceptsand terminology for the conceptual schema and the information base» («Концепциии терминология для концептуальной схемы и информационной базы»). Главными понятиями модели «сущность-связь» являются сущности, атрибуты связи между сущностями.

Сущность - абстракция реально существующего объекта, процесса или явления, информацию о котором необходимо сохранять в БД. Сущностями в ER-moдели могут быть как предметы, так и какие-либо явления или процессы. Сущностями могут быть люди, документы, техника, товары, услуги и тому подобное. Типсущности определяет набор однородных объектов, например автомобили, а экземпляр сущности представляет конкретный объект этого набора, например ВАЗ-2109. Тип сущности должен иметь уникальное имя, позволяющее отличать егоот других типов.

Атрибут - поименованная характеристика сущности. Атрибуты описываютразличные свойства сущностей. Атрибут обязательно должен иметь имя. Длянего может быть определено множество допустимых значений. Например, длясущности «автомобиль» можно определить атрибуты: «цвет», «комплектация»и «цена».

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

Связь - поименованная ассоциация между сущностями в ER-модели. Связямтакже присваивают имена, как правило, представляющие их функции.

Связи могут быть бинарные (связи между двумя сущностями), тернарные (между тремя сущностями), кватернарные (между четырьмя сущностями) и n-арныесвязи (между п сущностями). Для каждой связи определяют:

>    имя;

>    степень множественности («один к одному», «один ко многим», «многиек одному», «многие ко многим»);

>    мощность связи (максимальное количество экземпляров одной сущности, связанных с одним экземпляром другой сущности).

Чаще всего для элементов модели используют графические обозначения,представленные на рис. 2.4.

Приведем пример построения ER-диаграммы. Опишем две сущности: должность и сотрудник (рис. 2.5).


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

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

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

По итогам этого этапа происходит оформление технического проекта.

Реализация

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

На этом этапе БД часто заполняют некоторым количеством тестовых данных и на их основе отлаживают механизмы защиты данных и механизмы контроля целостности базы данных. Отладка механизмов базы данных при этомпроисходит параллельно отладке прикладного программного обеспечения.

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