Files
obsidian-life/Базы данных. Лекция 1.md
Aleksandr Ebaklakov 011626b8b7 Initial commit
2026-04-22 16:58:43 +03:00

9.2 KiB
Raw Permalink Blame History

tags
tags
универ

Описывала литературу, выебывалась тем, что работала в Швеции/Швейцарии (по какой-то одной книжке?), при этом 15 лет читает БД в Корабелке. Еще описывала литературу.

Основные определения

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

Предметная область — ограниченная часть окружающего нас мира. Например:

  • Университет (объекты: студенты, преподаватели, администрация, занятия, проф.союз, бассейн, кафедра, факультет, группа, аудитории)
  • Торговый центр

Основные функции БД:

  1. Хранение данных (информации)
  2. Эксплуатация (обновление/чтение) данных (информации)

DFD

Data Flow Diagram (DFD) — Диаграммы потоков (данных). т.е. откуда берутся данные, куда они перемещаются. Рисуется для предметной области. Рисовать лишь при сложных системах Элементы:

  1. Внешний источник (Покупатель)
  2. Поток данных , что происходит с данными
    1. Натация Йордана
    2. Натация Гейна (более современная)
  3. Хранилище — Состояние данных в покое (БД, Электронная таблица). Нет delete, только добавление
  4. Направление процесса (Как данные переходят)

Пользователь должен получать неизменяемые данные. ^e4ae49

3 Фазы (Уровня) DFD:

  • «Нулевой/Концептуальный» уровень — Нет хранилища, определяется «кто и что делает». ==пример 1==
  • «Логический» уровень — Начинаем работать с каждым процессом, появляются внутренние процессы, «подпроцессы». Ответ на вопрос, — «Что включает в себя процесс?». ==пример 2==
  • «Физический уровень» — Показывает как реализуются процессы внутри. Каждый поток содержит в себе «входящий» поток и «выходящий». ==пример 3== и ==пример 4==

Реализация хранилища

!!! Система ролей («кто ты такой?»): !!!

  • Гость (без регистрации)
  • Зарегистрированный пользователей (с регистрацией)
  • Администратор (полный функционал) Для каждой роли имеется свой функционал.

СУБД — Система Управления Базами Данных — Набор программ, позволяющих:

Эксплуатация БД

При эксплуатации БД необходимо учитывать следующие аспекты:

  • Функциональность и адаптируемость
  • Безопасность
  • Время реакции
  • Производительность обработки транзакций
  • Пропускная способность

Требования к система БД:

  1. Низкая избыточность данных — Данные лучше хранить в одном месте, чем в нескольких (низкая повторяемость данных)
  2. Непротиворечивость данных
  3. Соблюдение стандартов
  4. Безопасность данных
  5. Независимость данных
  6. Высокие пользовательские свойства системы

Безопасность понижает производительность приложения

Основные режимы работы с БД:

  • Создание БД
  • Редактирование БД
  • Просмотр БД
  • Поиск информации в БД (устаревшее?)

По характеру информации базы данных делятся на:

  • Фактографические Приспособлена для хранения «фактов».
  • Документальные/Документоориентированные Приспособлена для хранения «документов».

По способу хранения базы данных делятся на:

  • Централизированные БД хранится на одном компьютере
  • Распределенные Распределенные части одной БД разделяются на разные компьютеры (сервера)

Файл–Серверная модель устарела. ЛУЧШЕ (по производительности) использовать Клиент–Серверную. Лучше не лезть в Model (из MVC)

Жизненный цикл БД

  1. Планирование — DFD
  2. Анализ — Набор требований (ограничения для каждого поля)
  3. Разработка проекта
  4. Еще хуйня какая-то, я пропустил

Инфологическое/Концептуальное проектирование БД

  1. Системный анализ предметной области
  2. Инфологическое проектирование
  3. Выбор СУБД
  4. Логическое проектирование
  5. Физическое проектирование

Базе данных обязательно приложение

Устаревшая архитектура БД: ==пример 5==

  • Внешний уровень — набор внешних схем со своей терминалогией Мы работает с концептуальной схемой, которая состоит из внешнего уровня

Создание диаграммы предметной области

ERD — Entity Relationship Diagram — содержит 3 элемента:

  1. Сущность — объект предметной области, ассациируется с существительными. Прямоугольник
    1. Слабая сущность. Двойной прямоугольник
  2. Атрибуты (для каждой сущности) — параметры сущности (характеристики сущностей предметной области). Для кажой сущности необходим ключевой атрибут, который определяет. Овал. Ключевой атрибут подчеркивается. Типы атрибутов:
    1. Ключевой — Обязательный. Подчеркивание.
    2. Простой —
    3. Составной — Иерархический.
    4. Многозначный — Имеет несколько значений. Двойной овал.
    5. Вычисляемый — Может быть вычислен из хранимого атрибута. Пунктирный овал.
  3. Связь — ассациируется с глаголом. Ромб, внутри которого глагол.
    1. Арность
      1. Бинарная
      2. Контракт/Тернарная — связь, между 3 сущностями
    2. Степень связи
      1. 1: 1 — один экземпляр одной сущности связан с одним экземпляром другой сущности
      2. 1: M/ M: 1 — один экземпляр одной сущности связан с несколькими эезмеплярами другой сущности
      3. M: M — несколько экземпляров одной сущности связаны с несколькими экземплярами другой сущности
    3. Класс принадлежности сущности к данной связи
      1. Обязательный — две черты
      2. Необязательный — одна черта
    4. Наличие атрибутов — атрибуты связи.

ERD содержит несколько натаций. Изучается Натация Чена.

[!nav] Базы данных. Лекция 2