The course covers the fundamental concepts of management and design of database systems.
Topics include data models (relational); query languages (SQL); implementation techniques of database management systems (index structures and query processing); and noSQL databases.
The learning objectives are: a) To understand and use the main technologies for database management; b) To design a relational database (and not), from a conceptual, logical and physical perspective; c) To use SQL language for performing efficient queries in cases of large datasets; and d) To create and query large scale datasets.
This module covers the fundamental concepts of management and design of a business intelligence system. Topics include data models for building a data warehouse; ETL (extract, transform and load) functionalities; OLAP analysis; basic data mining; reporting and interactive dashboards, evolution of BI architectures on large datasets. The module covers techniques and algorithms for data visualization and exploratory analysis based on principles and techniques from graphic design, perceptual psychology and cognitive science. It is targeted to using visualization in their data analytics work. The learning objectives are as follows:
Knowledge and understanding
Applying knowledge and understanding
Lectures, hands-on exercises, paper reading, student presentations and seminars.
Should teaching be carried out in mixed mode or remotely, it may be necessary to introduce changes with respect to previous statements, in line with the programme planned and outlined in the syllabus.
The main teaching methods are as follows:
Should teaching be carried out in mixed mode or remotely, it may be necessary to introduce changes with respect to previous statements, in line with the programme planned and outlined in the syllabus.
1) Models and Languages for Database Management
Fundamentals of Database Management Systems (DBMS)
Relational Model: basic concepts, integrity constraints and keys.
SQL language: data definition, data modification, queries, views, transactions.
NO-SQL database: MongoDB
2) Querying and processing big data
Apache Spark SQL with Python
Dataset and Dataframes
Examples of data analysis with Spark SQL
1. Introduction to Business Intelligence and Big Data Analytics (6 hours)
2. Data models for data warehouse (10 hours)
3. BI Architecture (8 hours)
4. Data Visualization (16 hours)
R. Elmasri and S. Navathe, "Fundamentals of Database Systems", 7th Edition, Pearson, 2016.
B. Chambers, M. Zaharia, "Spark: the definitive guide", O'Reilly, 2018.
Instructor’s notes