Перейти до вмісту
Система сертифікації ІТ-дисциплін
Система сертифікації ІТ-дисциплін
  • Головна
  • Для ІТ-спеціалістів
  • Для викладачів
  • Силабуси
  • Пілот проєкту
  • Приєднатись до Kharkiv IT Cluster

NoSQL бази даних

Home / / NoSQL бази даних

Розробники та рецензенти

Заклад вищої освіти:

Компанія-рецензент 1:

Компанія-рецензент 2:

Валідація:

Опис зображення
Розробник навчальної програми:

Ілона Шевченко - канд. техн. наук , доцент кафедри інженерії програмного забезпечення

Базова інформація

Шифр та назва спеціальності:
121 - Програмна інженерія
Назва освітньо-наукової програми
Інженерія програмного забезпечення
Назва дисципліни
NoSQL бази даних
Вид дисципліни
Вибіркова
Блок дисципліни
Обробка даних
Кількість студентів
100
Курс/Семестр
10

Загальна інформація про дисципліну

Анотація
Курс дає загальне уявлення щодо різних NoSQL (нереляційних) моделей даних, їх переваг і недоліків у порівнянні з реляційною моделлю даних, а також детально знайомить здобувача з документо-орієнтованою моделлю даних, як найбільш популярною серед NoSQL моделей даних. У курсі вивчається документо-орієнтована система керування базами даних MongoDB, в якій дані зберігаються у документах з JSON-подібним форматом і гнучкою структурою. В рамках курсу здобувач отримує знання з встановлення MongoDB, створення власних баз даних і наповнення їх колекціями даних, додавання даних до колекцій, вибирання даних з колекцій, оновлення і видалення даних з колекцій, агрегації даних (побудови pipelines), встановлення посилань між колекціями і побудови схем валідації даних, роботи з індексами (в тому числі текстовими і геопросторовими), роботи з різними консольними і графічними клієнтами (наприклад, MongoDB Shell і MongoDB Compass), роботи у хмарному сервісі MongoDB Atlas і хмарним сервісом візуалізації даних MongoDB Charts, міграції реляційної БД у документо-орієнтовану БД і в зворотному напрямку за допомогою інструменту Studio3T. Курс завершується реалізацією нескладного проєкту, який буде виконувати основні CRUD-операції з даними, що зберігаються на локальному або хмарному MongoDB-сервері.
Анотація
Розширення знань здобувача в області баз даних через знайомство з NoSQL (нереляційними) базами даних.
Анотація
Лекції, практичні роботи, самостійна робота. Підсумковий контроль – іспит
Розподіл часу
Загальний обсяг (кредитів): 5; Лекції (занять): 32; Лабораторні (занять): 0; Практичні (занять): 32; Самостійна робота (годин): 86
Попередні дисципліни
-
Матеріально-технічне та програмне забезпечення дисципліни
MongoDB Server MongoDB Shell, MongoDB Compass MongoDB Atlas, MongoDB Charts Studio3T Visual Studio PyCharm
Структура дисципліни
Теоретична складова Назва, перелік питань або анотація лекції Годин Практична складова Опис та приклад завдання, а також посилання на методичні матеріали Годин Інструменти, засоби та технології
Тема 1 – NoSQL бази даних. MongoDB: початковий рівень
Вступ.  Знайомство з NoSQL базами даних. SQL або NoSQL - проблема вибору Анотація: Що таке NoSQL бази даних? Історія появи та розвитку. Переваги та недоліки NoSQL баз даних. Вибір між реляційними (SQL) та нереляційними (NoSQL) базами даних. Які бувають NoSQL бази даних: основні типи нереляційних моделей даних. Застосування NoSQL систем бази даних.  2
Введення до MongoDB. Створення баз даних і колекцій. Наповнення колекцій документами. Анотація: Початок роботи з MongoDB. Встановлення сервера. Консольний та графічний клієнт. Знайомство з MongoDB Compass. Поняття «колекція», «документ», «ключ». Формат даних у MongoDB. Ідентифікатор документа _id. Робота з базами даних: show databases, use, db, db.stats(), db.dropDatabase().  Робота з колекціями: show collections, db.createCollection(), db.collection.renameCollection(), db.collection.stats(), db.collection.drop().  Робота з документами: db.collection.insertOne(), db.collection.insertMany(). Перегляд змісту колекції: db.collection.find(). 2 Практична робота № 1. Встановлення MongoDB. Базові команди та методи створення та заповнення колекцій. https://drive.google.com/file/d/1zSYnW0RMAY7SoRpPufMwHcwr8BA_7-AU/view?usp=sharing 2 MongoDB Server MongoDB Shell, MongoDB Compass
Вибирання даних із колекції. Фільтрація і проєкція даних. Анотація:Вибирання даних: db.collection.find(), db.collection.findOne(). Налаштування виведення даних: db.collections.find().limit(), db.collections.find().skip(). Сортування даних: db.collections.find().sort().Фільтрація документів: за відсутніми ключами, за елементами масиву, за вкладеними даними, з використанням регулярних виразів, із застосуванням умовних операторів, із застосуванням логічних операторів, із застосуванням операторів пошуку у масивах, із застосування оператора $exists, застосування оператора $type. Використаня проєкції. Оператор $slice. 2 Практична робота № 2. Вибирання даних із колекцій. https://drive.google.com/file/d/1zSYnW0RMAY7SoRpPufMwHcwr8BA_7-AU/view?usp=sharing 2 MongoDB Server MongoDB Shell, MongoDB Compass
Заміна та оновлення даних. Видалення даних. Анотація: Заміна даних: db.collection.replaceOne(). Оновлення даних: db.collection.updateOne(), db.collection.updateMany(). Оператори оновлення даних: $set, $unset, $inc, $push, $push+$each, $addToSet, $addToSet+$each, $pop, $pull, $pullAll.  Видалення даних: db.collection.deleteOne(), db.collection.deleteMany().  Метод db.collection.bulkWrite(). 2 Практична робота № 3. Заміна та оновлення даних у колекціях. Видалення даних. https://drive.google.com/file/d/1zSYnW0RMAY7SoRpPufMwHcwr8BA_7-AU/view?usp=sharing 2 MongoDB Server MongoDB Shell, MongoDB Compass
Модульна контрольна робота №1. 2
Агрегація даних. Pipelines. Анотація:Агрегативні функції: db.collection.count(),  db.collection.countDocuments(), db.collection.find().count(), db.collection.distinct().Поняття pipelines і stages. Метод db.collection.aggregate(). Приклад stages:  $match, $group, $project, $sort  та ін.  Агрегуючі оператори: $sum, $avg, $min, $max, $first, $last, $push, $addToSet. Функції агрегування db.collection.mapReduce() і аналог pipeline $unwind+$group. 2 Практична робота № 4. Агрегація даних. Pipelines. https://drive.google.com/file/d/1zSYnW0RMAY7SoRpPufMwHcwr8BA_7-AU/view?usp=sharing 2 MongoDB Server MongoDB Shell, MongoDB Compass
Database references. Schema validation. Анотація: Встановлювання зв’язків/посилань між документами через manual references і DBRefs.  Пошук пов’язаних даних за допомогою db.collection.aggregate() зі stage $lookup.   Побудова правил валідації з використанням $jsonSchema і $expr, а також їх комбінації. 2 Практична робота № 5. Встановлення зв’язків/посилань між документами. Валідація даних у колекціях. https://drive.google.com/file/d/1zSYnW0RMAY7SoRpPufMwHcwr8BA_7-AU/view?usp=sharing 2 MongoDB Server MongoDB Shell, MongoDB Compass
Тема 2 – MongoDB: просунутий рівень
Індекси: призначення, створення, дослідження впливу. Спеціальні типи індексів: текстові, геопросторові. Анотація: Що таке індекси та чому потрібно їх використовувати? Як вирішити, які поля індексувати? Як забезпечити та оцінити використання індексу? Робота з індексами: db.collection.createIndex(), db. collection.getIndexes(), db. collection.dropIndex(). Складений індекс. Неявні індекси. Індексування вкладених документів. Індексування масивів. Коли не варто використовувати індекси?   Індекси для повнотекстового пошуку. Оператор пошуку по тексту $text і його складові: $search, $language, $caseSensitive, $diacriticSensitive. Виведення релевантності результату пошукового запиту: $meta.   Геопросторові індекси: 2d і 2dsphere. Геопросторові дані. GeoJSON-об’єкти. Робота з  2d-геопросторовим індексом: $geoWithin : { $box: ... }, $geoWithin : { $polygon: ... }, $geoWithin : { $center: ... } та $near. Робота з  2dsphere- геопросторовим індексом: $geoWithin : { $geometry: ... } , $geoWithin : { $centerSphere: ... }, $geoIntersects, $near, $nearSphere. Iмпорт даних із файлу *.json. 6 Практична робота № 6. Індекси. Спеціальні типи індексів. https://drive.google.com/file/d/1zSYnW0RMAY7SoRpPufMwHcwr8BA_7-AU/view?usp=sharing 6 MongoDB Server MongoDB Shell, MongoDB Compass
Хмарні сервіси MongoDB Atlas і MongoDB Charts. Анотація:Створення облікового запису у MongoDB Atlas. Створення Cluster’у. Завантаження Sample Dataset. Пошук із фільтром у MongoDB Atlas, проєкція і сортування даних. Агрегація даних. Використання індексів. Робота з MongoDB Atlas через MongoDB Compass. Iмпорт даних із файлу *.json у хмарну базу даних. Експорт даних з хмарної бази даних у файл *.json.Візуалізація даних. Активація сервісу MongoDB Charts. Створення власного Dashboard для розміщення графіків. Налаштування Data Sources для побудови графіків. Побудова різних типів графіків. 4 Практична робота № 7. Хмарні сервіси MongoDB Atlas і MongoDB Charts. https://drive.google.com/file/d/1zSYnW0RMAY7SoRpPufMwHcwr8BA_7-AU/view?usp=sharing 4 MongoDB Atlas, MongoDB Charts MongoDB Shell, MongoDB Compass
Data migration (from SQL to MongoDB, from MongoDB to SQL). Studio 3T. Анотація:Знайомство з Studio 3T. Використання Studio 3T як клієнта для локальної або хмарної MongoDB.   Міграція даних із реляційної бази даних у локальну або хмарну MongoDB. Налаштування міграції даних. Міграція даних з локальної або хмарної MongoDB у реляційну базу даних. Налаштування міграції даних. 2 Практична робота № 8. Міграція баз даних (SQL → MongoDB, MongoDB → SQL). https://drive.google.com/file/d/1zSYnW0RMAY7SoRpPufMwHcwr8BA_7-AU/view?usp=sharing 4 MongoDB Server/MongoDB Atlas, Studio 3T, Будь-яка реляційна СКБД (наприклад,  MySQL)
C# + MongoDB Анотація:Встановлення MongoDB драйвера в проєкт на С#. Підключення до бази даних через клас MongoClient. Методи класу MongoClient для роботи з базами даних: ListDatabaseNames(), ListDatabases(), GetDatabase(), DropDatabase(). Робота з колекціями  через IMongoDatabase: CreateCollection(), RenameCollection(), GetCollection(), DropCollection(), ListCollections(), ListCollectionNames(). Класи BsonDocument, BsonElement, BsonValue. Додавання, видалення, модифікація документів у колекції через IMongoCollection<BsonDocument>: InsertOne(), InsertMany(), DeleteOne(), DeleteMany(), ReplaceOne(), UpdateOne(), UpdateMany(). Вивидення і фільтрація документів через IMongoCollection<BsonDocument>: Find().  2 Проєктна робота “Розроблення програмного застосунку для роботи з даними в MongoDB” https://drive.google.com/file/d/1zSYnW0RMAY7SoRpPufMwHcwr8BA_7-AU/view?usp=sharing 8 MongoDB Server/MongoDB Atlas, Visual Studio
Python + MongoDB Анотація:Встановлення MongoDB драйвера PyMongo. Підключення до сервера MongoClient(). Отримання списку назв баз даних list_database_names(), підключення до бази даних, видалення бази даних: drop_database(), створення списку назв колекцій у базі даних: db.list_collection_names(), створення колекції db.create_collection(), видалення колекції drop_collection, підключення до колекції, додавання документів collection.insert_one(), collection.insert_many(), виведення і фільтрація документів: find(), модифікація даних: update_one(), update_many(), видалення документів: delete_one(), delete_many(). 2 MongoDB Server/MongoDB Atlas, PyCharm
Модульна контрольна робота №2. 2
Теми та завдання для самостійної роботи
Назва та опис завдання Методи контролю та критерії оцінювання Годин
Практична робота № 1 . Встановлення MongoDB. Базові команди та методи створення та заповнення колекцій. Захист роботи 6
Практична робота № 2. Вибирання даних із колекцій. Захист роботи 6
Практична робота № 3. Заміна та оновлення даних у колекціях. Видалення даних Захист роботи 6
Практична робота № 4. Агрегація даних. Pipelines. Захист роботи 6
Практична робота № 5. Встановлення зв’язків/посилань між документами. Валідація даних у колекціях. Захист роботи 6
Практична робота № 6. Індекси. Спеціальні типи індексів. Захист роботи 18
Практична робота № 7. Хмарні сервіси MongoDB Atlas і MongoDB Charts. Захист роботи 12
Практична робота № 8 . Міграція баз даних (SQL → MongoDB, MongoDB → SQL). Захист роботи 6
Проєктна робота “Розроблення програмного застосунку для роботи з даними в MongoDB” Захист роботи 20
Проєкт
Курсовий проєкт не передбачено навчальним планом.
Рекомендовані джерела інформації та навчальні матеріали
Основні
№ Назва До теми (вказати номер)
1 MongoDB Documentation. - https://www.mongodb.com/docs/
2 MongoDB University. - https://learn.mongodb.com/
3 MongoDB Tutorial. - https://www.w3schools.com/mongodb/
4
Додаткові
№ Назва До теми (вказати номер)
1 Eric Redmond, Jim R. Wilson. “Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL Movement”
2
Контрольні заходи
Назва та опис Методи контролю та критерії оцінювання
Модульна контрольна робота №1. Комп’ютерне тестування 
Модульна контрольна робота №2. Комп’ютерне тестування 
Результати навчання
Згідно стандарту 121 спеціальності, рівень освіти - другий (магістерський): РН03. Будувати і досліджувати моделі інформаційних процесів у прикладній області. РН04. Виявляти інформаційні потреби і класифікувати дані для проєктування програмного забезпечення. РН06. Розробляти і оцінювати стратегії проєктування програмних засобів; обґрунтовувати, аналізувати і оцінювати варіанти проектних рішень з точки зору якості кінцевого програмного продукту, ресурсних обмежень та інших факторів. РН07. Аналізувати, оцінювати і застосовувати на системному рівні сучасні програмні та апаратні платформи для розв’язання складних задач інженерії програмного забезпечення. РН17. Збирати, аналізувати, оцінювати необхідну для розв’язання наукових і прикладних задач інформацію, використовуючи науково-технічну літературу, бази даних та інші джерела.

