96793 - Information Systems and Database Management

Academic Year 2026/2027

  • Teaching Mode: In-person learning (entirely or partially)
  • Campus: Bologna
  • Corso: Second cycle degree programme (LM) in Statistics, Economics and Business (cod. 6811)

Learning outcomes

Aim of the course is to understand the concepts and learn the techniques to access data stored in database systems for analytical purposes. In particular, the student will understand the main concepts of relational and noSQL database systems and will learn how to effectively extract data from those systems in order to prepare them for subsequent application of statistical and machine learning techniques. The course will deal with both the query languages of databases and the interfaces with programmatic languages, such as R or Python. At the end of the course the student is able: - to understand the structure of a given database, either relational or noSql; - to access the data stored in a Database Management System either with the specific standard languages or with programmatic interfaces.

Course contents

Understand data: elementary, structured in files and on the Web

Data modeling

Formats, XML language and JSON notation

Databases 

Relational database:

  • Conceptual model (Entity-Relationship diagram)
  • Logical model (relations schema)

NoSQL database:

  • document-based model
  • graph-based model

Database management

  • Database management systems for relational databases (MySQL) and NoSQL (MongoDB e Neo4J)

The language to query databases:

  • SQL language to query relational databases
  • Languages to query document-based and graph-based databases

Data analysis

  • Extract data, information
  • Create data views 

Practice sessions with Python to use data from Databases and from the Web

Readings/Bibliography

Lectures will be based for relational databases on the book of Jeff Ullman and Jennifer Widom: "A First Course in Database Systems", for NoSQL databases on Web documentation.

Further readings, examples and exercises will be made available on “Virtual Learning Environment”.

Teaching methods

Lectures will be held in seminar and in computer rooms. Participation at the lecture (theory and practice) is a valid support for the comprehension of the covered topics.

Practice sessions are prevalent and fundamental to acquire the knowledge on the concepts and tools and practical competencies to answer the given questions.

Assessment methods

Practical and written assessment (2 hours).The assessment consists in two parts.

In the first written part is required to design data models based on given requisites (40%), and further to solve/answer to exercises and/or questions on course contents (20%). Use of teaching material is not allowed.

In the second practical part is required to write queries mainly through SQL language and through NoSQL languages on a real database (40%). It is allowed to use only the teaching material.

The final grade (over thirty) is computed applying percentages (weights) assigned to each type of request.

Teaching tools

Personal Computer and Open Source software to manage and query databases and Open Source software for data experiences (Python).

Office hours

See the website of Damiano Marino Somenzi