Похожие презентации:
Кат
1.
Проектирование баз данныхКатышев И.В.
2.
Связи между сущностямиПример из магазина:
• 1:N — Один клиент → много заказов
• M:N — Много заказов → много товаров
(через таблицу order_items)
Связь M:N всегда разбивается на две
связи 1:N через промежуточную таблицу.
3.
Этапы проектирования БДАнализ
требований
Концептуальна
я модель
Логическая
модель
Физическая
реализация
Каждый этап опирается на результат предыдущего — пропуск шага ведёт к ошибкам в структуре.
4.
Три ключевых принципаЦелостность данных
Нельзя создать заказ для несуществующего клиента.
Обеспечивается внешними ключами (FOREIGN KEY).
Отсутствие дублирования
Адрес клиента хранится в одной таблице — не в
каждом заказе отдельно.
Независимость данных
Изменение структуры таблиц не ломает приложение.
Данные отделены от логики.
5.
Нормализация: 1НФ → 2НФ → 3НФ1НФ
Атомарные
значения, без
повторяющихся
групп
2НФ
1НФ + все
неключевые
колонки зависят
от полного
ключа
3НФ
2НФ + нет
транзитивных
зависимостей
между
столбцами
Нормализация устраняет аномалии вставки, обновления и удаления. На практике большинство
таблиц проектируют до 3НФ.
6.
ACID: надёжность транзакцийЧто такое транзакция?
Набор операций, которые выполняются
как единое целое: либо все успешно,
либо ни одна.
Пример: перевод денег — списание и
зачисление должны произойти вместе.
A — Атомарность
C — Согласованность
Всё или ничего
БД остаётся валидной
I — Изоляция
D — Долговечность
Транзакции не
мешают друг другу
Результат сохраняется
после сбоя
Базы данных