Зв'язок з ринком праці

Спеціальність/професія, підготовці до діяльності в якій читається курс:
Розробник серверної частини
Посилання на вакансії (понад 3),
  1. https://jobs.dou.ua/companies/deloitte/vacancies/286291/
  2. https://jobs.dou.ua/companies/paycord/vacancies/286197/
  3. https://jobs.dou.ua/companies/outstaff-your-team/vacancies/286134/
  4. https://jobs.dou.ua/companies/bitmedia-labs/vacancies/285968/
  5. https://jobs.dou.ua/companies/manoris/vacancies/278420/
  6. https://jobs.dou.ua/companies/mycredit/vacancies/282422/
 
Перелік компетентностей із вказаних як вимоги до вакансії, які набувають студенти, в процесі проходження дисципліни.
Досвід роботи з MongoDB Досвід візуалізації даних

Інструменти оцінювання результатів навчання за дисципліною

Об'єкт оцінювання (знання методів та принципів, практичні навички, командна робота тощо) Методи контролю (тести, виконання поточних практичних завдань та їх форма: написання коду, створення діаграми Гантта, створення прототипу тощо) Інструмент оцінювання (доступ до результатів тесту, гостьова лекція, посилання на виконані завдання, посилання на проєкт, присутність на захисті проєктів, доступ до запису захисту тощо)
Практичні роботи №1-8 Виконання завдань, оформлення звіту, захист роботи доступ до виконанних практичних завдань
Проєктна робота Виконання проєкту, оформлення звіту, захист проєкту доступ до виконанних проєктів
Модульна контрольна робота №1. Комп’ютерне тестування доступ до результатів тестування
Модульна контрольна робота №2. Комп’ютерне тестування доступ до результатів тестування

Залишити відповідь Скасувати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Недавні записи

  • Організаційна зустріч 23.06.2025
  • Старт нового сезону сертифікації — 2025

Останні коментарі

  1. polina до Криптографія та стеганографія
  2. olena до Організаційна зустріч 23.06.2025
  3. admin до Технології розробки мобільних додатків

Категорії

  • Записи

Сторінки

  • Головна
  • Для викладачів
  • Для ІТ-спеціалістів
  • Інструкція для викладача
  • Пілот проєкту
  • Приєднатись до Kharkiv IT Cluster
  • Силабуси

Архіви

  • Організаційна зустріч 23.06.2025
  • Старт нового сезону сертифікації — 2025

Календар

Квітень 2026
Пн Вт Ср Чт Пт Сб Нд
 12345
6789101112
13141516171819
20212223242526
27282930  
« Чер    

Тема WordPress Project Management від Misbah WP | Працює на WordPress