Data Management Systems

Year
2
Academic year
2023-2024
Code
01016603
Subject Area
Informatics
Language of Instruction
Portuguese
Other Languages of Instruction
English
Mode of Delivery
Face-to-face
Duration
SEMESTRIAL
ECTS Credits
6.0
Type
Compulsory
Level
1st Cycle Studies

Recommended Prerequisites

Procedural Programming and Problem Solving; Object Oriented Programming

Teaching Methods

Theoretical classes with detailed exposition, using audiovisual means, of the concepts, principles and fundamental theories.
Practical-laboratory classes in which students are expected to acquire knowledge about tools and techniques for the development of systems with high dependence on data and that, with the guidance of the teacher, develop a practical project.

Learning Outcomes

This course unit is designed to provide students with a comprehensive view of cyberphysical systems for managing, accessing and storing data. The student should be familiar with the theoretical, technical and scientific concepts on which these systems are based, namely, data models, systems and software architecture, protocols, algorithms, management languages and data access, as well as the instantiation of these technology concepts and real systems. The student should be able to understand how these concepts are relevant to the development and maintenance of data management systems with high performance, security, maintainability, availability and resilience. Finally, the student will be able to demonstrate how this knowledge can be applied in the development of systems for large scale data processing in a distributed environment, with support to computational processes of learning and data analysis.

Work Placement(s)

No

Syllabus

1. An Overview of Data Storage and Data Management Technology.
2. Relational Database Management Systems. Relational data model, entity-relationship model, relational database design, normalization and relational algebra.
3. Structured Query Language (SQL). Database Transactions. OLTP.
4. Object-Relational Mapping API. Programming database systems.
5. Data Warehouses. OLAP. ETL. Multidimensional model. Special SQL functions for analytics. MDX querying language.
6. Relational database performance tuning. In-memory Databases.
7. Distributed Databases: Relational Clusters; NoSQL data models and data management systems
8. Cloud based data management systems.
9. File Systems; Fundamentals of Network File Systems.
10. Storage Networks.
11. Devices and Subsystems in Storage Networks.
12. Storage Virtualization
13. Data Protection, Backup and Restore.
14. Data Security.

Head Lecturer(s)

Gonçalo Jorge Pires de Carvalho

Assessment Methods

Assessment
Exam: 40.0%
Project: 60.0%

Bibliography

Kleppmann, Martin. Designing Data-Intensive Applications: The Big Ideas Behind Reliable, Scalable, and Maintainable Systems. 2018.

Somasundaram, Gnanasundaram. Information Storage and Management: Storing, Managing, and Protecting Digital Information in Classic, Virtualized, and Cloud Environments. Indianapolis: Wiley, 2012.