| Раздел 1. Основы NoSQL и документно-ориентированные базы данных | Эволюция систем управления данными. Ограничения реляционных СУБД в распределённых системах. Типология NoSQL-систем. Мультимодельные и NewSQL-системы. Полиглотная персистентность. Теорема CAP и модель PACELC. Согласованность, доступность, задержка и устойчивость к сетевым разделениям. Репликация, шардинг и горизонтальное масштабирование. Критерии выбора нереляционной модели.
Документно-ориентированные базы данных. Архитектура MongoDB. Коллекции, документы и формат BSON. Гибкая схема и её ограничения. Встраивание и ссылки. Паттерны моделирования документов. Ограничение размера документа и Bucket Pattern. CRUD-операции. Фильтрация, проекции и обновления. Индексы. Анализ плана выполнения. Aggregation Pipeline. Валидация схемы. Репликация и шардинг. Использование MongoDB для хранения электронного портфолио, структуры учебного курса, результатов заданий и слабоструктурированного цифрового следа.
Лабораторная работа 1. Проектирование документной базы данных цифрового портфолио обучающегося. Анализ образовательной предметной области; выбор между встраиванием и ссылками; создание коллекций обучающихся, достижений, проектов и учебных материалов; настройка валидации; реализация CRUD-операций, индексов и агрегирующих запросов; сравнение вариантов модели по числу операций чтения и удобству обновления данных. | 24 | 2 | 10 | 12 |
| Раздел 2. Хранилища «ключ–значение» и распределённые колоночные базы данных | Архитектура Redis. In-memory-обработка. Структуры Strings, Hashes, Lists, Sets, Sorted Sets, Bitmaps, HyperLogLog и Streams. Срок жизни ключей. Персистентность RDB и AOF. Репликация, Sentinel и Cluster. Паттерны Cache-Aside и Write-Through. Проблема Cache Stampede. Использование Redis для хранения сессий, кэширования учебного контента, рейтингов, очередей заданий и обработки событий LMS.
Архитектура Apache Cassandra. Одноранговая распределённая модель. Партиционирование, репликация и отказоустойчивость. Итоговая согласованность. Уровни согласованности. Модель wide-column. Язык CQL. Проектирование таблиц на основе запросов. Partition Key и Clustering Columns. Ограничения операций соединения и агрегирования. Размер партиции и производительность. Применение Cassandra для хранения больших потоков событий, истории активности и телеметрических данных образовательных платформ.
Лабораторная работа 2. Разработка высоконагруженной подсистемы событий цифровой образовательной платформы. Реализация в Redis пользовательских сессий, кэша учебных материалов, очереди событий и оперативных показателей; настройка сроков хранения и механизма персистентности. Проектирование в Cassandra таблиц для хранения истории входов, просмотров материалов, попыток выполнения заданий и результатов тестирования; выбор ключей партиционирования и уровней согласованности; выполнение запросов по обучающемуся, курсу и временному периоду. | 24 | 0 | 12 | 12 |
| Раздел 3. Графовые базы данных и поисковые системы | Графовые базы данных и модель property graph. Узлы, отношения, метки и свойства. Архитектура Neo4j. Проектирование графовой схемы. Язык Cypher: создание данных, MATCH, фильтрация, агрегация и поиск путей. Индексы и ограничения. Представление образовательной программы, компетенций, тем, заданий, ресурсов и предварительных требований в форме графа. Базовые алгоритмы центральности, поиска путей и выявления сообществ. Применение графов для построения образовательных маршрутов и навигации по связанным знаниям.
Назначение поисковых систем. Архитектура Elasticsearch. Индексы, документы, сегменты, шарды и реплики. Mapping. Текстовые анализаторы, токенизация и нормализация. Инвертированный индекс. Полнотекстовые запросы, фильтрация и агрегирование. Автодополнение. Индексирование журналов цифровых систем. Поиск по образовательным ресурсам, методическим материалам, заданиям и нормативным документам.
Лабораторная работа 3. Разработка графовой и поисковой подсистемы образовательных ресурсов. Проектирование в Neo4j графа учебных тем, компетенций, заданий и ресурсов; реализация запросов для поиска предварительных требований, связанных материалов и возможных образовательных маршрутов. Индексирование текстов учебных материалов в Elasticsearch; настройка mapping и анализаторов; реализация полнотекстового поиска, фильтрации, автодополнения и агрегирования. | 24 | 0 | 12 | 12 |
| Раздел 4. Векторные базы данных и проектирование полиглотных архитектур | Ограничения лексического поиска. Векторные представления и эмбеддинги. Метрики косинусного сходства, скалярного произведения и евклидова расстояния. Точный и приближённый поиск ближайших соседей. Индексы HNSW. Архитектура векторной базы данных. Коллекции, документы, идентификаторы и метаданные. ChromaDB и обзор управляемых векторных сервисов. Фильтрация по метаданным. Гибридный полнотекстовый и векторный поиск. Подготовка образовательного контента: разбиение документов, метаданные, версии и права доступа. Векторные базы как инфраструктурный компонент RAG-систем. В рамках дисциплины используются готовые модели эмбеддингов; обучение языковых и нейросетевых моделей не выполняется.
Критерии выбора NoSQL-системы. Сопоставление моделей данных и шаблонов доступа. Полиглотная персистентность. Архитектурные паттерны Event Sourcing и CQRS. Миграция с реляционной базы данных. Strangler Fig. Синхронизация и дублирование данных. Проектирование отказоустойчивости, резервного копирования и разграничения доступа. Использование NoSQL в информационных и ИИ-системах: хранение событий, состояния, истории диалогов, документов, метаданных и векторных представлений.
Лабораторная работа 4. Разработка подсистемы семантического поиска по образовательным материалам. Подготовка корпуса учебных и методических материалов; разбиение документов; формирование готовых эмбеддингов; загрузка документов, векторов и метаданных в ChromaDB; реализация поиска по сходству и фильтрации по предмету, классу, теме и типу ресурса; сравнение полнотекстового и семантического поиска; оценка релевантности результатов на контрольном наборе запросов.
Лабораторная работа 5. Итоговый проект «Полиглотная архитектура цифровой образовательной платформы». Проектирование системы, в которой разные модели хранения применяются в соответствии с характером данных и шаблонами доступа. Проект должен включать обоснованный выбор не менее трёх классов хранилищ, модель данных, описание потоков чтения и записи, требования к согласованности, масштабированию, резервному копированию, защите персональных данных и интеграции компонентов. Возможные объекты проектирования: LMS, электронное портфолио, платформа дополнительного образования, школьная библиотечная система или сервис учебных проектов. | 36 | 2 | 14 | 20 |