DISTRIBUTED SYSTEMS
- Overview
- Assessment methods
- Learning objectives
- Contents
- Bibliography
- Delivery method
- Teaching methods
- Contacts/Info
The student knows about the topics presented in an introductory course of Relational Databases. Therefore, the student knows the relational data model, the relational algebra, the SQL query language, the conceptual and logical design of a relational database. In addition, the student also has knowledge of the topics presented in an advanced course of Relational Database, such as the model of object-oriented data, the models of semi-structured data and the related query languages. Finally, the student has knowledge of the analysis of the complexity of the algorithms in the centralized and sequential case.
The verification method consists of a written test.
The purpose of this test is to verify the learning and understanding of the theoretical models underlying the distributed systems. A written test consists of theory-oriented questions, whose purpose is to verify the communication skills developed by the student, in particular the acquisition of the technical terminology necessary for the comprehension and communication of the methodologies and models related to the distributed systems.
The questions are 4-5.
The verification method consists of a written test.
The purpose of this test is to verify the learning and understanding of the theoretical models underlying the distributed systems. A written test consists of theory-oriented questions, whose purpose is to verify the communication skills developed by the student, in particular the acquisition of the technical terminology necessary for the comprehension and communication of the methodologies and models related to the distributed systems.
The questions are 4-5.
The verification method consists of a written test.
The purpose of this test is to verify the learning and understanding of the theoretical models underlying the distributed systems. A written test consists of theory-oriented questions, whose purpose is to verify the communication skills developed by the student, in particular the acquisition of the technical terminology necessary for the comprehension and communication of the methodologies and models related to the distributed systems.
The questions are 4-5.
The aim of this course is to provide an advanced introduction to the different models and architectures of distributed systems and to the methodologies for expressing end solving computational problems with such models. There will be shown in a detailed way as examples the execution of transactions and the replication of data in a distributed database.
At the end of this course, the student:
1. has acquired knowledge on advanced aspects of distributed systems (in particular, distributed and / or replicated relational databases).
2. has acquired knowledge to manage large collections of data using the different architectural models that will be presented during the course.
3. has the ability to identify problems related to data management and to solve it in a professional manner.
4. Is able to judge the adequacy of a distributed and replicated database, according to the needs of the application context.
- introduction to distributed systems (2 hours)
- architectural models: shared memory, exchange of messages, types of errors, synchronous and asynchronous models (4 hours)
- time and randomness: Lamport logic clocks, vector timestamps, distributed snapshot calculation, synchronization with physical clocks (4 hours)
- agreement and consensus: agreement in a system without errors, agreement in a synchronous system with crash type errors, failure detectors, consensus in an asynchronous system with errors, uniform consent with failure detector (12 hours)
- distributed transactions: recalls to centralized management of transactions, two-phase centralized locking protocol, reliability of distributed transactions, atomic commitment and two-phase commit protocol, 2PC protocol evaluation (12 hours)
- reliable communication in groups: reliable multicast, Byzantine multicast, ordered multicast, multicast and consent (4 hours)
- replication: consistency models for replicated data, sequential data types, strong and weak consistency, 1-copy acid properties, replication protocols (12 hours)
Textbook: handouts and slides provided by the teacher, available on the University e-learning site.
Frontal lessons consist in 48 hours of theoretical lessons. Lessons will illustrate: different models of distributed systems; methodologies for describing and solving computational problems in such models; applications of such methodologies in the context of distributed databases.
Meeting with the professor by appointment via email to name.surname@uninsubria.it. The professor replies only to signed emails coming from the domain studenti.uninsubria.it.
Professors
Borrowers
-
Degree course in: COMPUTER SCIENCE