Во время проектирования баз данных перед программистом всегда стоит перечень задач, а само проектирование разделено на несколько этапов.
Основные задачи, которые стоят перед программистом:
· Обеспечение хранения в БД всей необходимой информации.
· Обеспечение возможности получения данных по всем необходимым запросам.
· Сокращение избыточности и дублирования данных.
· Обеспечение целостности данных.
Этапы выделяют следующие:
Концептуальное проектирование
Концептуальное (инфологическое) проектирование — построение семантической модели предметной области, то есть информационной модели наиболее высокого уровня абстракции. Такая модель создаётся без ориентации на какую-либо конкретную СУБД и модель данных. Термины «семантическая модель», «концептуальная модель» и «инфологическая модель» являются синонимами. Кроме того, в этом контексте равноправно могут использоваться слова «модель базы данных» и «модель предметной области» (например, «концептуальная модель базы данных» и «концептуальная модель предметной области»), поскольку такая модель является как образом реальности, так и образом проектируемой базы данных для этой реальности.
Конкретный вид и содержание концептуальной модели базы данных определяется выбранным для этого формальным аппаратом. Обычно используются графические нотации, подобные ER-диаграммам.
Чаще всего концептуальная модель базы данных включает в себя:
· описание информационных объектов или понятий предметной области и связей между ними.
· описание ограничений целостности, то есть требований к допустимым значениям данных и к связям между ними.
Логическое проектирование
· Логическое (даталогическое) проектирование — создание схемы базы данных на основе конкретной модели данных, например, реляционной модели данных. Для реляционной модели данных даталогическая модель — набор схем отношений, обычно с указанием первичных ключей, а также «связей» между отношениями, представляющих собой внешние ключи.
· Преобразование концептуальной модели в логическую модель, как правило, осуществляется по формальным правилам. Этот этап может быть в значительной степени автоматизирован.
· На этапе логического проектирования учитывается специфика конкретной модели данных, но может не учитываться специфика конкретной СУБД.
Физическое проектирование
Физическое проектирование — создание схемы базы данных для конкретной СУБД. Специфика конкретной СУБД может включать в себя ограничения на именование объектов базы данных, ограничения на поддерживаемые типы данных и т. п. Кроме того, специфика конкретной СУБД при физическом проектировании включает выбор решений, связанных с физической средой хранения данных (выбор методов управления дисковой памятью, разделение БД по файлам и устройствам, методов доступа к данным), создание индексов и т. д.
Результатом физического проектирования логической схемы выше на языке SQL может являться следующий скрипт:
Мы уже давали определение СУБД, расширим это понятие.
К основным функциям СУБД относятся:
· управление данными во внешней памяти (на дисках);
· управление данными в оперативной памяти с использованием дискового кэша;
· журнализация изменений, резервное копирование и восстановление базы данных после сбоев;
· поддержка языков БД (язык определения данных, язык манипулирования данными).
✔ Не забываем ставить лайк и подписываться на мой канал: https://dzen.ru/lecturer_abramenkova?share_to=link
Впереди много познавательного!
✔ Будем дружить https://vk.com/lecturer_abramenkova
Благодарю каждого за репост!)