Distributed Systems

582417
5
Networking and Services
Advanced studies
This course presents the basic concepts and solution principles of distributed systems. The main topics are synchronization, consistency, fault tolerance, distributed consensus, and security. The course considers different kinds of distributed systems, from modern warehouse-scale datacenters to wide-area, loosely-coupled distributed systems. The focus is on gaining an understanding on how modern distributed systems are designed and built and what are their theoretical underpinnings. The course covers the basic algorithms of distributed systems and the current state of research in the area. Course material: Largely based on research articles and supplemental material. Selected material from the book "Barroso, L. A., Clidaras, J. and Hölzle, U.: The Datacenter as a Computer¿. (book is available online)
Year Semester Date Period Language In charge
2016 autumn 05.09-15.12. 1-2 English Jussi Kangasharju

Lectures

Time Room Lecturer Date
Mon 10-12 D122 Jussi Kangasharju 05.09.2016-21.10.2016
Thu 10-12 D122 Jussi Kangasharju 05.09.2016-21.10.2016
Mon 10-12 D122 Jussi Kangasharju 31.10.2016-16.12.2016
Thu 10-12 D122 Jussi Kangasharju 31.10.2016-16.12.2016

General

This course presents the basic concepts and solution principles of distributed systems. The main topics are synchronization, consistency, fault tolerance, distributed consensus, and security. The course considers different kinds of distributed systems, from modern warehouse-scale datacenters to wide-area, loosely-coupled distributed systems. The focus is on gaining an understanding on how modern distributed systems are designed and built and what are their theoretical underpinnings. The course covers the basic algorithms of distributed systems and the current state of research in the area. 

Course format

The course is based on research articles which will be discussed in class and there will be very few traditional lectures in the course. The overall schedule is such that Monday sessions are for presentation and discussion about new material and Thursday sessions are intended as additional help with home exercises and basic skills like programming and writing.

Course T.A.'s

Otto WaltariNitinder Mohan

News

Most news about the course will also be on Twitter with the hashtag #UnivHelsinkiCS_DS16.

Completing the course

There is no exam for the course, but the course has the following mandatory assignments:

  • You need to write and return a short essay about each of the articles we cover in the course
  • You need to complete 4 larger programming exercises
  • You need to complete 2 sets of smaller exercises about distributed algorithms

All of the exercises are mandatory for passing the course. Each of the larger exercises will be given points 0-6. You get 1 point for returning the essay and can get an additional point for participating in the discussion on the article. The smaller exercises are worth 16 points total. The sum of your points will be used to determine your grade from the course on the usual 0-5 scale. There are maximum 60 points, you need 30 points to pass and will get a 5 with 50 points.

The large exercises have individual due dates which will be announced later. 2 of them will be due in the first period and the other 2 in the second period. which The articles are discussed on Monday sessions and the essays are due the day before the discussion. The due dates for the small exercises about the algorithms will be announced later.

All submissions via Moodle.

Literature and material

The material of the course is mainly research articles and other supplemental material. Links to these will be provided later on this page. Selected material from the book "Barroso, L. A., Clidaras, J. and Hölzle, U.: The Datacenter as a Computer". (Book is freely available online)

Other course materials are available in a shared folder.