Section outline
-
Викладач: доцент кафедри програмної інженерії, канд. техн. наук, доцент Лимаренко Юлія Олексіївна
Контактна інформація: e-mail - yuliia.lymarenko@gmail.com, Telegram - @LymarenkoYuliiaМета курсу:
Курс спрямований на формування у студентів системного розуміння сучасних технологій зберігання даних поза межами реляційної моделі. Основний акцент робиться на здатності архітектурно обґрунтовувати вибір конкретної NoSQL СУБД залежно від логічної структури даних, вимог до масштабування, швидкості та гарантій цілісності. Курс є логічним продовженням базової дисципліни «Бази даних».
Опис курсу:
Сучасна ІТ-архітектура майже ніколи не обмежується однією базою даних. Успіх проєкту залежить від здатності інтегрувати спеціалізовані системи: швидкі для кешування, гнучкі для ведення журналів, стійкі для архівування. У цьому курсі розглядаються ключові категорії нереляційних СУБД, їхні архітектурні особливості та типові патерни інтеграції.
Курс охоплює такі функціональні блоки:
1. Операційні бази даних та масштабування
Розгляд основних NoSQL-парадигм, оптимізованих для високої доступності та горизонтального масштабування:
-
Документоорієнтовані сховища (MongoDB): Гнучке зберігання комплексних об'єктів та робота з динамічними схемами даних.
-
Розподілені колонкові сховища (Apache Cassandra): Проектування моделей даних для масивних, лінійно масштабованих систем, що вимагають високої доступності при записі (наприклад, для зберігання логів чи великих масивів відгуків).
2. Спеціалізовані інструменти та оптимізація продуктивності
Вивчення СУБД, призначених для вирішення конкретних архітектурних завдань:
-
Сховища типу "Ключ-Значення" (Redis): Використання для in-memory кешування, управління сесіями та реалізації механізмів обмеження швидкості запитів (Rate Limiting).
-
Графові бази даних (Neo4j): Моделювання та ефективний обхід складних зв'язків між об'єктами (соціальні графіки, мережі, рекомендаційні системи).
-
Пошукові системи та аналітика логів (Elasticsearch): Централізований збір, повнотекстовий пошук та моніторинг операційних логів за допомогою Kibana.
3. Аналіз часових рядів та незмінні реєстри
Опанування архітектур для роботи з хронологічними даними та системами, що вимагають гарантій аудиту:
-
Бази даних часових рядів (TimescaleDB): Збір та ефективна агрегація високочастотних даних датчиків (IoT), застосування віконних функцій та пошук аномалій у часових рядах (з візуалізацією через Grafana).
-
Технології розподіленого реєстру (DLT/Blockchain): Концептуальне розуміння криптографічних гарантій незмінності (immutability). Аналіз архітектур централізованих реєстрових баз даних (Ledger Databases) та їх відмінностей від публічних блокчейн-систем.
Практична підготовка
Курс забезпечує глибоку практичну підготовку. Лабораторні роботи фокусуються на реалізації комплексного data-стеку, де студенти послідовно інтегрують: MongoDB, Redis, Neo4j, Apache Cassandra, Elasticsearch та TimescaleDB для вирішення задач, що імітують реальні інженерні патерни.
-
-
-
Прохання: заповнити (за бажанням) форму. Ваш відгук допоможить покращити цей курс в майбутньому.