Distributed systems and parallel processing WM-I-SRPR-EN
Distributed Systems:
1. Reminder of the basics of the TCP and UDP protocols
2. Socket interface
3. Socket programming in C and Java
4. Protocol Buffers and gRPC
5. Time in distributed systems
a. Logical time, Happened Before relationship.
b. Physical clocks and their synchronization
6 Consistency:
a. Coherence models
- Strict
- Linear
- Sequential
- Causal
- FIFO
- Weak
- Release
- Entry
- Eventual
b. Protocols for maintaining replicas
7. fault tolerance and atomic transactions:
a. Failures
b. Atomic transactions (ACID)
c. Two-phase approval
d. Three-phase validation
Parallel processing
1. computing center and cloud architecture
2. clusters
3. Hadoop system and HDFS
4. Map-Reduce model
5. RDD model
6. Spark and the Scala language
(in Polish) Dyscyplina naukowa, do której odnoszą się efekty uczenia się
(in Polish) E-Learning
(in Polish) Grupa przedmiotów ogólnouczenianych
Subject level
Learning outcome code/codes
Type of subject
Preliminary Requirements
Learning outcomes
W1 The student has a basic knowledge of distributed systems and parallel processing
W2 The student knows the issues of multithreaded operation, socket and gRPC interface, critical section algorithms, time synchronization, replication principles, consistency, fault tolerance and transaction validation algorithms.
W3 The student knows the architecture of computing centers and cloud, Hadoop system and HDFS,
Map-Reduce and RDD model, Spark and Scala language.
U1 The student can program distributed applications using socket and gRPC interface.
U2 The student can program parallel applications on Hadoop using Map Reduce and Sparc.
K1 The student understands the basic principles of distributed systems and parallel processing and is able to adapt to the latest technologies in this area.
K2 The student is able to collaborate with specialists in distributed systems and parallel processing.
Assessment criteria
W1 W2 W3:
- For a very good grade - the student defines independently all concepts and
terms in the field of distributed systems and parallel processing: issues of multithreaded operation, socket and gRPC interface, critical section algorithms, time synchronization, principles of replication, consistency, fault tolerance and transaction validation algorithms, architecture of computing centers and cloud, Hadoop and HDFS system,
Map-Reduce and RDD model, Spark and Scala language.
- For a good grade - the student defines most of the concepts and
terms in distributed systems and parallel processing: issues of multithreaded operation, socket and gRPC interface, critical section algorithms, timing synchronization, principles of replication, consistency, fault tolerance and transaction validation algorithms, data center and cloud architecture, Hadoop system and HDFS,
Map-Reduce and RDD model, Spark and Scala language.
- For a sufficient grade - the student defines some concepts and
terms in the field of distributed systems and parallel processing: issues of multithreaded operation, socket and gRPC interface, critical section algorithms, time synchronization, principles of replication, consistency, fault tolerance and transaction validation algorithms, architecture of computing centers and cloud, Hadoop system and HDFS,
Map-Reduce and RDD model, Spark and Scala language.
U1 U2:
- At the grade of very good - the student can program distributed applications very well using socket and gRPC interface and parallel applications on Hadoop using Map Reduce and Spark.
- At the grade of good - the student can program distributed applications well using socket and gRPC interface and parallel applications on Hadoop using Map Reduce and Sparc.
- At the grade of sufficient - the student can satisfactorily program distributed applications using socket and gRPC interface and parallel applications on Hadoop using Map Reduce and Sparc.
K1 K2:
- with a very good grade - the student has achieved a very good awareness of the basic principles of distributed systems and parallel processing as well as being able to adapt to the latest technologies in this area and collaborate with specialists in the field of distributed systems and parallel processing.
- with a good grade - the student has achieved a good awareness of the basic principles of distributed systems and parallel processing as well as is able to adapt to the latest technologies in this area and cooperate with specialists in the field of distributed systems and parallel processing.
- with the sufficient grade - the student has achieved a satisfactory awareness of the basic principles of distributed systems and parallel processing as well as is able to adapt to the latest technologies in this area and cooperate with specialists in the field of distributed systems and parallel processing.
Additional information
Additional information (registration calendar, class conductors, localization and schedules of classes), might be available in the USOSweb system: