DATA BASE AND BIG DATA ANALYTICSModulo DATA BASE
Academic Year 2024/2025 - Docente: SIMONE PALAZZORisultati di apprendimento attesi
General objectives
1. Equip students with a comprehensive understanding of both relational data models, focusing on the principles of design, querying, and management using SQL and NoSQL paradigms.
2. Develop practical skills through hands-on exercises, enabling students to design and interpret database models effectively using professional software tools.
3. Enhance the ability to critically evaluate database design alternatives and choose appropriate models, including assessing when NoSQL solutions may be preferable.
4. Foster communication skills to translate user requirements into database designs, ensuring effective interaction with non-technical stakeholders and precise definition of application needs.
Synthetic general description
This course offers foundational knowledge of relational and NoSQL data models, focusing on database design, querying, and management using SQL. Students engage in practical exercises to develop skills in database design and evaluation, enhancing their ability to communicate technical concepts to non-experts and laying the groundwork for advanced learning in database systems.
Expected learning results
Knowledge and understandingThis course covers the relational data model, focusing on designing, building, querying, and managing databases using SQL. It also introduces basic NoSQL data models.
Applying knowledge and understandingThe course includes practical examples and exercises to help students design databases and understand SQL models, using software tools common in professional settings.
Making judgements
Students will learn to evaluate design and query alternatives, and decide when to use NoSQL models over the relational model based on basic knowledge of both.
Course Structure
Lectures and hands-on exercises.
Should teaching be carried out in mixed mode or remotely, it may be necessary to introduce changes with respect to previous statements, in line with the programme planned and outlined in the syllabus.
Required Prerequisites
None, although basic programming skills are helpful.
Attendance of Lessons
Strongly recommended. Attending and actively participating in the classroom activities will contribute positively towards the overall assessment.
Detailed Course Content
1.1. Introduction to DBMS
1.2. Architecture of DBMS
1.3. Data models
2. Relational Model (1.5 CFU)
2.1. Basic concepts of the relational model
2.2. Keys
2.3. Relational algebra
2.5. Operators: projection, selection, join
3. SQL (3 CFU)
3.1. Table definition and constraints
3.2. Filtering and sorting data
3.3. Joins and subqueries
3.4. Aggregate operators
3.5. Views
3.6. Transactions
4. Basics of non-relational models (0.5 CFU)
4.1. When to use relational or non-relational models
4.2. Types of non-relational models
4.3. Document-oriented databases
Textbook Information
-
R. Elmasri and S. Navathe, "Fundamentals of Database Systems", 7th Edition, Pearson, 2016.
-
Instructor’s notes
Course Planning
Subjects | Text References | |
---|---|---|
1 | Relational model (part 1) | |
2 | Relational model (part 2) | |
3 | Relational algebra (part 1) | |
4 | Relational algebra (part 2) | |
5 | Relational algebra exercises | |
6 | SQL basic concepts (part 1) | |
7 | SQL basic concepts (part 2) | |
8 | SQL exercises | |
9 | SQL aggregate operators | |
10 | SQL transactions and views | |
11 | NoSQL |
Learning Assessment
Learning Assessment Procedures
The final exam consists of solving SQL exercises. An optional oral discussion of the written test may be required, at the teacher's discretion.
Grade criteria:
• Failed: the student does not know the basic concept of the course and has completed less than 40% of the required assignemnts
• 18-20: the student has a basic knowledge of the topics of the course but he has great difficulties in applying them to practical exercises and problem solving pipelines.
• 21-24: the student has a basic knowledge of the topics of the course and he is able to solve simple problemns and exercises with some guidance from the teacher.
• 25-27: the student has a good knowledge of the topics of the course and can complete the assignemnt in autonomy with minor errors
• 28-30 e lode: The student has full knowledge of the topics of the course and is able to complete in autonomy assignemnts making connections and with only very minimal occasional mistakes.
Exam may also be carried out on line, should the conditions require it.
Examples of frequently asked questions and / or exercises
The written test consists of:
- Creation of a database
- Creation of tables, given the specifications
- Implementation of queries in SQL
Written test simulations will be carried out during the course.