Institute of Computer Science
  1. Courses
  2. 2024/25 spring
  3. Distributed Systems (LTAT.06.007)
ET
Log in

Distributed Systems 2024/25 spring

  • General
  • Lectures
  • Practical work
  • Study materials
  • Plagiarism
  • Message board

Lectures

  • Message board is just available from Monday to Friday

Lectures will take place following the (tentative) schedule below.

Overall: The course is structured into three parts: covering fundamental concepts, underlying algorithms, and the development and maintenance of distributed systems.

PART1: BASIC - fundamental and core concepts: This part establishes key terminology, fundamental concepts, and underlying assumptions essential for developing distributed systems.

  • Lecture 1 (10.02) - Course overview and fundamentals
    • Industrial Master info slides (Slides)
    • Course overview (Slides)
    • Getting started - 101 Fundamentals (Slides)
  • Lecture 2 (17.02) - System models
    • Expected behavior and assumptions (Slides)
  • (24.02) - No lecture :(
    • National holiday
  • Lecture 3 (03.03) - Communications: RPC and threads
    • Concurrency and scheduling (Slides)
  • Lecture 4 (10.03) - Time, clocks and ordering of events
    • Computer synchronization and causality (Slides)

PART2: INTERMEDIATE - Underlying mechanisms and algorithms: This part focuses on understanding the mechanisms and algorithms that are underlying of any distributed system.

  • Lecture 5 (17.03) - Logical time algorithms
    • Broadcast algorithms, Lamport and vector clocks (Slides)
  • Lecture 6 (24.03) - Coordination
    • Election algorithms (Slides)
  • Lecture 7 (31.03) - Replication
    • Quorum (Slides)
  • Mid term exam (07.04)
    • The exam covers content from Lectures 1 to 7.
    • It will take place from 10:15 to 12:00 and will start sharply (Please be on time)
    • The exam is written and closed-book, requiring both text-based answers and diagrams.
    • Quizzes are available to reinforce your understanding and help you reflect on the key principles and core concepts covered in the exam.
    • Exam questions require to apply concepts over specific defined problems. Same as exercises done in class during lectures.
  • Lecture 8 (14.04) - Consistency
    • Consistency models (Slides)
  • Lecture 9 (21.04) - Consensus
    • Paxos, Raft and Chain replication (Slides)
  • Lecture 10 (28.04) - Distributed transactions
    • ACID, isolation, serializability, and linearizability (Slides)

PART3: ADVANCED - System Development and Operationalization: This section focuses on designing, deploying, and ensuring the maintainability of your distributed system.

  • Lecture 11 (05.05) - Modern system architectures This lecture will be delivered in room 1021
    • From classic (client/server) to explainable and distributed architectures (Slides)
    • This lecture also includes concepts from our research work presented at IEEE International Conference on Distributed Computing Systems (IEEE ICDCS)
    • The SPATIAL Architecture - Use Case (Slides)
  • Lecture 12 (12.05) - Scalability
    • Functional decomposition, partitioning and duplication (Slides)
  • Lecture 13 (19.05) - Monitoring
    • Announcements (Slides)
    • Invited lecture content (Slides)
  • Lecture 14 (26.05) - Planning
    • System performance metrics (Slides)

EVALUATION

Please register in ÕIS for the final/resit exam!

  • Final exam - general information: Exams are on-site and closed book. Please register to the exam in õis2.
    • The exam covers content from Lectures 8 to 14
    • It will start sharply, please check the exam time when registering via õis2
    • Quizzes are available to reinforce your understanding and help you reflect on the key principles and core concepts covered in the exam.
    • Exam questions require to apply concepts over specific defined problems. Same as exercises done in class during lectures.

Dates (TENTATIVE)

  • [Completed] June 2 (option 1) - 10:15 (10:15) [Results in Moodle]
  • [Completed] June 9 (option 2) - 10:15 (10:15) [Results in Moodle]
  • [Upcoming] June 20 (Resit) - 12:15 [Please register]
  • Institute of Computer Science
  • Faculty of Science and Technology
  • University of Tartu
In case of technical problems or questions write to:

Contact the course organizers with the organizational and course content questions.
The proprietary copyrights of educational materials belong to the University of Tartu. The use of educational materials is permitted for the purposes and under the conditions provided for in the copyright law for the free use of a work. When using educational materials, the user is obligated to give credit to the author of the educational materials.
The use of educational materials for other purposes is allowed only with the prior written consent of the University of Tartu.
Terms of use for the Courses environment