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

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

Проектирование баз данных — процесс создания схемы базы данных и определения необходимых ограничений целостности

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

Основные задачи:

К современным базам данных предъявляются следующие основные требования:

  • Высокое быстродействие (малое время отклика на запрос);

  • Простота обновления данных;

  • Независимость данных - возможность изменения логической и физической структуры БД без изменения представлений пользователей.

  • Совместное использование данных многими пользователями;

  • Безопасность данных - защита данных от преднамеренного или непреднамеренного нарушения секретности, искажения или разрушения;

  • Простота и удобство интерфейса;

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

Под целостностью данных понимается:

  • отсутствие неточно введенных данных или двух одинаковых записей об одном и том же факте;

  • защита от ошибок при обновлении БД;

  • невозможность удаления (или каскадное удаление) связанных данных разных таблиц;

  • Неизменность данных при работе в многопользовательском режиме и в распределенных базах данных;

  • сохранность данных при сбоях техники (восстановление данных).

Защита данных от несанкционированного доступа достигается:

  • введением системы паролей;

  • получением разрешений от администратора базы данных;

  • запретом от администратора базы данных на доступ к данным;

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

Основные этапы проектирования баз данных

Первый этап.

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

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

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

Цель – создание локальной концептуальной модели данных предприятия на основе представления о предметной области каждого отдельного типа пользователей.

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

  • - набор допустимых значений для атрибута;

  • - сведения о размере и формате каждого из полей атрибутов.

Второй этап.

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

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

  • Выбор модели данных.

  • Определение требований поддержки целостности данных и их документирование.

  • Создание окончательного варианта логической модели данных и обсуждение его с пользователями.

Задачи логического проектирования:

  • Преобразование локальной концептуальной модели данных в локальную логическую модель. (Удаление связей М: Н, сложных связей, рекурсивных связей, связей с атрибутами, удаление множественных атрибутов.)

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

  • Проверка модели с помощью правил нормализации.

  • Проверка модели в отношении транзакций пользователей.

  • Создание диаграммы сущность-связь.

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

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

  • Слияние локальных моделей в единую глобальную модель данных

  • Проверка глобальной логической модели данных (нормализация и транзакции).

  • Проверка возможностей расширения модели в будущем.

  • Создание окончательного варианта диаграммы сущность-связь

  • Обсуждение глобальной модели данных с пользователем.

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

Третий этап

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

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

Задачи физического проектирования:

  • Перенос глобальной логической модели данных в среду целевой СУБД (Создание базовой функциональной схемы реляционной БД).

  • Проектирование таблиц, данных в среде целевой СУБД.

  • Реализация бизнес-правил предприятия.

  • Проектирование физического представления БД.

  • Анализ транзакций (выбор важнейших из них).

  • Выбор файловой системы (последовательные файлы, хешированные файлы, двоичные деревья).

  • Определение вторичных индексов (определение того будет ли добавление вторичных индексов способствовать повышению производительности).

  • Определение требований к памяти.

  • Разработка механизмов защиты.

  • Разработка пользовательских видов.

  • Определение прав доступа.

  • Проектирование таблиц данных

  • Реализация бизнес-правил предприятия.

  • Проектирование физического представления БД.

  • Определение требований к памяти.

  • Разработка механизмов защиты.

  • Определение прав доступа.

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

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