Проектирование реляционной базы данных Основные принципы проектирования
Проектирование БД - это взаимосвязанный комплекс работ – от определения общих параметров создаваемой базы данных, анализа объекта управления, построения информационной модели до создания реальной базы данных
Проектирование БД Исследование объекта (системный анализ) Информационная модель Выбор СУБД Логическая модель Физическая модель
Этапы проектирования баз данных
Основные этапы проектирования баз данных Концептуальное проектирование Логическое проектирование Физическое проектирование
Концептуальное проектирование отражает обобщенную модель предметной области, для которой создается БД Для этого осуществляются следующие мероприятия: обследование предметной области, изучение ее информационной структуры (системный анализ) проводятся сбор информации, ее упорядочение составление моделей данных По окончании данного этапа получаем концептуальную модель, инвариантную к структуре базы данных. Часто она представляется в виде модели "сущность-связь".
Логическое проектирование описывает как выбранные взаимосвязи будут представлены в структурах записей базы данных. Выбираются модели СУБД и логические структуры (таблицы, файлы, списки и др.) для описания данных.
Физическое проектирование определение особенностей хранения данных, методов доступа и т.д.
Различие уровней представления данных на каждом этапе Концептуальный уровень Сущности Атрибуты Связи Представление аналитика Логический уровень Записи Элементы данных Связи между записями Физический уровень Группирование данных Индексы Методы доступа Представление программиста Представление администратора
Концептуальное проектирование Информационное описание ПрО Описание ПрО при помощи графических нотаций (нотация - язык отображения моделей)
Методики представления знаний о ПрО SADT (Structured Analysis and Design Technique) – методика структурного анализа, основанная на ней нотация IDEF0. В семейство стандартов IDEF (Integrated DEFinition) входят следующие IDEF- модели : IDEF1 и IDEF1Х ( ER-диаграммы ), IDEF2 и IDEF3 ( Как система реализует функцию? ), IDEF4 ( объектно-ориентированный анализ ) и др.
Методики представления знаний о ПрО UML (Unified Modeling Language) – методика объектно-ориентированного анализа и др.
Модели типа «объект-отношение» или «сущность-связь» ERD (Entity – Relationship Diagrams) ER – диаграммы Предложена Питером Пин Шен Ченом в 1976 г. ER-модель, как описание ПрО, должна определить объекты и взаимосвязи между ними.
Сущность, свойства, связь Сущность (Имя) Свойство (Имя) Действие Связь Обязательная связь Необязательная связь
Пример Сотрудник (таб_номер, ФИО, возраст) Отдел (номер_отдела, наименование) СОТРУДНИК Таб_номер ФИО Возраст ОТДЕЛ Номер_отдела Наименование работает 1 М
Пример Сотрудник (таб_номер, ФИО, возраст) Отдел (номер_отдела, наименование) СОТРУДНИК Таб_номер ФИО Возраст ОТДЕЛ Номер_отдела Наименование руководит 1 1
Описание предметной области АВТОБУС – это транспортное средство для перевозки людей. Автобусный парк содержит определенное количество подвижных единиц. Автобусы характеризуются маркой, государственным номером, количеством посадочных мест. На маршруты выходят иногда одни и те же автобусы, иногда разные. Значит, автобусы не закреплены жестко за определенным маршрутом. Водители отвечают за работоспособность автобуса, закрепленного за ними. Обычно по два водителя, т.к. они работают в разные смены. Бывают случаи, что водителю приходится выходить на линию совсем на другом автобусе. Для диспетчера очень важно знать фамилию, имя, отчество водителя, адрес его проживания и телефон. Диспетчер закрепляет за автобусами маршруты следования каждый день, определяет в какую смену выходит водитель и на каком автобусе. Указывает в маршрутном листе время выхода на линию и время возвращения в парк. Каждый маршрут имеет свой номер, пункт отправления и пункт назначения.
Из описания предметной области выявились три сущности: автобусы, водители, маршруты. Каждая сущность имеет свои атрибуты. АВТОБУСЫ (государственный_номер_автобуса, марка, количество мест) ВОДИТЕЛИ (табельный_номер, фамилия_водителя, имя_водителя, отчество_водителя, населенный_пункт, улица, дом, квартира, телефон) МАРШРУТЫ (номер_маршрута, пункт_отправления, пункт_назначения, день_выхода, месяц_выхода, год_выхода, время_выхода, время_возвращения)
Модель типа «Сущность-связь» БД Автобусный парк Водитель Таб_номер Фамилия_водителя Имя_водителя Отчество_водителя Населен_пункт Улица Номер_дома Номер_кв телефон Автобус Номер_авто Марка_авто Кол_мест Маршрут Номер_марш Пункт_отпр Пункт_назн День_выхода Месяц_выхода Год_выхода Время_выхода Время_возвр отвечает выезжает
Этапы проектирования БД Концептуальное проектирование Логическое проектирование Физическое проектирование Предметная область (восприятие, абстрагирование, изучение и описание предметной области) Информационные потребности пользователя Проектирование концептуальной модели (ER-диаграммы) Выбор СУБД Проектирование логической модели Проектирование представления данных в памяти ЭВМ (физическая модель) Оценка эксплуатационных характеристик
1. Табельный номер 2. Фамилия 3. Имя 4. Отчество 5. Код подразделения 6. Сумма по документу 7. Серия и номер паспорта 8. Дата выписки 9. Должность 10. Номер платежного документа 11. Наименование подразделения 12. Наименование платежного документа (приходный и расходный кассовый ордер)