Summary of Study |
Summary of Branches |
All Subject Groups |
All Subjects |
List of Roles |
Explanatory Notes
Instructions
Web page:
https://cw.fel.cvut.cz/wiki/courses/b4m36ds2/
Anotation:
The aim of the course is to introduce students to new trends in the field of database systems. We will focus primarily on current issues related to Big Data and the associated challenges of distributed data storage and processing. The course will present the basic types of so-called NoSQL databases, as well as related topics such as cloud computing, data warehouses, and distributed computing over large datasets.
Study targets:
The aim of the study is for students to understand the principles of modern database systems, with a focus on NoSQL databases and working with large-scale and diverse data. Students will learn to distinguish the basic types of NoSQL databases and understand their data models, querying capabilities, and typical areas of application.
After completing the course, students will be able to choose an appropriate database system for a specific task, design a corresponding data model, and justify the chosen solution with regard to the nature of the data, expected queries, scaling, distribution, and performance. Emphasis is also placed on practical work with selected database systems and on the ability to compare their advantages and limitations.
Content:
The course focuses on modern trends in database systems, with an emphasis on Big Data and NoSQL databases. Students will become familiar with the basic principles of storing, managing, and processing large volumes of data in distributed environments.
The main part of the course is focused on the overview, classification, and use of the basic types of NoSQL databases. Attention will be given to key-value databases, document databases, wide-column databases, and graph databases. For each database type, its basic principles, typical use cases, advantages, and limitations will be explained.
The course also covers the principles of scaling, replication, data distribution, consistency, and the CAP theorem. Students will learn how these principles influence the design and operation of modern database systems.
Within the broader context of working with data, the course will also introduce data formats, MapReduce, HDFS, RDF databases, query optimization, performance, and polyglot persistence.
Course outlines:
| 1. | | Introduction to Big Data and NoSQL databases |
| 2. | | Comparison and classification of NoSQL databases |
| 3. | | Fundamentals of Big Data management (CAP, distribution, scaling, replication) |
| 4. | | Key-Value databases |
| 5. | | Document databases |
| 6. | | Wide-column databases |
| 7. | | Graph databases – basic principles |
| 8. | | Graph databases – advanced aspects |
| 9. | | Advanced principles of Big Data (transactions, performance, polyglot persistence) |
| 10. | | The principle of MapReduce |
| 11. | | Data warehouses and Big Data |
| 11. | | Cloud computing |
| 13. | | Advanced principles of Big Data (transactions, performance, polyglot persistence) |
| 14. | | Reserve |
Exercises outline:
| 1. | | Introduction to Big Data and NoSQL databases |
| 2. | | Comparison and classification of NoSQL databases |
| 3. | | Data formats (XML, JSON) |
| 4. | | Key-Value databases (Redis) |
| 5. | | Key-Value databases (Redis, Redis Stack) |
| 6. | | Document databases (MongoDB) – creating, updating, and deleting records |
| 7. | | Document databases (MongoDB) – search queries |
| 8. | | Document databases (MongoDB) – aggregation queries |
| 9. | | Wide-column databases |
| 10. | | Graph databases – basic CRUD operations |
| 11. | | Graph databases – graph traversal and search |
| 12. | | MapReduce and HDFS |
| 13. | | Final project demonstration |
| 14. | | Reserve |
Literature:
| 1. | | http://nosql-database.org/ |
| 2. | | Pramod J. Sadalage - Martin Fowler: NoSQL Distilled: A Brief Guide to the Emerging World of Polyglot |
Persistence, 2012
| 3. | | Eric Redmond - Jim R. Wilson: Seven Databases in Seven Weeks: A Guide to Modern Databases and the NoSQL |
Movement, 2012
| 4. | | Sherif Sakr - Eric Pardede: Graph Data Management: Techniques and Applications, 2011 |
| 5. | | Shashank Tiwari: Professional NoSQL, 2011 |
| 6. | | Hadoop: The Definitive Guide, by Tom White, 2nd edition, 2010 |
| 7. | | Martin Kleppmann. Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and |
Maintainable Systems, 2017
| 8. | | Shannon Bradshaw, Eoin Brazil, Kristina Chodorow. Mongodb: The Definitive Guide: Powerful and Scalable Data, |
2020
| 9. | | Jeff Carpenter, Eben Hewitt. Cassandra: The Definitive Guide. O’Reilly Media, 2016 |
| 10. | | Jeremy Nelson. Mastering Redis. Packt Publishing, 2016 |
Requirements:
To complete the course, students are required to attend practical classes, work continuously throughout the semester, and submit assigned tasks and the required milestones of the final project on time via the e-learning platform.
Students must prepare the final project according to the assignment, present its results to the teacher, and successfully pass the in-person written exam. All submitted work will be checked using an anti-plagiarism system.
Keywords:
Big data, NoSQL, MapReduce, Scaling, CAP theorem, Column database, Graph database, NewSQL, Cloud computing, Data warehouses, Data generation, Benchmarking
Subject is included into these academic programs:
| Page updated 28.5.2026 12:52:30, semester: L/2026-7, L/2027-8, L/2025-6, Z/2027-8, Z/2026-7, L/2028-9, L/2029-30, Z/2028-9, Send comments about the content to the Administrators of the Academic Programs |
Proposal and Realization: I. Halaška (K336), J. Novák (K336) |