Первое занятие по курсу «Основы проектирования баз данных» закладывает фундамент системного инженерного мышления обучающихся специальности 09.02.07 «Информационные системы и программирование». Главная педагогическая задача — вывести студентов из бытового представления о базе данных как о «таблице Excel» или «файле на диске» в плоскость промышленной архитектуры данных.
Преподавателю важно продемонстрировать исторический переход от файловых систем к СУБД (1960–1970-е годы). Файловая организация порождает неустранимые проблемы:
| Класс СУБД | Модель данных | Примеры систем | Оптимальная сфера применения |
|---|---|---|---|
| Реляционные (RDBMS / SQL) | Таблицы (отношения), строки (кортежи), столбцы (атрибуты), первичные и внешние ключи. | PostgreSQL, MySQL, Oracle DB, MS SQL Server, SQLite | Финансовые транзакции, учетные системы, ERP, биллинг — везде, где требуется строгая консистентность (ACID). |
| Документные (Document NoSQL) | Иерархические полуструктурированные документы (JSON, BSON, XML) с динамической схемой. | MongoDB, CouchDB, RavenDB | Каталоги интернет-магазинов со сложными атрибутами, контент-менеджмент (CMS), профили пользователей, аналитика событий. |
| Ключ-значение (Key-Value) | Простейшая хеш-таблица: уникальный строковый ключ и произвольный массив байт. | Redis, Memcached, Amazon DynamoDB | Кэширование сессий пользователей, корзины покупок, очереди сообщений, счетчики реального времени. |
| Графовые (Graph DBMS) | Вершины (узлы), ребра (направленные связи) и свойства элементов. | Neo4j, Memgraph, Amazon Neptune | Социальные сети, рекомендательные движки, системы противодействия мошенничеству (Fraud Detection), анализ цепочек поставок. |
Стандарт ANSI/SPARC (1975 г.) ввел фундаментальную трехуровневую модель абстракции, разделяющую представление данных для пользователей и физическую реализацию на диске:
Разделение уровней гарантирует логическую независимость (изменение концептуальной схемы не ломает внешние представления) и физическую независимость (изменение структуры файлов, индексов или типа накопителей не требует переписывания концептуальных запросов).
Администратор БД (Database Administrator) отвечает за непрерывность, производительность и безопасность:
Суть ошибки: Студенты называют программу PostgreSQL или Access «базой данных», а таблицу с записями — «СУБД».
Педагогический прием: Метафора «Библиотека и Библиотекарь» или «Склад и Кладовщик». База данных — это книги на полках (хранилище информации). СУБД — это библиотекарь, который принимает читательские требования (запросы), находит нужные книги в картотеке (индексах), выдает копии и следит, чтобы читатели не испортили оригиналы.
Суть ошибки: Непонимание проблемы многопользовательской конкуренции и транзакционной целостности.
Педагогический прием: Разыгрывание кейса «Покупка последнего авиабилета». Преподаватель вызывает двух студентов и моделирует покупку билета через Excel без блокировок. Оба видят свободное место №14, оба одновременно подтверждают бронь. Кто улетит? Демонстрация того, как СУБД решает проблему через блокировку строки или транзакционную сериализацию.
Суть ошибки: Ошибочное восприятие NoSQL как полной замены SQL.
Педагогический прием: Теорема CAP и компромисс между строгой консистентностью и масштабируемостью. Разбор банковского перевода: в банке недопустима модель eventual consistency (согласованность в конечном счете), где деньги со счета списались, а на второй счет упадут «через пару минут». Каждая технология выбирается под конкретный тип нагрузки.
На этапе закрепления знаний каждый студент заполняет аналитическую карту в файле zanyatie.html по одному из 4 вариантов. Оценивание производится строго по 4-балльной шкале, зафиксированной в .rubrika.md:
По завершении работы студент нажимает кнопку «Печать / Экспорт в PDF» и сдает готовый отчет преподавателю. При отсутствии очной явки студент выполняет резервное дистанционное задание из файла domashnee_zadanie.html.