NOSQL DATABASES
- Overview
- Assessment methods
- Learning objectives
- Contents
- Delivery method
- Teaching methods
- Contacts/Info
The course has no mandatory prerequisite
Exams aim at verifying that students have successfully acquired the knowledge and abilities described in the "Objectives" section. The exam consists of a written test which lasts 2 hours. Students cannot consult any textbook or other learning material during the exam. The written exam consists of 3 open questions on the conceptual aspects of the course, and 3/4 exercises which aim at assessing data modeling, or data analysis, or data distribution or data protection abilities learned by the students. The grade is given out of thirty. Students can do intermediate written tests to assess the acquired knowledge and abilities at mid and end of the course. The intermediate tests have the same structure as the final written exam. The grade of both tests is given in thirtieths. The exam is passed if a student receives a grade greater than 18/30 in both intermediate tests, or if he/she receives a grade greater than 18/30 in the final written test.
If a student has received a grade greater than 18/30 in both intermediate tests, the final exam score is the average value of the grades received in the intermediate tests. Otherwise, the final score corresponds to the grade of the written test.
The score of intermediate and final tests is derived as follows. Each question and exercise is associated with a weight corresponding to the maximum score the student can obtain by correctly carrying out the exercise. The weight can range from 3 to 8 points depending on the complexity of the related question or exercise. The final grade, specified out of thirty, is calculated as the weighted average of the correctness percentages of the related questions and exercises.
NoSQL databases are modern data management systems which are getting more and more popularity for their ability to handle high volumes of heterogeneous and semi-structured data in a very efficient way, meeting the requirements of a variety of today ICT applications. This course aims to define data management skills for NoSQL databases, such as the ability to choose the NoSQL systems that best fit the data management requirements of given application scenarios and to properly configure and use these systems.
It is expected, which once completed the course, the students
1) know the main data models that are currently used by NoSQL databases
2) are able to manage data modeling strategies tailored for NoSQL systems that refer to the main data models
3) are able to manage data analysis and manipulation for a selection of popular systems
4) know data sharding and replication techniques used by NoSQL systems with cluster-based deployments, and can handle these data distribution mechanisms.
5) know access control mechanisms currently used by NoSQL systems, and can configure such data protection mechanisms.
Throughout the course, the students are expected to form the ability to autonomously recognize and handle problems related to data modeling, analysis and management with NoSQL databases.
The students will learn the terminology related to the domain of NoSQL databases.
The course will cover the following topics:
- Introduction to NoSQL databases (4h, teaching goal 1)
++ Motivations, variety of NoSQL systems, and basic concepts.
- Key-Value databases (6h, teaching goal 2 and 3)
++ Adopted data model, database design strategies, and analysis features
- Document databases (6h, teaching goal 2 and 3)
++ Adopted data model, database design strategies, and analysis features
- Column family databases (6h, teaching goal 2 and 3)
++ Adopted data model, database design strategies, and analysis features
- Data distribution mechanisms and data consistency principles (8h, teaching goal 4)
++ Sharding, replication, and consistency models
- Data analysis and manipulation (12h, teaching goal 3)
++ SQL-like languages, platform specific query languages, and MapReduce
- Access control within NoSQL datastores (6h, teaching goal 4)
The course consists of 48 hours of lectures. The lessons aim to present multiple aspects of data management with NoSQL databases and practical applications of the proposed data modeling, data analysis, and management techniques.
Students reception takes place by appointment, issuing an email to the lecturer: pietro.colombo@uninsubria.it
Professors
Borrowers
-
Degree course in: COMPUTER SCIENCE