07 September 2015
The new course 'Distributed systems' for students and masters on 3,4 course

Course Title: Distributed Systems

Credits: No

Lecturer:  Salvatore Distefano (email: s_distefano@it.kfu.ru)

Prerequisite courses: None

Course outline

The current ICT scenario is dominated by large and complex, distributed systems, paving the way to ExaFLOPs (exascale computing), ZettaBytes (BigData) or billion/trillion objects and devices (Internet of Things - IoT). This pervaded everyday life immerging and surrounding people into cyber-physical environments mixing different IT technologies able to support decisions also complementing and augmenting the reality, thus transforming urban environment into Smart Cities. This way we are no more just passive stakeholders/entities, but part of a complex socio-technical system where we play an active, leading role.

This calls for adequate methodologies, techniques, and solutions for dealing with the complexity arising from such heterogeneous and multimodal environments. IoT technologies can be used to manage devices geographically interconnected, BigData methods can be adopted to handle the data they provide, Cloud infrastructure can provide resources for sensing, storing and processing data, volunteer and crowd-based approaches can deal with mobility and contribution issues such as churning through incentive mechanisms, also exploiting crowd wisdom and power.

The main goal of the "Distributed systems" course is to provide an overview of this scenario, focusing on technologies and main components, such as Cloud, Internet of Thinks, Software Defined and Virtualized Ecosystems, as well as on the main (non-functional) properties that must be provided to the stakeholders of these systems, such as scalability, performance, reliability, availability.

Required background knowledge: None.  

Course Syllabus:

The course is organized into two main parts identifying and characterizing distributed computing systems functional and non-functional properties

I) Functional properties

Types of parallelism: implicit and explicit parallelism

Implicit parallelism: bit, word, pipeline, super-scalarity, hyperthreading

Explicit parallelism

Multiprocessor systems and program parallelization

Multi-core and many core systems

Distributed computing

Memory and Storage Systems

Disk architecture and performance

RAID systems

Storage Architectures  (DAS, NAS, SAN)

Software Defined and Virtualized Ecosystems

Cloud computing

Internet of Thinks

II) Non-functional properties

Dependability and Performance metrics

Stochastic modeling, state space based models

Dependability evaluation: state space and combinatorial modeling

Performance evaluation and capacity planning

Textbooks and Reference Materials:

- Kishor S. Trivedi. Probability and Statistics with Reliability, Queuing, and Computer Science Applications, John Wiley and Sons, New York, 2001. ISBN number 0-471-33341-7 

- Ananth Grama, George Karypis, Vipin Kumar, Anshul Gupta. Introduction to Parallel Computing, 2/E. ISBN-10: 0201648652 • ISBN-13: 9780201648652, 2003 Addison-Wesley, 656 pp.

- Edward D. Lazowska, John Zahorjan, G. Scott Graham, Kenneth C. Sevcik. Quantitative System Performance Computer System Analysis Using Queueing Network Models (http://homes.cs.washington.edu/~lazowska/qsp/).

- Lecture notes

Course Delivery: The course will be given in 36 hours of classes in total, from September to December 2015 as reported below. The classes will last 2 hours each, and will mainly be in presence, even if some of them will be given remotely. Tutorial exercises will be set periodically. There will be some assignments that will be mainly discussed during online classes and a final examination consisting of a project to be developed by 1 or 2-student groups.

Tentative schedule (to be discussed with students):

Date

Hour

ClassRoom

Wed Sept 23

17:00-19:00

2 - TBD

Sat Sept 26

17:00-19:00

2 - TBD

Wed Sept 30

17:00-19:00

2 - TBD

Sat Oct 3

17:00-19:00

2 - TBD

Sat Oct 10

17:00-19:00

2 - Online

Sat Oct 17

17:00-19:00

2 - Online

Wed Oct 21

17:00-19:00

2 - TBD

Sat Oct 24

17:00-19:00

2 - TBD

Wed Oct 28

17:00-19:00

2 - TBD

Sat Oct 31

17:00-19:00

2 - TBD

Sat Nov 7

17:00-19:00

2 - Online

Sat Nov 14

17:00-19:00

2 - Online

Wed Nov 18

17:00-19:00

2 - TBD

Sat Nov 21

17:00-19:00

2 - TBD

Wed Nov 25

17:00-19:00

2 - TBD

Sat Nov 28

17:00-19:00

2 - TBD

Wed Dec 2

17:00-19:00

2 - TBD

Sat Dec 5

17:00-19:00

2 - TBD

Wed Dec 9

17:00-19:00

2 - Online

Sat Dec 12

17:00-19:00

2 - Online

Wed Dec 16

17:00-19:00

2 - Online

Sat Dec 19

17:00-19:00

2 - Online

Computer Resources:  No specific requirements.

Laboratory Exercises:  There are no laboratory exercises for this course.  

Laboratory Resources:  No laboratory resources are required for this course.

Assessment:  Assignments (30%) and Final Exam-Project (70%).

Source of information: Sabina Sakaeva