THREE-DIMENSIONAL MODELING

Course objectives

General goals: To be able to design/evaluate the properties, storage structure and protocols of a database management system. Specific goals: Knowledge of the properties of a database schema and of a decomposition. Ability to retrieve information in a relational database using relational algebra. Ability to evaluate the cost of data access operations. Knowledge of protocols for concurrency control. Knowledge and understanding: Fundamentals of relational database design and querying (relational algebra). Main data structures for storage of data on secondary memory. Main techniques for concurrency control. Applying knowledge and understanding: To design relational schemes with “good properties”. To formulate queries in relational algebra. To evaluate costs of basic operations on a file with a given physical organization. Critical and judgmental skills: To be able to assess the properties of a relational schema and of a decomposition. To be able to choose an appropriate storage structure for the information in a schema. Communication skills: To be able to communicate/share che qualitative/quantitative characteristics of the relational structure of a database. Learning skills: To be able to use the learned concepts in the following module of the course and in a possible advanced course on Databases.

Channel 1
MARIA DE MARSICO Lecturers' profile

Program - Frequency - Exams

Course program
Introduction to database management systems (2 hours) History Characteristics of database management systems Model and system evolution The relational model (30 hours) Foundamentals: domain, attribute, relation, n-uple, schema Query languages (relational algebra, relational complete languages) Normalization theory Functional dependencies Key of a relation Third normal form Armstrong axioms and closure of a set of dependencies Closure of a set of attributes Minimal cover of a set of functional dependencies Decompositions with a lossless join Decompositions that preserve dependncies Physical organization of data (14 hours) Secondary storage Physical and logical records Pointers Bloks Heap file Hash file Indexed file (dense and sparse indexes). B-tree Concurrency control (14 hours) Transactions Serial schedule Serializability Transaction models and locking protocols Livelock and deadlock. Two-phase protocols Conservative and aggressive protocols "Dirty" data Cascade rollback Timestamp
Prerequisites
A good proficiency in topics related to logic. A good proficiency in creating/understanding algorithms and in writing pseudo-code.
Books
1. R. A. Elmasri, S. B. Navathe, “Sistemi di basi di dati – Fondamenti”, Pearson – Addison Wesley, IV edizione, 2004. 2. J. D. Ullman, “Principles of database and knowledge-base systems”, vol. I, Computer Science Press, 1988. Course slides and stuff Examples of exam exercises
Teaching mode
Presentation of theoretical aspects. For each topic relevant for the written exam, examples will be discussed and exercises will be proposed in the class and their correct solution will be given
Frequency
Face-to-face frequency
Exam mode
The written exam includes exercises of relational algebra, relational theory and physical organization of data. The oral examination includes definitions and theorems discussed during the course lessons. The exam can be recorded only after passing both the course modules.
Lesson mode
Students have at their disposal handouts, video recordings of the lessons with the relative slides, and all the webinars of previous years as additional teaching material. Each year, a new group of webinars is recorded on questions asked by students or on solutions to exam exercises
  • Academic year2025/2026
  • CourseComputer Science
  • CurriculumSingle curriculum
  • Year2nd year
  • Semester1st semester
  • SSDINF/01
  • CFU6