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

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

Lis Sulmont

Curriculum Manager

Что такое проектирование баз данных?

  • Определяет логическую организацию хранения данных
    • Как данные будут читаться и обновляться?
  • Использует модели баз данных: высокоуровневые спецификации структуры
    • Наиболее популярна: реляционная модель
    • Другие варианты: NoSQL-модели, объектно-ориентированная модель, сетевая модель
  • Использует схемы: blueprint базы данных
    • Определяет таблицы, поля, связи, индексы и представления
    • При добавлении данных в реляционные базы схемы должны соблюдаться
Проектирование баз данных

Моделирование данных

Процесс создания модели данных для хранимых данных

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

  • Инструменты: диаграммы структуры данных, например ER-диаграммы и UML-диаграммы

2. Логическая модель данных: определяет таблицы, столбцы, связи

  • Инструменты: модели и схемы баз данных, например реляционная модель и схема «звезда»

3. Физическая модель данных: описывает физическое хранение

  • Инструменты: разделы, процессоры, индексы, системы резервного копирования и табличные пространства
1 https://en.wikipedia.org/wiki/Data_model
Проектирование баз данных

Концептуальный уровень — ER-диаграмма

ER-диаграмма на примере песен

Сущности, связи и атрибуты

Логический уровень — схема

Логическая схема на примере песен

Быстрый переход: сущности становятся таблицами

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

Другие варианты проектирования баз данных

Другой вариант ER-диаграммы на примере песен

Определение таблиц

Другой вариант ER-диаграммы на примере песен

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

За пределами реляционной модели

Размерное моделирование

Адаптация реляционной модели для проектирования хранилищ данных

  • Оптимизировано для запросов OLAP: агрегирование данных, а не обновление (OLTP)
  • Строится на основе схемы «звезда»
  • Схема легко читается и расширяется
Проектирование баз данных

Элементы размерного моделирования

Таблица фактов и таблицы измерений на примере песен

Организация по:

  • Что анализируется?
  • Как часто изменяются сущности?

Таблицы фактов

  • Определяются бизнес-задачей
  • Хранят записи метрик
  • Регулярно обновляются
  • Связаны с таблицами измерений через внешние ключи

Таблицы измерений

  • Хранят описания атрибутов
  • Изменяются реже
Проектирование баз данных

Давайте потренируемся!

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

Preparing Video For Download...