ТЕХНОЛОГІЇ ПРОЄКТУВАННЯ ПОСТРЕЛЯЦІЙНИХ ТА ОБ’ЄКТНООРІЄНТОВАНИХ БАЗ ДАНИХ - Робоча програма навчальної дисципліни (Силабус)
Реквізити навчальної дисципліни
Рівень вищої освіти | Другий (магістр) |
Галузь знань | 12 Інформаційні технології |
Спеціальність | 126 Інформаційні системи та технології |
Освітня програма | Інформаційне забезпечення робототехнічних систем |
Статус дисципліни | Нормативна |
Форма навчання | очна(денна)/заочна |
Рік підготовки, семестр | 1 курс, 1 семестр |
Обсяг дисципліни | 120 годин (36 годин – Лекції, 18 годин – Практичні) |
Семестровий контроль/ контрольні заходи | Залік/контрольні роботи |
Розклад занять | http://roz.kpi.ua |
Мова викладання | Українська |
Інформація про керівника курсу / викладачів | Лектор: к.т.н., Крилов Євген Володимирович моб. +38(050)387-16-45 Лабораторні: к.т.н., Крилов Євген Володимирович |
Розміщення курсу | https://campus.kpi.ua |
Програма навчальної дисципліни
Опис навчальної дисципліни, її мета, предмет вивчання та результати навчання
Опис дисципліни. При проходженні даної дисципліни, студенти познайомляться з поняттям «NO SQL бази даних», та детальніше вивчатимуть методи та засоби створення пост реляційних, об’єктнооріентованих, графових, документоорієнтованих та багатомірних структур баз даних. На лабораторних заняттях опанують етапи проектування не реляційних баз даних. В курсі передбачений контроль якості отриманих знань у вигляді експрес-контрольних та модульних контрольних робіт. На лекціях проводитимуться практичні групові заняття.
Предмет навчальної дисципліни: Дисципліна сприяє розумінню та засвоєнню студентами методів проектування пост реляційних, об’єктнооріентованих, графових, документоорієнтованих та багатомірних структур баз даних.
Міждисциплінарні зв’язки. Дисципліна «ТЕХНОЛОГІЇ ПРОЄКТУВАННЯ ПОСТРЕЛЯЦІЙНИХ ТА ОБ’ЄКТНООРІЄНТОВАНИХ БАЗ ДАНИХ» базується на дисциплінах: Програмування – 1. Основи програмування; Програмування – 2. Система управління базами даних.
Мета навчальної дисципліни. Підготовка висококваліфікованих фахівців, які володіють основними поняттями теорії проектування пост реляційних, об’єктнооріентованих, графових, документоорієнтованих та багатомірних баз даних, моделюванням предметної області для побудови складних не реляційних баз даних.,
Основні завдання навчальної дисципліни
Знання:
ролі та місця методів проектування не реляційних баз даних в інформаційно-технологічному середовищі їх використання;
вибору необхідної моделі не реляційної бази даних
методів та технологій створення програмних систем з використанням NO SQL баз даних;
основних понять масштабування не реляційних баз даних;
Уміння:
аналізувати предметну область, визначену рамками певного проєкту;
обрати найбільш ефективну не реляційну СУБД для реалізації проєкту
розробляти оптимальні структури не реляційних баз даних;
.
Пререквізити та постреквізити дисципліни (місце в структурно-логічній схемі навчання за відповідною освітньою програмою)
Пререквізити: вміти користуватися комп’ютером на рівні адміністратора, базові знання в області програмування та проектування реляційних баз даних.
Постреквізити: проектування та реалізація програмних систем з використанням NO SQL баз даних..
Після проходження дисципліни студенти зможуть відтворити базові етапи розробки програмних систем з використанням не реляційних баз даних, а саме виконувати аналіз предметної області, обирати оптимальну модель даних, будувати оптимальні с точки зору швидкодії структури баз даних, розробляти складні NO SQL системи.
Зміст навчальної дисципліни
Очна форма
Лекційні заняття
Лекція 1. Моделі даних NoSQL.
Лекція 2. Пост реляційна та об’єктноорієнтована модель.
Лекція 3. Багатомірна та KEY Velue модели.
Лекція 4. Колонко-орієнтована та Документно-орієнтована модели.
Лекція 5. Графова модель.
Лекція 6. Теоретичні основи NO SQL БД. CAP теорема.
Лекція 7. Узгодженість даних , Доступність, Стійкість до поділу.
Лекції 8. Масштабування. Проста схема (без шардування).
Лекція 9. Шардована схема без репліка сетів.. Шардована схема з репліка сетами. .
Лекція 10. Map-Reduce технологія.
Лекція 11. Парадигми Master-Slave, Replica Set. Consistent hashing.
Лекція 12. Недоліки No Sql рішень (mongoDB, Redis, Neo4j, Cassandra).
Лекція 13-16 Робота з mongoDB.
.
Лабораторні заняття
1. Створення технічного завдання на розробку програмного забезпечення з використанням пост реляційних БД (вибір моделі даних, проектування структури БД, формування запитів)..
2. Розробка реляційної та не реляційної структури БД.
3. Маштабування не реляційної БД
4. MongoDB. Створення та видалення БД.
5. MongoDB. Операції з колекціями
6. MongoDB.. Операції лімітація та агрегація
7. MongoDB . Шардування.
Навчальні матеріали та ресурси
Базова література
Бородин А.И. модели данных Конспект лекций http:// www.bseu.by/new/tohod/lekcii2_4.html.
Артур Б Смит M Computing May /June 2015, v.4 n.2, http:// www.inftech.webservis.ru/it/database/oo/art3.html
Допоміжна література
- Иванчева Н.А., Иванчева Т.А . Постреляционная СУБД Cache (Методическое пособие)./- Новосибирск: Новосибирский государственный университет, 2014.
.
.
Навчальний контент
Методика опанування навчальної дисципліни (освітнього компонента)
Очна форма
Лекційні заняття
№ з/п | Назва теми лекції та перелік основних питань (перелік дидактичних засобів, посилання на літературу та завдання на СРС) |
---|---|
1 | Лекція 1. Моделі даних NoSQL. Визначення , Історія назви , Розвіток ідеї , Коротка історія баз даних NoSQL . Дидактичні матеріали: Презентація PowerPoint, комп’ютер, проектор. |
2 | Лекція 2. Пост реляційна та об’єктноорієнтована модель. Пост реляційна модель. Таблиця накладних. Таблиця товарів. Об’єктноорієнтована модель. Приклад об’єктноорієнтованої бази даних. Клас об’єкта. Інкапсуляція. Наслідування. Поліморфізм. Недоліки об’єктноорієнтованих моделей. Дидактичні матеріали: Презентація PowerPoint, комп’ютер, проектор. |
3 | Лекція 3. Багатомірна та KEY Velue модели. Приклад трьохмірної моделі. Зріз. Обертання. KEY Velue. Redis, Dynamo, Riak - деякі приклади баз даних сховищ ключів і значень. Дидактичні матеріали: Презентація PowerPoint, комп’ютер, проектор. |
4 | Лекція 4. Колонко - орієнтована та Документно - орієнтована модели. Column-based. Document_based. Amazon SimpleDB, CouchDB, MongoDB, Riak, Lotus Notes, MongoDB - популярні системи СУБД, створені на основі документів. Дидактичні матеріали: Презентація PowerPoint, комп’ютер, проектор. |
5 | Лекція 5. Графова модель. Graph-based. Neo4J, Infinite Graph, OrientDB, FlockDB - деякі популярні бази даних на основі графів. |
6 | Лекція 6 Теоретичні основи NO SQL БД. CAP теорема. Теорема Брюєра. |
7 | Лекція 7 Узгодженість даних , Доступність, Стійкість до поділу. Узгодженість даних (англ. consistency). Доступність (англ. availability). Стійкість до поділу (англ. partition tolerance). CA (Availability + Consistency – Parition tolerance). CP-система (Consistency + Partition tolerance – Availability). AP-система (Availability + Partition tolerance – Consistency). |
8 | Лекція 8. Масштабування. Проста схема (без шардування). Mongod. Чанкі. Chunksize. Дидактичні матеріали: Презентація PowerPoint, комп’ютер, проектор. |
9 | Лекція 9. Шардована схема без репліка сетів.. Шардована схема з репліка сетами. Shard key . Як обрати shard key ? Config сервер . Роутер запитів . Балансер. Дидактичні матеріали: Презентація PowerPoint, комп’ютер, проектор. |
10 | Лекція 10. Map-Reduce технологія. Anti_Enropy Protocols, Gossips (розповсюдження епідемії). Типи Anti_Enropy Protocols. Replication. Дидактичні матеріали: Презентація PowerPoint, комп’ютер, проектор. |
11 | Лекція 11. Парадигми Master-Slave, Replica Set. Consistent hashing. Сoordinator Election. Replication: Автоматична відказостійкість. Hashed Sharding. Consistent hashing (add node, remove node). Дидактичні матеріали: Презентація PowerPoint, комп’ютер, проектор. |
12 | Лекція 12. Недоліки No Sql рішень. Недоліки No Sql рішень (mongoDB, Redis, Neo4j, Cassandra). Дидактичні матеріали: Презентація PowerPoint, комп’ютер, проектор. |
13 | Лекція 13-16. Робота з mongoDB. MongoDB. Data Model: EMBEDDED DATA MODEL. Data Model: Normalized Data Models. Створити Database. видалення БД. Створити Collection. Видалити Collection. типи даних. Update() метод. Save() метод. remove() Метод проєкції. Лімітація записів. Sort Records. Відношення. Агрегації. Single Purpose Aggregation Operations. Replication. Автоматична відказостійкість. Sharded Cluster. Connecting to a Sharded Cluster. Hashed Sharding. Ranged Sharding. Zones in Sharded Clusters. Дидактичні матеріали: Презентація PowerPoint, комп’ютер, проектор. |
Лабораторні заняття
№ | Назва лабораторної роботи | Кількість ауд. годин |
---|---|---|
1 | Лабораторна робота 1. Створення технічного завдання на розробку програмного забезпечення з використанням пост реляційних БД (вибір моделі даних, проектування структури БД, формування запитів). | 2 |
2 | Лабораторна робота 2. Розробка реляційної та не реляційної структури БД (студент повинен спочатку розробити реляційну структуру БД, побачити недоліки, вибрати модель не реляційної БД, спроектувати структуру не реляційної БД) | 2 |
3 | Лабораторна робота 3. MongoDB. Створення та видалення БД.( Data Model: EMBEDDED DATA MODEL. Data Model: Normalized Data Models. Створити Database. видалення БД) | 4 |
4 | Лабораторна робота 4. MongoDB. Операції з колекціями (створити Collection. Видалити Collection) | 2 |
5 | Лабораторна робота 5 MongoDB. Операції лімітація та агрегація (лімітація записів. Sort Records. Відношення. АгрегаціїЇ. Single Purpose Aggregation Operations. Replication) | 4 |
6 | Лабораторна робота 6. MongoDB .Шардування.( Проста схема (без шардування). Шардована схема без репліка сетів. Шардована схема з репліка сетами.) | 2 |
7 | Лабораторна робота 7. Маштабування в не реляційної БД (горизонтальне та вертикальне масштабування.) | 2 |
Самостійна робота студента/аспіранта
Очна форма
|
Назва теми, що виноситься на самостійне опрацювання | Кількість годин СРС |
---|---|---|
1 | Робота з списками | 10 |
2 | Масиви | 10 |
3 | Об’єкти | 10 |
4 | Використання багатомірних структур для зберігання даних | 12 |
5 | Функції для роботи з багатомірними масивами | 32 |
Політика та контроль
Політика навчальної дисципліни (освітнього компонента)
Система вимог, які ставляться перед студентом:
відвідування лекційних та лабораторних занять є обов’язковою складовою вивчення матеріалу;
на лекції викладач користується власним презентаційним матеріалом; відпрацьовує практичну частину на віртуальній машині з встановленою відповідною РСУБД; використовує гугл-диск для викладання матеріалу поточної лекції, додаткових ресурсів, лабораторних робіт та інше; викладач відкриває доступ до певної директорії гугл-диска для скидання електронних лабораторних звітів та відповідей на МКР;
на лекції заборонено відволікати викладача від викладання матеріалу, усі питання, уточнення та ін. студенти задають в кінці лекції у відведений для цього час;
лабораторні роботи захищаються у два етапи – перший етап: студенти виконують завдання на допуск до захисту лабораторної роботи; другий етап – захист лабораторної роботи. Бали за лабораторну роботу враховуються лише за наявності електронного звіту;
модульні контрольні роботи пишуться на лекційних заняттях без застосування допоміжних засобів (мобільні телефони, планшети та ін.); результат пересилається у файлі до відповідної директорії гугл-диску;
заохочувальні бали виставляються за: активну участь на лекціях; участь у факультетських та інститутських олімпіадах з навчальних дисциплін, участь у конкурсах робіт, підготовка оглядів наукових праць; презентацій по одній із тем СРС дисципліни тощо. Кількість заохочуваних балів не більше 10;
штрафні бали виставляються за: невчасну здачу лабораторної роботи. Кількість штрафних балів не більше 10.
Види контролю та рейтингова система оцінювання результатів навчання (РСО) (очна форма)
Рейтинг студента з дисципліни складається з балів, що він отримує за:
Відповіді та активність на лекціях;
виконання та захист7 лабораторних робіт;
виконання 2 модульних контрольних робіт (МКР);
заохочувальні та штрафні бали.
Система рейтингових балів та критерії оцінювання
Відповіді на лекціях:
«відмінно» – повна відповідь (не менше 90% потрібної інформації) – 5 балів;
«добре» – достатньо повна відповідь (не менше 75% потрібної інформації) або повна відповідь з незначними недоліками – 4 балів;
«задовільно» – неповна відповідь (не менше 60% потрібної інформації) та незначні помилки – 1-3 бали;
«незадовільно» – відповідь не відповідає вимогам до «задовільно» – 0 балів.
Лабораторні роботи:
«відмінно», повна відповідь на питання під час захисту (не менш ніж 90% потрібної інформації) та оформлений належним чином електронний протокол до лабораторної роботи – 10/9 балів;
«добре», достатньо повна відповідь на питання під час захисту (не менш ніж 75% потрібної інформації) та оформлений належним чином електронний протокол до лабораторної роботи – 8/7 бали;
«задовільно», неповна відповідь на питання під час захисту (не менш ніж 60% потрібної інформації), незначні помилки та оформлений належним чином електронний протокол до лабораторної роботи – 16/5 бал;
«незадовільно», незадовільна відповідь та/або не оформлений належним чином електронний протокол до лабораторної роботи – 0/3 балів.
За кожне заняття запізнення з поданням лабораторної роботи до захисту від встановленого терміну оцінка знижується на 1 бал.
Модульні контрольні роботи:
«відмінно», повна відповідь (не менш ніж 90% потрібної інформації) – 9-10 балів;
«добре», достатньо повна відповідь (не менш ніж 75% потрібної інформації), або повна відповідь з незначними помилками – 7-8 балів;
«задовільно», неповна відповідь (але не менш ніж 60% потрібної інформації) та незначні помилки – 5-6 бали;
«незадовільно», незадовільна відповідь (неправильний розв’язок задачі), потребує обов’язкового повторного написання в кінці семестру – 0-4 балів.
Заохочувальні бали
– за виконання творчих робіт з кредитного модуля (наприклад, участь у факультетських та інститутських олімпіадах з навчальних дисциплін, участь у конкурсах робіт, підготовка оглядів наукових праць тощо); за активну роботу на лекції (питання, доповнення, зауваження за темою лекції, коли лектор пропонує студентам задати свої питання) 1-2 бали, але в сумі не більше 10;
– презентації по СРС – від 1 до 5 балів.
Міжсесійна атестація
За результатами навчальної роботи за перші 7 тижнів максимально можлива кількість балів – 37 балів (3 лабораторні, МКР-1, 2 експрес-контрольні, 7 заохочувальних балів). На першій атестації (8-й тиждень) студент отримує «зараховано», якщо його поточний рейтинг не менший ніж 15 балів.
За результатами 13 тижнів навчання максимально можлива кількість балів – 53 балів (7 лабораторні, МКР-2, 2 експрес-контрольні, 13 заохочувальних балів). На другій атестації (14-й тиждень) студент отримує «зараховано», якщо його поточний рейтинг не менший ніж 25 балів.
Максимальна сума вагових балів контрольних заходів протягом семестру складає:
RD = 7*rлаб+2*rмкр+5*rек + (rз - rш)=7*10+2*10+2*5+ (rз - rш)=100 + (rз - rш),
де rлаб – бал за лабораторну роботу (0…10);
rмкр – бал за написання МКР (0…10);
rек – бал за написання експрес-контрольної роботи (0…4);
rз – заохочувальні бали за активну участь на лекціях, презентації, участь в олімпіадах, конкурсі роботи, наукові роботи за тематикою дисципліни (0…10);
rзш – штрафні бали.
Залік:
Студенти, які виконали всі умови допуску до семестрової атестації (не мають заборгованостей з лабораторних робіт, наявні усі електронні звіти) та набрали протягом семестру необхідну кількість балів (RD ≥ 60), отримують залікову оцінку (залік) так званим «автоматом» відповідно до набраного рейтингу (табл. 1, що наведена нижче). У такому разі до заліково-екзаменаційної відомості вносяться бали RD та відповідні оцінки.
Студенти, які набрали протягом семестру менше ніж 60 балів та не мають заборгованостей, зобов’язані виконувати залікову контрольну роботу.
На заліку студенти виконують письмову контрольну роботу. Кожне завдання містить три теоретичних питання і два практичних. Перелік питань наведений у методичних рекомендаціях до засвоєння кредитного модуля. Кожне питання оцінюється у 20 балів.
Студентам, які протягом семестру набрали більш ніж 60 балів та виконали всі умови допуску, надається можливість виконувати залікову контрольну роботу з метою підвищення оцінки. В такому разі, попередній рейтинг студента з кредитного модуля скасовується і він отримує оцінку з урахуванням результатів залікової контрольної роботи (табл. 1, що наведена нижче).
Система оцінювання питань:
«відмінно», повна відповідь (не менше 90% потрібної інформації) – 18-20 балів;
«добре», достатньо повна відповідь (не менше 75% потрібної інформації, або незначні неточності) – 13-17 балів;
«задовільно», неповна відповідь (не менше 60% потрібної інформації та деякі помилки) – 7-12 балів;
«незадовільно», незадовільна відповідь – 0-6 балів.
Сума набраних балів RD або балів за залікову роботу переводиться до залікової оцінки згідно з таблицею:
Таблиця 1. Переведення рейтингових балів до оцінок за університетською шкалою
Кількість балів | Оцінка |
100-95 | Відмінно |
94-85 | Дуже добре |
84-75 | Добре |
74-65 | Задовільно |
64-60 | Достатньо |
Менше 60 | Незадовільно |
Не виконані умови допуску | Не допущено |
Додаткова інформація з дисципліни (освітнього компонента)
передбачена можливість закривати частину лабораторного та лекційного матеріалу шляхом здобування сертифікатам по online курсам відповідних розділів та тем дисципліни;
перелік теоретичних питань, які виносяться на семестровий контроль наведено в Додатку 1;
Робочу програму навчальної дисципліни (Силабус):
Складено доцент, к.т.н., Крилов Євген Володимирович
Ухвалено кафедрою ІСТ (протокол № 1 від 31.08.2022 р.)
Погоджено Методичною комісією факультету[1] (протокол № 1 від .09.2022 р.)
Додаток 1
Перелік теоретичних питань на залік
1. Постреляційна модель.
2. Об’єктноорієнтована модель.
3. Системи управління реляційними БД.
4. Системи управління об’єктноорієнтованими БД.
5. Вибір моделі не реляційної БД. Теорема Брюєра
6. Маштабування
7. MongoDB. Створення та видалення БД
8. MongoDB. Операції з колекціями
9. MongoDB. Операції з колекціями
10. MongoDB. Операції лімітація та агрегація
11. Проста схема (без шардування)
12. Шардована схема без репліка сетів
13. . Шардована схема з репліка сетами
14.. Команди Cache object script. .
15. Робота з строками.
16. Робота з датами.
17. Загальні положення. Правила ідентифікації. Елементи класів. Ім’я класів. Ключові слова.
18. Властивості. Поведінка властивостей
[1] Методичною радою університету – для загальноуніверситетських дисциплін.