INF3710: Files and Databases
| Course Staff | Instructor: Amine Mhedhbi · TA: Hassib Kevin Ezzedine |
|---|---|
| Time & Location | Mon. 14:45–17:35 · G02, Room M-1410 |
| Wed. 14:45–17:35 · G01, Room M-1120 | |
| Office Hours | Mon. & Wed. 13:00–14:00 and by appointment |
Communication We use Discord for announcements, weekly discussions, questions, and lab-related information. Please avoid direct messages so that everyone can benefit from the answers.
Grading Exercises completed at home and during lab sessions account for 22% of the final grade and are submitted through Gradescope. The midterm exam accounts for 28% and the final exam for 50%.
Teaching Approach I structure the course around research-supported learning strategies, including retrieval practice, elaboration, and interleaving (Weinstein et al., Understanding How We Learn – A Visual Guide. 2018). Much of the course is designed to be interactive: we take time to solve problems in class, analyze case studies, and begin each class with a short informal quiz reviewing previous material.
Textbook No textbook is required. Database Management Systems (3rd ed.) by Raghu Ramakrishnan and Johannes Gehrke can serve as a reference.
| Week | Topic (Tentative) | Exercises |
|---|---|---|
| 1 | Motivation and history of RDBMSs | Lab 1 |
| 2 | SQL queries | |
| 3 | SQL constraints and security | Lab 2 |
| 4 | Recursive SQL | Homework 1 |
| 5 | RDBMS architecture | Lab 3 |
| 6 | Storage and file formats | Homework 2 |
| 7 | Indexes and B+ trees | Lab 4 |
| 8 | Buffer management | |
| 9 | Sorting, hashing, and joins | Lab 5 |
| 10 | Query optimization | Homework 3 |
| 11 | Transactions and recovery | Lab 6 |
| 12 | Invited lecture and conclusion |