Insegnamento obbligatorio per la Laurea Magistrale in Ingegneria Informatica, collocato al I pd del I anno: descrive gli aspetti fondamentali della tecnologia dei sistemi per la gestione delle basi di dati e le modalità di gestione delle basi di dati destinate all'analisi dei dati (normalmente denominate data warehouse), tipicamente caratterizzate dalla necessità di gestire grandi volumi di dati. Sono considerate sia le tecniche più tradizionali di analisi OLAP (On Line Analytical Processing) dei dati, sia le analisi complesse basate su tecniche di data mining. Le attività di laboratorio permettono di valutare le caratteristiche tecnologiche dei prodotti commerciali più diffusi e di sperimentare vari strumenti per l'analisi dei dati.
The class is taught in Italian.
The class, compulsory for the Master degree in Computer Engineering, is offered on the 1st semester of the 1st year. The class addresses the fundamental issues in the technology of database management systems and introduces database management techniques for data warehouses (database systems specialized in strategic decision support), typically characterized by the need of managing very large databases. Both traditional OLAP (On Line Analytical Processing) analysis techniques and complex data mining techniques will be addressed. Laboratory sessions allow experimental activities, both on technological characteristics and data analysis, on the most widespread commercial and open-source products.
- Conoscenza delle caratteristiche tecnologiche di un sistema per la gestione di basi di dati: gestione dell'accesso concorrente ai dati, affidabilità, strutture del livello fisico, ottimizzazione dell'accesso ai dati.
- Capacità di eseguire la progettazione fisica di una base di dati relazionale.
- Conoscenza dell'architettura delle basi di dati distribuite e della gestione della replicazione.
- Conoscenza delle basi di dati non relazionali (NoSQL)
- Capacità di scrivere interrogazioni su basi di dati non relazionali
- Conoscenza dell'architettura dei sistemi per l'analisi dei dati (data warehouse) e delle metodologie di progettazione concettuale, logica e fisica di un data warehouse.
- Capacità di progettare un data warehouse.
- Conoscenza dei costrutti del linguaggio SQL per la formulazione di interrogazioni OLAP per data warehouse.
- Capacità di scrivere interrogazioni OLAP nel linguaggio SQL.
- Conoscenza dei principali algoritmi di machine learning per la classificazione, il clustering e l'estrazione di regole di associazione
- Knowledge of the main technological characteristics of a database management system: concurrent data access management, reliability, physical level structures, data access optimization.
- Ability to design the physical data structures for a relational database.
- Knowledge of distributed database system architectures and replication management.
- Knowledge of active database systems and SQL statements for trigger definition.
- Ability to write triggers in the SQL language.
- Knowledge of data warehouse architecture and of the methodology for conceptual, logical, and physical design of a data warehouse.
- Ability to design a data warehouse.
- Knowledge of the SQL statements for OLAP queries in a data warehouse.
- Ability to write OLAP queries in the SQL language.
- Knowledge of the major data mining algorithms for classification, clustering, and association rule mining.
Conoscenza del modello relazionale.
Capacità di progettare interrogazioni mediante algebra relazionale.
Capacità di progettare istruzioni complesse in linguaggio SQL.
Competenze di base di programmazione.
Knowledge of the relational model and SQL language and basic programming skills.
Argomenti trattati nell’insegnamento e relativo peso in crediti:
- Caratteristiche tecnologiche di un sistema per la gestione di basi di dati: gestione dell'accesso concorrente, affidabilità, strutture del livello fisico, ottimizzazione dell'accesso (1.6 cfu)
- Basi di dati NoSQL (MongoDB, Elastic): modello dei dati e linguaggi di interrogazione (0.6 cfu).
- Architettura delle basi di dati distribuite e gestione della replicazione (0.4 cfu)
- Data warehouse: architettura, metodologie di progettazione concettuale, logica e fisica, preparazione dei dati, istruzioni in linguaggio SQL per la formulazione di interrogazioni OLAP (1.4 cfu)
- Processo di data science (0.4 cfu)
- Algoritmi di machine learning: classificazione, clustering ed estrazione di regole di associazione (1.2 cfu)
- Analisi di casi di studio mediante esercitazioni in aula e in laboratorio sugli argomenti trattati a lezione (2.4 cfu)
- Technological characteristics of a database management system: concurrent data access management, reliability, physical level structures, data access optimization (1.8 cr.)
- Active database systems and SQL statements for trigger definition (0.4 cr.)
- Distributed database system architecture and replication management (0.4 cr.)
- Data warehouses: architecture, methodology for conceptual, logical, and physical design, SQL statements for OLAP queries (1.4 cr.)
- Data mining algorithms: classification, clustering, and association rule mining (1.6 cr.)
L’insegnamento comprende lezioni, esercitazioni in aula e in laboratorio inerenti gli argomenti trattati. Le esercitazioni in aula vertono in particolare sulla progettazione fisica di basi di dati relazionali, sulla progettazione e interrogazione di basi di dati NoSQL, sulla progettazione concettuale, logica e fisica di data warehouse e relativi processi di interrogazione e preparazione dei dati basati sul linguaggio SQL (1.2 cfu). Gli studenti svolgeranno inoltre esercitazioni individuali. L'insegnamento comprende esercitazioni in laboratorio sull'utilizzo del linguaggio SQL (anche per la progettazione fisica di basi di dati), sulla progettazione di data warehouse, sulla progettazione di basi di dati NoSQL e sul processo di analisi dei dati (1.2 cfu). L'attività di laboratorio permette di sperimentare l'uso dei prodotti commerciali e open-source più diffusi.
Saranno proposti quattro homework individuali, mirati principalmente a incoraggiare il pensiero critico e la capacità di problem solving nell’ambito degli argomenti dell’insegnamento. Per gli homework si dovranno consegnare delle relazioni scritte. Lo svolgimento degli homework è opzionale. Qualora consegnati, gli homework contribuiranno al voto finale.
The course includes practices on the lecture topics, and in particular SQL language, physical database design, and conceptual, logical, and physical data warehouse design (1.2 cr.). Students will prepare an individual written report on exercises proposed during the course. The report will contribute to the final exam grade. The course includes laboratory sessions on the SQL language (also for database physical design) and data warehouse design (1.2 cr.). Laboratory sessions allow experimental activities on the most widespread commercial and open-source products.
I testi, scelti tra quelli elencati, saranno comunicati a lezione dal docente titolare dell'insegnamento:
- Atzeni, Ceri, Fraternali, Paraboschi, Torlone, 'Basi di dati ', 6 ed., McGraw Hill, 2023.
- Golfarelli, Rizzi, 'Data warehouse: teoria e pratica della progettazione', 2 ed., McGraw Hill, 2006.
- Tan, Steinbach, Karpatne, Kumar, 'Introduction to data mining', 2 ed., Pearson, 2019.
- Raghu Ramakrishnan and Johannes Gehrke. Database Management Systems. Third edition, McGraw Hill, 2003
- Dan Sullivan, NoSQL for Mere Mortals, Addison-Wesley Professional, 2015
- Kristina Chodorow, Shannon Bradshaw, MongoDB: The Definitive Guide (Powerful and Scalable Data Storage), 3 ed. O'Reilly Media, 2018
- Gormley, Tong, Elastic Search: The Definitive Guide, O’Reilly, 2015
Sono disponibili copie dei lucidi utilizzati nelle lezioni, esempi di prove scritte d'esame ed esercizi, e i manuali per le esercitazioni di laboratorio. Tutto il materiale didattico è scaricabile da un sito web o attraverso il portale.
- Atzeni, Ceri, Paraboschi, Torlone, 'Database systems', 1 ed., McGraw Hill, 1999.
- Golfarelli, Rizzi, 'Data warehouse: teoria e pratica della progettazione', 2 ed., McGraw Hill, 2006.
- Tan, Steinbach, Kumar, 'An introduction to data mining', 2 ed., Addison Wesley, 2005.
Copies of the slides used during the lectures, examples of written exams and exercises, and manuals for the activities in the laboratory will be made available. All teaching material is downloadable from the course website or the Portal.
Slides; Libro di testo; Esercizi; Esercizi risolti; Esercitazioni di laboratorio; Esercitazioni di laboratorio risolte; Video lezioni dell’anno corrente; Video lezioni tratte da anni precedenti; Strumenti di auto-valutazione;
Lecture slides; Text book; Exercises; Exercise with solutions ; Lab exercises; Lab exercises with solutions; Video lectures (current year); Video lectures (previous years); Self-assessment tools;
E' possibile sostenere l’esame in anticipo rispetto all’acquisizione della frequenza
You can take this exam before attending the course
Modalità di esame: Elaborato progettuale individuale; Prova scritta in aula tramite PC con l'utilizzo della piattaforma di ateneo;
Exam: Individual project; Computer-based written test in class using POLITO platform;
...
L'esame è costituito da una prova scritta e dalla valutazione delle relazioni sugli homework assegnati durante il semestre di svolgimento dell'insegnamento (elaborato progettuale individuale). Gli homework sono facoltativi. A discrezione del docente, potrà essere richiesta una prova integrativa a conferma della valutazione ottenuta.
Accertamento dei risultati di apprendimento attesi
La prova scritta accerta con esercizi di progettazione
- la capacità di progettare le strutture fisiche di una base di dati
- la capacità di progettare un data warehouse
- la capacità di definire operazioni di preparazione dei dati in linguaggio SQL
- la capacità di scrivere interrogazioni OLAP nel linguaggio SQL
La prova scritta accerta con domande teoriche ed esercizi
- la conoscenza degli aspetti tecnologici principali di un sistema per la gestione di basi di dati (accesso concorrente ai dati, affidabilità)
- la capacità di scrivere interrogazioni per basi di dati non relazionali
- la conoscenza degli aspetti tecnologici principali delle basi di dati distribuite
- la conoscenza dei principali algoritmi di data mining per la classificazione, il clustering e l'estrazione di regole di associazione
Criteri, regole e procedure per l'esame
L'esame è costituito da una prova scritta e dalla valutazione delle relazioni sugli homework assegnati durante il corso. Gli homework sono facoltativi. A discrezione del docente, potrà essere richiesta una prova integrativa a conferma della valutazione ottenuta. La prova scritta dura 95 minuti. Il voto finale è definito in base alla valutazione della prova scritta ed eventualmente delle relazioni degli homework. Le relazioni degli homework sono considerate solo se la valutazione della prova scritta è pari o superiore a 18. La lode è conseguita quando il voto finale supera 31/30.
La prova scritta comprende domande a risposta aperta e a risposta chiusa. Le risposte errate alle domande a risposta chiusa comportano una penalizzazione. Le risposte mancanti valgono zero. Durante la prova scritta non è possibile utilizzare libri e appunti o dispositivi elettronici di qualsiasi tipo.
Struttura e argomenti della prova scritta.
- 6-8 domande relative ai principali argomenti trattati durante il corso (caratteristiche tecnologiche di un sistema per la gestione di basi di dati, basi di dati distribuite, preparazione dei dati, algoritmi di analisi dei dati) (max 8 punti)
- 1-3 esercizi di progettazione fisica (max 5 punti)
- 1-3 esercizi di progettazione di data warehouse (max. 3 punti)
- 1 esercizio di preparazione dei dati per data warehouse (max. 5 punti)
- 3 esercizi di progettazione di istruzioni SQL per l'accesso ai dati di un data warehouse (max. 11 punti)
Il punteggio di ogni domanda sarà specificato nel testo della domanda. La valutazione degli esercizi della prova scritta si basa sulla correttezza del risultato e sull'appropriatezza delle metodologie di risoluzione applicate.
Gli homework facoltativi sono assegnati e devono essere consegnati a scadenze prestabilite durante l’insegnamento. Vertono sui principali argomenti trattati durante l’insegnamento (max 2 punti).
Gli studenti e le studentesse con disabilità o con Disturbi Specifici di Apprendimento (DSA), oltre alla segnalazione tramite procedura informatizzata, sono invitati a comunicare anche direttamente al/la docente titolare dell'insegnamento, con un preavviso non inferiore ad una settimana dall'avvio della sessione d'esame, gli strumenti compensativi concordati con l'Unità Special Needs, al fine di permettere al/la docente la declinazione più idonea in riferimento alla specifica tipologia di esame.
Exam: Individual project; Computer-based written test in class using POLITO platform;
The exam includes a written part, the evaluation of the reports on the individual practices assigned during the course, and an oral part. The individual practices and the oral part are optional. The written part lasts 2 hours. The final score is defined by considering the evaluation of the written part, and, optionally, of the individual practices and the oral part. The individual practices are considered only if the grade of the written part is 18 or above. Without the oral part, the maximum final grade given by the written part and the evaluation of the reports on the individual practices is 26. Otherwise, the final grade is the (approximated) average computed on the grade on the written part, the evaluation of the report on the individual practices, and the grade on the oral part.
The written part includes
- 2 multiple choice theory questions on the main course topics (technological characteristics of a database management system, SQL language, physical database design, conceptual, logical, and physical data warehouse design, data mining algorithms) (max 2 points)
- 1 exercise on physical design (max 7 points)
- 1 exercise on trigger design (max 8 points)
- 1 exercise on data warehousing, including the design of a data warehouse and SQL queries for data access (max 13 points)
Students can use textbooks or notes during the exam. Exercises are evaluated according to the correctness of the proposed solution and to the appropriateness of the adopted resolution methodologies.
The oral part includes questions on the main topics of the lectures (max 30 points). Reports on the individual practices assigned during the course are on the main topics of the lectures (max 2 points).
In addition to the message sent by the online system, students with disabilities or Specific Learning Disorders (SLD) are invited to directly inform the professor in charge of the course about the special arrangements for the exam that have been agreed with the Special Needs Unit. The professor has to be informed at least one week before the beginning of the examination session in order to provide students with the most suitable arrangements for each specific type of exam.