Course

Distributed Systems (DAT520)

Fakta

Emnekode DAT520

Vekting (stp) 10

Semester undervisningsstart Spring

Undervisningsspråk English

Antall semestre 1

Vurderingssemester Spring

Timeplan Vis timeplan

Litteratur Pensumlisten finner du i Leganto

Introduksjon

The course gives insight into both theoretical and practical aspects of distributed computing systems, particularly techniques for building fault-tolerant systems.

Content

The course gives insight into important theoretical principles of distributed computing, including system models for interaction and failure, interprocess communication, synchronization, time and global states, protocols for coordination and consensus (Paxos and Raft), distributed transactions, fault tolerance, consistency, and replication. The course also covers concrete systems and architectures for distributed systems: map-reduce, distributed hash tables, peer-to-peer systems, gossip-based systems, and distributed file and storage systems.

The course also includes a significant programming project based on concepts and algorithms studied in class, in which the student must show how these can be implemented in practice.

The programming project in this course shall be implemented using the Go programming language.

Learning outcome

Knowledge

  • Be familiar with important principles for the design and implementation of distributed systems.
  • Be familiar with the most common system architectures for distributed systems.
  • Be familiar with essential techniques for solving various problems in distributed systems.

Skills

  • Be able to develop advanced distributed applications with fault tolerance properties.
  • Be able to perform independent research in distributed systems.
  • Be able to reason about problems that involve distributed components.

General competency

  • Know how to develop distributed computer systems.

Forkunnskapskrav

Ingen

Anbefalte forkunnskaper

Operating Systems and Systems Programming (DAT320)
Operating systems, computer networking, advanced programming

Eksamen / vurdering

Written exam

Vekt 1/1

Varighet 4 Hours

Karakter Letter grades

Hjelpemiddel None permitted

Eksamenssystem WISEflow

Digital exam.

Vilkår for å gå opp til eksamen/vurdering

Compulsory assignments

Mandatory programming assignments. Pass/Fail. You must submit your solution to our system for automated evaluation, followed by in-lab approval. All programming assignments must be passed to sit for the written exam.

Completion of mandatory lab assignments is to be made at the times and in the assigned groups. Absence due to illness or other reasons must be communicated as soon as possible to the laboratory personnel. One cannot expect that provisions for completion of the lab assignments at other times are made unless prior arrangements with the laboratory personnel have been agreed upon.

Failure to complete the assigned labs on time or not having them approved will result in being barred from sitting for the exam in the course.

Method of work

4 hours of lectures and 4 hours of mandatory work. All mandatory work (such as hand-ins, lab work, projects, etc. ) must be approved within the specified deadlines throughout the course.

Overlapping

Emne Reduksjon (SP)
Distributed Systems (DAT520_1) , Distributed systems (MID110_1) 10

Åpent for

Admission to Single Courses at Master Level at the Faculty of Science and Technology
Computer Science Industrial Economics Industrial Economics Robot Technology and Signal Processing - Master's Degree Programme
Exchange programme at The Faculty of Science and Technology

Admission requirements

Must meet the admission requirements of one of the study programmes the course is open for.

Emneevaluering

The faculty decides whether early dialogue will be held in all courses or in selected groups of courses. The aim is to collect student feedback for improvements during the semester. In addition, a digital course evaluation must be conducted at least every three years to gather students’ experiences.
The course description is retrieved from FS (Felles studentsystem). Version 1