Each module contains 3 ECTS. You choose a total of 10 modules/30 ECTS in the following module categories:
- 12-15 ECTS in technical scientific modules (TSM)
TSM modules teach profile-specific specialist skills and supplement the decentralised specialisation modules. - 9-12 ECTS in fundamental theoretical principles modules (FTP)
FTP modules deal with theoretical fundamentals such as higher mathematics, physics, information theory, chemistry, etc. They will teach more detailed, abstract scientific knowledge and help you to bridge the gap between abstraction and application that is so important for innovation. - 6-9 ECTS in context modules (CM)
CM modules will impart additional skills in areas such as technology management, business administration, communication, project management, patent law, contract law, etc.
In the module description (download pdf) you find the entire language information per module divided into the following categories:
- instruction
- documentation
- examination
The heterogeneity of the requirements of modern applications is not always well addressed by classical data management systems. The use of the appropriate data management system can address properly requirements such as replication, scalability, availability, data model flexibility, or query performance.
This course aims to provide a critical approach to polyglot data management systems by knowing their strengths and weaknesses, to help the data software architect to use the appropriate system in each context.
The course covers the following core topics:
- Databases architectures,
- Beyond the relational model,
- Database-oriented software architectures.
Prerequisites
- Relational model, relational algebra and normalization
- SQL: data modeling, query language, transactions and access rights
- Query optimization, database indexes
- Object-oriented programming languages
Learning Objectives
At the end of this module, students will be able to:
- Understand and use parallel and distributed databases,
- Use strict and relaxed consistency models and understand their underlying tradeoffs,
- Understand and use databases alternatives beyond the relational model,
- Better choose an appropriate database system depending on the context and the kind of data available,
- Understand the different implications of database-oriented software architectures,
- Apply the acquired knowledge in their own working environment,
- Iidentify the current research directions of these domains.
Contents of Module
Foundations (30%)
- Reliabilitym scalability, maintainability
- Data models and query languages
- Storage models
- Backward and forward compatibility
Distributed data systems (50%)
- Replication and partitioning
- Transactions
- Fault-tolerance
- Consistency and consensus
Processing and integration (20%)
- Batch, map-reduce and beyond
- Streaming and events
- Emerging technologies
Teaching and Learning Methods
This course involves theoretical presentations and practical exercises, laboratories or group projects.
Literature
Lecture slides, references to internet resources and books.
Download full module description
Back