BAN603 – Data Management and Business Intelligence

MSc Business Analytics

Core Course

BAN603 – Data Management and Business Intelligence

Course Unit Code: BAN603

Type Of Unit: Core

Level of Course Unit: Graduate

Year of Study: 1

Semester: Semester 1

Number of ECTS Credits: 10

Class Contact Hours: 12

Mode of Delivery

Distance Learning

Prerequisites

None

empty chairs tables room vintage retro tone (1)

This course provides an in-depth exploration of database management systems, emphasizing the fundamentals of the SQL query language for relational databases and data modeling, normalization, database design, and security.

In addition to relational databases, the course also covers modern non-SQL technologies, such as document-oriented databases, key-value stores, and graph databases. Students will learn how to evaluate and select appropriate non-SQL database systems to address various data management challenges.

The course also includes a discussion on relational learning, which refers to the use of relational databases to capture structured knowledge, and its applications in machine learning. Students will learn how to use relational databases to represent complex data structures, and how to apply relational learning algorithms to extract meaningful insights from data.

Finally, the course covers vector databases, which are specialized databases designed to store and manipulate high-dimensional vectors, such as those used in machine learning and natural language processing. Students will learn about the unique challenges and opportunities associated with vector databases, including their applications in recommendation systems and similarity searches.

Upon completion of the course, students are expected to be able to design and implement suitable relational database solutions for organizational needs, perform simple and mid-complex queries on relational databases, understand the different types of non-SQL databases and their applications, develop a critical understanding of different database types and their security and performance implications, and gain familiarity with relational learning and vector databases.

Overall, this course provides a comprehensive overview of database management systems, including both relational and non-SQL technologies, equipping students with the skills and knowledge needed to design, develop, and maintain effective database solutions for modern organizations.

Learning Outcomes

1: Analyze organizational needs and design and implement suitable relational database solutions to meet those needs.

2: Develop proficiency in the SQL query language and perform simple and mid-complex queries on relational databases.

3: Evaluate and select appropriate non-SQL database systems to address various data management challenges.

4: Understand the different types of non-SQL databases, including document-oriented databases, key-value stores, and graph databases, and their applications.

5: Gain familiarity with relational learning and use relational databases to represent complex data structures.

6: Apply relational learning algorithms to extract meaningful insights from data.

7: Understand the unique challenges and opportunities associated with vector databases, including their applications in recommendation systems and similarity searches.

8: Develop a critical understanding of different database types and their security and performance implications.

1st week:
• History of databases and database management systems
• Terminology: databased, DBMS, and data models
o High level view of non-relational data models: Hierarchical, Network, Self-describing
2nd week:
• The entity-relationship data model
3rd week:
• The relational data model
4th week:
• Introduction to SQL query language (basic: select operations)
5th week:
• Introduction to SQL query language (basic: insert, update, delete operations)
6th week:
• Introduction to SQL query language (advanced topics: aggregations, group by, nested queries)
7th week:
• Introduction to SQL query language (advanced topics: joins, temporary tables, views)
8th week:
• Theory of no-sql technologies and distributed systems (part I)
9th week:
• Theory of no-sql technologies and distributed systems (part II)
10th week:
• Advanced topics: Relational learning, Probabilistic databases, and Vector databases (part I)
11th week:
• Advanced topics: Relational learning, Probabilistic databases, and Vector databases (part II)
12th week:
• Advanced topics: Relational learning, Probabilistic databases, and Vector databases (part III)

Course Features

Weekly self-assessment activities :

On a weekly basis, students will have the possibility to engage in self-assessment activities to judge their own level of understanding of the concepts covered so far. The weekly self-assessment activities provide immediate feedback.

Weekly interactive activities (20%):

On a weekly basis, students will have the possibility to engage with self-assessment activities to judge their own level of understanding of the concepts covered so far. Such activities include interactive games (e.g., escape rooms, group discussions, etc.) and online quiz.

The weekly self-assessment activities provide immediate feedbacks.

The participation to such activities accounts for at most 20% of the final grade.

Final project (30%)

A final project will be given, which accounts for 30% of the final grade, as follows:

The students are provided with the requirements for building a relational database and some simple CSV files. They are requested to create a database, add the needed tables, ingest the CSV files, and develop a number of SQL queries.

Final Exam (50%)

A final examination accounts for 50% of the grade.

Readings