CS555: Distributed Systems

csu-logo
red-line
[Schedule] [Assignments] [Infospaces] [Grading] [Syllabus]

[Piazza]

[Announcements] [Home]

Schedule

Page was lasted updated on Saturday, August 21, 2021 4:27 PM

Readings will be based on the following textbooks.

 

 

[TvS] Distributed Systems: Principles and Paradigms. Andrew S. Tanenbaum and Maarten van Steen. 2nd Edition. Prentice Hall. ISBN: 0132392275/978-0132392273.
[CDKB Distributed Systems: Concepts and Design. George Coulouris, Jean Dollimore, Tim Kindberg, Gordon Blair. 5th Edition. Addison Wesley. ISBN: 978-0132143011
[KS] Distributed Computing: Principles, Algorithms, and Systems. Ajay Kshemkalyani and Mukesh Singhal. 1st edition. Cambridge University Press. ISBN: 0521876346/ 978-0521876346.
[GPB] Java Concurrency in Practice. Brian Goetz, Tim Peierls, Joshua Bloch, Joseph Bowbeer, David Holmes, and Doug Lea. Addison-Wesley Professional. ISBN: 0321349601/978-0321349606.
[NL] Distributed Algorithms. Nancy Lynch. 1st edition. Morgan Kaufman. ISBN: 1558603484/978-1558603486.
[MS]
MapReduce Design Patterns: Building Effective Algorithms and Analytics for Hadoop and Other Systems. 1st Edition. Donald Miner and Adam Shook. O'Reilly Media ISBN: 978-1449327170.
[KKWZ] Learning Spark: Lightning-Fast Big Data Analysis. 1st Edition. Holden Karau, Andy Konwinski, Patrick Wendell, and Matei Zaharia. O'Reilly. 2015. ISBN-13: 978- 1449358624.
[KW] High Performance Spark: Best Practices for Scaling and Optimizing Apache Spark. Holden Karau and Rachel Warren. O'Reilly Media. 2017. ISBN-13: 978-1491943205.
[GR] Cloud Application Architectures: Building Applications and Infrastructure in the Cloud. George Reese.1st edition. O'Reilly. ISBN: 0596156367/978-0596156367.
[PD] Computer Networks: A Systems Approach. Larry Peterson and Bruce Davie. 4th edition. Morgan Kaufmann. ISBN: 978-0-12-370548-8.
[FS] Practical Cryptography. Niels Ferguson and Bruce Schneier. 1st edition. Wiley Publishing. ISBN: 0-471-22894-X/0-471-22357-3.
[WS] Cryptography and Network Security: Principles and Practice. William Stallings. 5th Edition. Prentice Hall. ISBN: 0136097049/978-0136097044
[RR] Unix Systems Programming. Kay Robbins & Steve Robbins, 2nd edition. Prentice Hall. ISBN: 978-0-13-042411-2.
[SGG] Operating Systems Concepts. Avi Silberschatz, Peter Galvin, Greg Gagne. 8th edition. John Wiley & Sons, Inc. ISBN-13: 978-0-470-12872-5.

 

 

The following is the tentative schedule for the course. This is subject to changes.

Week Date Topic Assignments Readings
1 Aug 23-27 Introduction



Time and Logical Clocks
Time and Global Positioning Systems.
Time synchronization algorithms: Berkley Algorithm, Cristian’s Algorithm, and synchronization in wireless settings.
Lamport's Clocks, Vector and Matrix Clocks




HW1
8/28

Term Project 8/28
[TvS] Chap {2, 3, 6}
[KS] Chap {1, 3, 6}
2 Aug 30 - Sep 03


Peer-to-Peer Systems
Peer to Peer (P2P) Systems: characteristics, P2P generations, P2P middleware and requirements.
Structured and Unstructured P2P Systems
Time & Space complexity of P2P algorithms
Systems: Pastry, Chord, Tapestry, Napster, Gnutella, and BitTorrent



  [TvS] Chap {3,6}
[KS] Chap {3,6}
[CDKB] Chap {14}
[SGG] Ch {4, 5}
[RR] Chap {12}

3 Sep 06-10


HW2 9/10



[TvS] Chap {5}
[CDKB] Chap {7, 10}
[KS] Chap {18}
[GPB] Chap {1,2,11}
4 Sep 13-17


Term Project:
Team due 9/20
[CDKB] Chap {10}
5 Sep 20-24

Programming models for Data Intensive Computing: MapReduce





[CDKB] Chap {10}
[Computing Economics]


[MapReduce Paper]
6 Sep 27-Oct 01



Spark: A cluster-computing framework
Core Concepts, Orchestration Plans, Narrow/Wide ependencies, Resilient Distributed Datasets (RDD), DataFrames, Datasets, Catalyst Optimizer, Operations: transformations & actions, Pair RDDs, Spark streaming




HW3 10/03






[MS] Chap {1-3}

[KKWZ] Chap {1-4}
[KW] Chap {2}
7 Oct 04-08






[KKWZ] Chap {1-4}
[KW] Chap {6}
8 Oct 11-15 Threads and Distributed Servers
Development of Scalable Servers
Harnessing cluster servers





[CDKB] Chap {4}
[KS] Chap {13}

October 16: Course withdrawal period ends. Last day to withdraw with a W.

9 Oct 18-22 Term Project Proposal Presentations

Project Presentations (10/17)

Content Dissemination Systems
(a) Queuing Systems
(b) Publish/Subscribe and P2P systems
(c) Epidemic protocols
(d) Overlays









[TvS] Chap {4, 6}
[KS] Chap {18}
[CDKB] Chap {4}

10 Oct 25-29
Replication, Consistency and Coherence Performance and correctness implications of replication and consistency.
(a) Data and client centric consistency, consistent ordering of operations: sequential consistency and causal consistency. Monotonic read, Monotonic write, Read-your-writes, and Writes-follow-read.
(b) Consistency Protocols
(c) Replica placements
(d) Brewer's CAP theorem and design implications



 



[TvS] Chap {7}


11 Nov 01-05



  [TvS] Chap {7}

[Amazon-Consistency Paper]

12 Nov 08-12 Distributed Storage Systems

Amazon Dynamo
: Assumptions & requirements, design choices, systems architecture, partitioning algorithm, replication, versioning, and experiences.




Google File System: Demand pulls, file system interface, chunking, managing file system metadata, records and atomic appends, creating snapshots, replication, consistency, deletion and garbage collection.




 

[Dynamo-Paper]


[GFS Paper]
13 Nov 15-19



 

[GFS Paper]

[Server Consolidation]

Nov 22-26: Fall Break

14 Nov 29-Dec 03 RPCs and Distributed Objects
Parameter Passing, Generation of Stubs, Static and Dynamic Invocations, parameter passing (big/little endian), XDR, RMI, distributed garbage collection, activatable objects, serialization and pitfalls.



Term Project:
Software due 12/04

Term Project:
Report due: 12/06

Term Project:
Presentations: 12/06
[GPB] Ch {1-4}
[TvS] Ch {4}
[CDKB] Ch {4-5, 18}
15 Dec 06-10 Term Project Presentations
Guidelines for Presentations





16 Dec 13-17 [Finals Week]

   

Dec 20: Final Letter Grades will be posted

 

 

 

 

 

 

 

 

 

 

 


Department of Computer Science, Colorado State University,
Fort Collins, CO 80523 USA
© 20 21 Colorado State University