View syllabus
ADVANCED DATABASES
GIORGIO GHELLI
Academic year2020/21
CourseCOMPUTER SCIENCE
Code641AA
Credits9
PeriodSemester 2
LanguageEnglish

ModulesAreaTypeHoursTeacher(s)
ADVANCED DATABASESINF/01LEZIONI72
GIORGIO GHELLI unimap
Obiettivi di apprendimento
Learning outcomes
Conoscenze

I sistemi di gestione dei dati occupano una posizione centrale nella nostra società basata sull'informazione, e gli esperti di informatica e di applicazioni di basi di dati dovrebbero avere una buona conoscenza dei concetti teorici e ingegneristici alla base di questi sistemi per garantire le massime prestazioni delle applicazioni. Lo studente al termine del corso sarà in grado di dimostrare una conoscenza avanzata delle principali problematiche relative all'implementazione dei database relazionali classici e dei moderni sistemi di gestione dei dati.

Knowledge

Data management systems occupy a central position in our information-based society, and computer scientist and database application designers should have a good knowledge about both the theoretical and the engineering concepts that underline these systems to ensure the application performance desired. The student who completes the course successfully will be able to demonstrate advanced knowledge of the main issues related to the implementation of classical centralized relational database and of modern data managemente systems, in order to be a sophisticated user of data management technology and a developer of high-performance applications .

Modalità di verifica delle conoscenze

Tramite la prova scritta, lo studente deve dimostrare la conoscenza dei contenuti del corso tramite la risoluzione di alcuni problemi. Durante la prova orale lo studente deve dimostrare la conoscenza dei contenuti del corso atraverso la discussione dei suoi contenuti con precisione e correttezza di espressione.

Metodi:

  •      Prova orale finale
  •      Prova scritta finale
Assessment criteria of knowledge

In the written exam, the student must demonstrate the use of knowledge of the course contents to solve problems. During the oral exam the student must be able to demonstrate knowledge of the course contents and be able to discuss the topics thoughtfully and with propriety of expression.

Methods:

  • Final oral exam
  • Final written exam
Capacità

Lo studente acquisirà le seguenti capacità. Capacità di progettare un sistema di gestione dei dati. Capacità di progettare un'applicazione in modo tale da sfruttare le funzionalità del sistema di gestione dati utilizzato. Capacità di valutare l'idoneità di diversi sistemi di gestione dei dati per un'applicazione specifica.

Skills

The student will acquire the following skills. Ability to design a data management system. Ability to design an application in such a way to take advantage of the features of the targeted data management system. Ability to evaluate the suitability of different data management system for a specific application.

Modalità di verifica delle capacità

Durante l'esame finale lo studente dimostrerà la capacità di valutare le prestazioni di una specifica classe di sistemi rispetto a una specifica applicazione. Nella prova orale lo studente dimostrerà la capacità di discutere l'architettura di un sistema di gestione dei dati e gli algoritmi e le strutture dati che vengono utilizzate.

Metodi:

  • Prova d'esame orale
  • Prova d'esame scritta
Assessment criteria of skills

In the final exam the student will prove the ability of evaluating the performance of a specific class of systems with respect to a specific application. In the oral exam the student will prove the ability to discuss the architecture of a data management system and the algorithms and data structures that are exploited.

Methods:

  • Final oral exam
  • Final written exam
Prerequisiti (conoscenze iniziali)

Il corso richiede una buona conoscenza delle nozioni di base relative a basi di dati, programmazione, algoritmica, architettura degli elaboratori, logica matematica.

Prerequisites

The course requires good knowledge about databases, programming, algorithms, computer architecture, mathematical logic.

Indicazioni metodologiche

Attività didattiche:

  • lezioni frontali
  • partecipazione alle discussioni
  • studio individuale
  • esercitazioni.


Frequenza: fortemente consigliata.

Metodi di insegnamento:

  • Lezioni frontali
Teaching methods

Delivery: classroom teaching

Learning activities:

  • attending lectures
  • participation in discussions
  • individual study
  • practical

Attendance: Strongly advised

Teaching methods:

  • Lectures
Programma (contenuti dell'insegnamento)

Il corso presenta i principali approcci per l'implementazione di sistemi di database relazionali centralizzati e moderni sistemi di gestione dei dati. Più in dettaglio, saranno presentati i seguenti aspetti.

  • Architettura dei DBMS
  • Organizzazioni di file
  • Indici
  • Realizzazione di operatori relazionali
  • Ottimizzazione delle query
  • Transazioni: gestione dei fallimenti
  • Concorrenza
  • Progettazione fisica
  • Sistemi di Supporto delle Decisioni
  • Database a colonne
  • Database paralleli e distribuiti
  • Sistemi Big Data e sistemi NoSQL

 

Syllabus

The course presents the main approaches to the implementation of centralized relational database systems and modern data management systems. In greater detail, the following aspects will be presented.

  • DBMS architecture
  • File organizations
  • Index structures
  • Realization of relational operators
  • Query optimization
  • Transactions: failure management
  • Concurrency
  • Physical design
  • Decision support systems
  • Column databases
  • Parallel and distributed databases
  • Big Data systems and NoSQL systems
Bibliografia e materiale didattico
  • A. Albano, D. Colazzo, G. Ghelli, R. Orsini, Relational DBMS Internals, 2013, liberamente disponibili per uso personale e di studio.
  • Database Systems: The Complete Book (2nd edition), by Hector Garcia-Molina, Jeff Ullman, and Jennifer Widom, 2008.
  • Decision Support Databases Essentials, by A. Albano, liberamente disponibili per uso personale e di studio.
  • The Design and Implementation of Modern Column-Oriented Database Systems, D. Abadi, P. Boncz, S. Harizopoulos, S. Idreos and S. Madden, Foundations and Trends in Databases, Vol. 5, No. 3 (2012) 197¡V280. This paper covers the section ''Column databases''.
  • P. J. Sadalage, M Fowler, NoSQL Distilled, Addison Wesley.
  • I lucidi delle lezioni, liberamente disponibili per uso personale e di studio.

 

Bibliography
  • A. Albano, D. Colazzo, G. Ghelli, R. Orsini, Relational DBMS Internals, 2013, freely available for personal use only.
  • Database Systems: The Complete Book (2nd edition), by Hector Garcia-Molina, Jeff Ullman, and Jennifer Widom, 2008.
  • Decision Support Databases Essentials, by A. Albano, freely available for personal use only.
  • The Design and Implementation of Modern Column-Oriented Database Systems, D. Abadi, P. Boncz, S. Harizopoulos, S. Idreos and S. Madden, Foundations and Trends in Databases, Vol. 5, No. 3 (2012) 197¡V280. This paper covers the section ''Column databases''.
  • P. J. Sadalage, M Fowler, NoSQL Distilled, Addison Wesley.
  • Slides of the lessons, freely available for personal use only.

     

Modalità d'esame

Si veda: https://elearning.di.unipi.it/group/overview.php?id=216

Assessment methods

See: https://elearning.di.unipi.it/group/overview.php?id=216

Updated: 16/02/2021 16:06